diff --git a/Source/Apps/Tune/Tunes/LEMMIN01.VGM b/Source/Apps/Tune/Tunes/LEMMIN01.VGM new file mode 100644 index 00000000..74b0cee9 Binary files /dev/null and b/Source/Apps/Tune/Tunes/LEMMIN01.VGM differ diff --git a/Source/Apps/Tune/Tunes/PENGUI03.VGM b/Source/Apps/Tune/Tunes/PENGUI03.VGM new file mode 100644 index 00000000..0d2c3625 Binary files /dev/null and b/Source/Apps/Tune/Tunes/PENGUI03.VGM differ diff --git a/Source/Apps/Tune/Tunes/PITFAL02.VGM b/Source/Apps/Tune/Tunes/PITFAL02.VGM new file mode 100644 index 00000000..92d56555 Binary files /dev/null and b/Source/Apps/Tune/Tunes/PITFAL02.VGM differ diff --git a/Source/Apps/Tune/Tunes/TEDDY.VGM b/Source/Apps/Tune/Tunes/TEDDY.VGM new file mode 100644 index 00000000..4d667ccd Binary files /dev/null and b/Source/Apps/Tune/Tunes/TEDDY.VGM differ diff --git a/Source/Apps/Tune/Tunes/TIGER02.VGM b/Source/Apps/Tune/Tunes/TIGER02.VGM new file mode 100644 index 00000000..29146936 Binary files /dev/null and b/Source/Apps/Tune/Tunes/TIGER02.VGM differ diff --git a/Source/Apps/Tune/Tunes/WONDER01.VGM b/Source/Apps/Tune/Tunes/WONDER01.VGM new file mode 100644 index 00000000..d6efddc0 Binary files /dev/null and b/Source/Apps/Tune/Tunes/WONDER01.VGM differ diff --git a/Source/HBIOS/Config/SBC_max.asm b/Source/HBIOS/Config/SBC_max.asm index ab57620a..fe1957ec 100644 --- a/Source/HBIOS/Config/SBC_max.asm +++ b/Source/HBIOS/Config/SBC_max.asm @@ -63,3 +63,5 @@ SDENABLE .SET TRUE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) PRPENABLE .SET TRUE ; PRP: ENABLE ECB PROPELLER IO BOARD DRIVER (PRP.ASM) ; AY38910ENABLE .SET TRUE ; AY: AY-3-8910 / YM2149 SOUND DRIVER +; +SN7ENABLE .SET TRUE ; SN : SN76489 DRIVER diff --git a/Source/HBIOS/cfg_dyno.asm b/Source/HBIOS/cfg_dyno.asm index f2c034cc..5a4ce268 100644 --- a/Source/HBIOS/cfg_dyno.asm +++ b/Source/HBIOS/cfg_dyno.asm @@ -187,6 +187,7 @@ UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_ezz80.asm b/Source/HBIOS/cfg_ezz80.asm index 6914d777..24713e83 100644 --- a/Source/HBIOS/cfg_ezz80.asm +++ b/Source/HBIOS/cfg_ezz80.asm @@ -229,6 +229,7 @@ UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_master.asm b/Source/HBIOS/cfg_master.asm index cf909f77..0c38bef2 100644 --- a/Source/HBIOS/cfg_master.asm +++ b/Source/HBIOS/cfg_master.asm @@ -296,6 +296,7 @@ UFBASE .EQU $0C ; UF: REGISTERS BASE ADR SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_mbc.asm b/Source/HBIOS/cfg_mbc.asm index 663d310a..12b3f19c 100644 --- a/Source/HBIOS/cfg_mbc.asm +++ b/Source/HBIOS/cfg_mbc.asm @@ -228,6 +228,7 @@ UFBASE .EQU $0C ; UF: REGISTERS BASE ADR SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_mk4.asm b/Source/HBIOS/cfg_mk4.asm index ac49671d..5e5ea085 100644 --- a/Source/HBIOS/cfg_mk4.asm +++ b/Source/HBIOS/cfg_mk4.asm @@ -229,6 +229,7 @@ UFBASE .EQU $0C ; UF: REGISTERS BASE ADR SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_n8.asm b/Source/HBIOS/cfg_n8.asm index f62e7c14..86569b96 100644 --- a/Source/HBIOS/cfg_n8.asm +++ b/Source/HBIOS/cfg_n8.asm @@ -227,6 +227,7 @@ FIFO_BASE .EQU $0C ; UF: REGISTERS BASE ADR SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_rcz180.asm b/Source/HBIOS/cfg_rcz180.asm index 5a7e91b7..eaf2141d 100644 --- a/Source/HBIOS/cfg_rcz180.asm +++ b/Source/HBIOS/cfg_rcz180.asm @@ -241,6 +241,7 @@ UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_rcz280.asm b/Source/HBIOS/cfg_rcz280.asm index 882dfb43..625f5e32 100644 --- a/Source/HBIOS/cfg_rcz280.asm +++ b/Source/HBIOS/cfg_rcz280.asm @@ -257,6 +257,7 @@ UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_rcz80.asm b/Source/HBIOS/cfg_rcz80.asm index 5c2c5825..4fbb3501 100644 --- a/Source/HBIOS/cfg_rcz80.asm +++ b/Source/HBIOS/cfg_rcz80.asm @@ -246,6 +246,7 @@ UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_RCZ80 ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_sbc.asm b/Source/HBIOS/cfg_sbc.asm index 830ab4fc..19508f59 100644 --- a/Source/HBIOS/cfg_sbc.asm +++ b/Source/HBIOS/cfg_sbc.asm @@ -227,7 +227,8 @@ UFBASE .EQU $0C ; UF: REGISTERS BASE ADR ; SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER -SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SN7CLK .EQU 3575950 ; DEFAULT OSCILLATOR +SNMODE .EQU SNMODE_VGM ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/cfg_scz180.asm b/Source/HBIOS/cfg_scz180.asm index 265ea1e2..82daba78 100644 --- a/Source/HBIOS/cfg_scz180.asm +++ b/Source/HBIOS/cfg_scz180.asm @@ -236,6 +236,7 @@ UFENABLE .EQU FALSE ; UF: ENABLE ECB USB FIFO DRIVER (UF.ASM) SN76489ENABLE .EQU FALSE ; SN76489 SOUND DRIVER AUDIOTRACE .EQU FALSE ; ENABLE TRACING TO CONSOLE OF SOUND DRIVER SN7CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 +SNMODE .EQU SNMODE_NONE ; DRIVER MODE: SNMODE_[NONE|RC2014|VGM] ; AY38910ENABLE .EQU FALSE ; AY: AY-3-8910 / YM2149 SOUND DRIVER AY_CLK .EQU CPUOSC / 4 ; DEFAULT TO CPUOSC / 4 diff --git a/Source/HBIOS/sn76489.asm b/Source/HBIOS/sn76489.asm index 812ea274..e7aa315b 100644 --- a/Source/HBIOS/sn76489.asm +++ b/Source/HBIOS/sn76489.asm @@ -12,9 +12,18 @@ ; CONSTANTS ;====================================================================== ; +#IF (PLATFORM == PLT_SBC) & (SNMODE == SNMODE_VGM) +SN76489_PORT_LEFT .EQU $C6 ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT) +SN76489_PORT_RIGHT .EQU $C7 ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT) +;SN7CLK .EQU 3575950 ; CLOCK SPEED DRIVING THE SN76489 CHIPS +#ENDIF +#IF (PLATFORM == PLT_RCZ80) & (SNMODE == SNMODE_RCZ80) SN76489_PORT_LEFT .EQU $FF ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT) SN76489_PORT_RIGHT .EQU $FB ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT) +;SN7CLK .EQU CPUOSC/4; DEFAULT TO CPUOSC / 4 +#ENDIF + SN7_IDAT .EQU 0 SN7_TONECNT .EQU 3 ; COUNT NUMBER OF TONE CHANNELS SN7_NOISECNT .EQU 1 ; COUNT NUMBER OF NOISE CHANNELS @@ -263,7 +272,7 @@ SN7_APPLY_VOL: ; APPLY VOLUME TO BOTH LEFT AND RIGHT CHANNELS #IFDEF SBCV2004 LD A,(HB_RTCVAL) - OR %11110111 ; SBC-V2-004+ CHANGE TO + AND %11110111 ; SBC-V2-004+ CHANGE TO OUT (RTCIO),A ; NORMAL CLOCK SPEED #ENDIF @@ -308,7 +317,7 @@ SN7_APPLY_PRD: #IFDEF SBCV2004 LD A,(HB_RTCVAL) - OR %11110111 ; SBC-V2-004+ CHANGE TO + AND %11110111 ; SBC-V2-004+ CHANGE TO OUT (RTCIO),A ; NORMAL CLOCK SPEED #ENDIF @@ -345,7 +354,7 @@ SN7_APPLY_PRD: #IFDEF SBCV2004 LD A,(HB_RTCVAL) - OR %11110111 ; SBC-V2-004+ CHANGE TO + AND %11110111 ; SBC-V2-004+ CHANGE TO OUT (RTCIO),A ; NORMAL CLOCK SPEED #ENDIF @@ -403,7 +412,7 @@ SNT_PLAY .DB "\r\nSN7_PLAY CH: $" SNT_REGWR .DB "\r\nOUT SN76489, $" #ENDIF -; THE FREQUENCY BY QUARTER TONE STARTING AT A0# OCATVE 0 +; THE FREQUENCY BY QUARTER TONE STARTING AT A0# OCTAVE 0 ; USED TO MAP EACH OCTAVE (DIV BY 2 TO JUMP AN OCTAVE UP) ; FIRST PLAYABLE NOTE WILL BE $2E ; ASSUMING A CLOCK OF 1843200 THIS MAPS TO diff --git a/Source/HBIOS/std.asm b/Source/HBIOS/std.asm index 5630860c..8aee5ca4 100644 --- a/Source/HBIOS/std.asm +++ b/Source/HBIOS/std.asm @@ -200,7 +200,7 @@ SDMODE_MK4 .EQU 7 ; MARK IV SDMODE_SC .EQU 8 ; SC (Steve Cousins) SDMODE_MT .EQU 9 ; MT (Shift register SPI WIZNET for RC2014) ; -; SOUND CHIP MODE SELECTIONS +; AY SOUND CHIP MODE SELECTIONS ; AYMODE_NONE .EQU 0 AYMODE_N8 .EQU 1 ; N8 BUILT-IN SOUND @@ -210,6 +210,12 @@ AYMODE_RCZ180 .EQU 4 ; RC2014 SOUND MODULE BY ED BRINDLEY ON Z180 AYMODE_MSX .EQU 5 ; RC2014 SOUND MODULE REV6 BY ED BRINDLEY ON Z80/Z180 AT MSX PORTS AYMODE_LINC .EQU 6 ; LINC Z50 AY SOUND CARD ; +; SN SOUND CHIP MODE SELECTIONS +; +SNMODE_NONE .EQU 0 +SNMODE_RCZ80 .EQU 1 ; RC2014 SOUND MODULE +SNMODE_VGM .EQU 2 ; VGM ECB BOARD +; ; TMS VIDEO MODE SELECTIONS ; TMSMODE_NONE .EQU 0