This is a lot faster, nice
I made a program that converts songs created in MML for SB3 into PSG files.
The number of sound sources that can be used is 1 to 2.
MML using the DATA instruction is supported.
Some commands (P, @ML, @130 to 143, @152 to 511, $) are not supported.
The conversion program adds "DATA 0" to the end of the MML slot.
The commands written in the PSG file are &H00 to &H0F for sound source 1 and &H20 to &H2F for sound source 2.
ASPU is required because the ARYOP instruction is used.
MML is validated with the CHKMML function. Therefore, it cannot be used with SB4.
Usage
1. Load MML for conversion into slot 0.
2. Load TEST-MML2PSG into slot 1.
3. Specify the first DATA to be read as MML with the RESTORE instruction.
4. OUTCH$[] variable specifies the MML channel to convert to PSG channel.
MML channel: "0" to "F"
PSG channel: 0 to 2 when the number of sound source is 1, 0 to 5 when the number of sound sources is 2
5. PSGNAME$ variable specifies the name when saving the PSG file.
6. Execute slot 1.
Convert to PSG file of 5*60 seconds. Press X button to end conversion.
7. Playback starts when the PSG file is saved after conversion.
Slot usage
PRG0: Source MML
PRG1: TEST-MML2PSG
PRG2: GM and drum instrument sound loading, conversion log
PRG3: TEST-SGPSG3(It is loaded and executed after conversion.)
If TEST-SGPSG3 is executed while pressing the L or R button, the number of sound source will be 1 and the number of screen updates will increase even with o3DS.
Public key: WP5QF3Q4
TEST-MML2PSG Conversion program
TEST-SGPSG3 Playback program
TEST-MMLINST GM instrument sound data
TEST-MMLINSTD Drum instrument sound data
SOLIDG_BGM1~5 Source MML(SOLIDGUNNER -Revision-、Public key: RXX2EP3)
-SG_BGM1~5.PSG PSG files after conversion
Public key: 4QZEE53QD
TEST-SGPSG3_SB4 Playback program (for SB4)