Browse Source

Misc

- Update TUNE.COM to mute sound card at end of playback when playing via HBIOS.
- Update SN76489 sound driver to use proper default port addresses.
- Modify Phil's CPU MHz speed rounding function to round up anytime speed in KHz is withing 500 KHz of next MHz increment.
pull/246/head
Wayne Warthen 5 years ago
parent
commit
80ee13e0f4
  1. 16
      Source/Apps/Tune/tune.asm
  2. 18
      Source/HBIOS/hbios.asm
  3. 10
      Source/HBIOS/sn76489.asm
  4. 2
      Source/ver.inc
  5. 2
      Source/ver.lib

16
Source/Apps/Tune/tune.asm

@ -43,6 +43,7 @@
; 2020-05-02 [PMS] Add support for SBC-V2 slow-io hack
; 2020-09-03 [E?B] Add support for Ed Brindley YM/AY Sound Card v6
; 2021-08-13 [WBW] Add support for LiNC Z50 Sound Card
; 2021-08-17 [WBW] When playing via HBIOS, call BF_SNDRESET at end
;_______________________________________________________________________________
;
; ToDo:
@ -649,7 +650,7 @@ TMP .DB 0 ; work around use of undocumented Z80
HBIOSMD .DB 0 ; NON-ZERO IF USING HBIOS SOUND DRIVER, ZERO OTHERWISE
OCTAVEADJ .DB 0 ; AMOUNT TO ADJUST OCTAVE UP OR DOWN
MSGBAN .DB "Tune Player for RomWBW v3.3, 14-Aug-2021",0
MSGBAN .DB "Tune Player for RomWBW v3.4, 17-Aug-2021",0
MSGUSE .DB "Copyright (C) 2021, Wayne Warthen, GNU GPL v3",13,10
.DB "PTxPlayer Copyright (C) 2004-2007 S.V.Bulba",13,10
.DB "MYMPlay by Marq/Lieves!Tuore",13,10,13,10
@ -674,7 +675,7 @@ HWSTR_RCEB6 .DB "RC2014 Sound Module (EBv6)",0
HWSTR_RCMF .DB "RC2014 Sound Module (MF)",0
HWSTR_LINC .DB "Z50 LiNC Sound Module",0
MSGUNSUP .db "MYM files not supported yet!\r\n", 0
MSGUNSUP .db "MYM files not supported with HBIOS yet!\r\n", 0
MSGSONGNAME .DB "Song name: ", 0
MSGARTIST .DB "by: ", 0
@ -820,13 +821,22 @@ CHECKLP LD HL,SETUP
INC (HL)
.ENDIF
MUTE XOR A
MUTE ISHBIOS
JR NZ,MUTEVIAHBIOS
XOR A
LD H,A
LD L,A
LD (AYREGS+AmplA),A
LD (AYREGS+AmplB),HL
JP ROUT
MUTEVIAHBIOS:
LD B,BF_SNDRESET
LD C,0
RST 08
RET
INIT
;HL - AddressOfModule
LD A,(START+10)

18
Source/HBIOS/hbios.asm

@ -5174,15 +5174,15 @@ HB_CPUSPD1:
SLA L
RL H
;
LD (CB_CPUKHZ),HL
LD DE,1000
CALL DIV16
LD DE,980 ; ROUND MHZ UP
XOR A ; IF WITHIN 20HZ
SBC HL,DE
CCF
ADC A,C
LD (CB_CPUMHZ),A
LD (CB_CPUKHZ),HL ; HL=CPU SPEED IN KHZ
LD DE,1000 ; SET UP TO DIV BY 1000 FOR MHZ
CALL DIV16 ; BC=CPU MHZ, HL=REMAINDER
LD DE,500 ; SET UP TO ROUND UP
XOR A ; IF WITHIN 500 KHZ
SBC HL,DE ; REMAINDER - 500
CCF ; COMPLEMENT CF
ADC A,C ; C -> A; ADD CF FOR ROUNDING
LD (CB_CPUMHZ),A ; SAVE IT
;
RET
;

10
Source/HBIOS/sn76489.asm

@ -13,10 +13,12 @@
;======================================================================
;
SN76489_PORT_LEFT .EQU $FC ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT)
SN76489_PORT_RIGHT .EQU $F8 ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT)
;SN76489_PORT_LEFT .EQU $C7 ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT)
;SN76489_PORT_RIGHT .EQU $C8 ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT)
SN76489_PORT_LEFT .EQU $FF ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT)
SN76489_PORT_RIGHT .EQU $FB ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT)
;SN76489_PORT_LEFT .EQU $FC ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT)
;SN76489_PORT_RIGHT .EQU $F8 ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT)
;;SN76489_PORT_LEFT .EQU $C7 ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT)
;;SN76489_PORT_RIGHT .EQU $C8 ; PORTS FOR ACCESSING THE SN76489 CHIP (RIGHT)
SN7_IDAT .EQU 0
SN7_TONECNT .EQU 3 ; COUNT NUMBER OF TONE CHANNELS
SN7_NOISECNT .EQU 1 ; COUNT NUMBER OF NOISE CHANNELS

2
Source/ver.inc

@ -2,4 +2,4 @@
#DEFINE RMN 1
#DEFINE RUP 1
#DEFINE RTP 03
#DEFINE BIOSVER "3.1.1-pre.105"
#DEFINE BIOSVER "3.1.1-pre.106"

2
Source/ver.lib

@ -3,5 +3,5 @@ rmn equ 1
rup equ 1
rtp equ 0
biosver macro
db "3.1.1-pre.105"
db "3.1.1-pre.106"
endm

Loading…
Cancel
Save