PSID128 v0.4
|
Description: |
PSID128 v0.3 is a program that converts SID-tunes, Compute SID-player tunes (MUS) and Compute Stereo SID-player tunes (MUS+STR) into a C128 program which plays the tune on a real (or emulated) C128. |
|
Windows download: |
PSID128.zip |
|
Source-code download: |
PSID128.tgz |
|
PSID technical specs: |
The tune itself is put in ram bank 1. A bank-switching routine which is put in a piece of shared memory at $FC00-$FFFF is used to play the tune. The I/O area at $D000-$DFFF is banked in so the SID-chip can be accessed. Therefor the valid ranges for a tune to be played are $0400-$CFFF & $E000-$FBFF. The player uses a rastertimer to play the tune. |
|
SID Tune Limitations: |
A tune will definatly not work if the tune does 1 of the following things: - writing to address-range $FF00-$FF05 (C128 MMU resides here, changing the MMU registers would kill the player) - writing to address-range $D500-$D50B (C128 MMU resides here as well, changing the MMU registers would kill the player) - writing to address-range $FC00-$FCFF (the bank-switching routine resides in this range and would be killed) - changing the interrupt vectors (the tune is in ram bank 1, but the interrupt would jump into ram bank 0, causing unknown conditions, and probably wind up jamming the CPU) - jumping to C64 specific rom/kernal routines (since the C128 doesn't have the same rom/kernal and because the rom/kernal are mapped out during the playing of the tune, jumping to such a routine would cause unknown conditions, and probably wind up jamming the CPU) |
|
MUS technical specs: |
.MUS files are Compute SID-player tunes, PSID128 now has support for these kind of tunes. The tune itself is put in ram bank 1, starting at $0800. A bank-switching routine which is put in a piece of shared memory at $FC00-$FFFF is used to play the tune. The I/O area at $D000-$DFFF is banked in so the SID-chip can be accessed. Therefor the maximum convertable size of a MUS-file is 51200 bytes. |
|
MUS+STR technical specs: |
.MUS+.STR files are Compute Stereo SID-player tunes, PSID128 now has support for these kind of tunes. The .MUS part of the tune is put in ram bank 1, starting at $0800. The .STR part of the tune is put in ram bank 0, starting at $1E00. A bank-switching routine which is put in a piece of shared memory at $FC00-$FFFF is used to play the tune. The I/O area at $D000-$DFFF is banked in so the SID-chip can be accessed. Therefor the maximum convertable size of a MUS+STR-file is 45568 bytes. The second SID will have to be located at either address $DE00 or $DF00 in order for this player to work. |