Browse Source

Add Options to Force Standard Ports in TUNE App

The Why Em-ulator cannot be detected by the normal probing mechanism in TUNE.  Added options to force the standard port configurations (MSX or RC).  See #468
pull/470/head
Wayne Warthen 1 year ago
parent
commit
0ad7431528
  1. BIN
      Doc/RomWBW Applications.pdf
  2. BIN
      Doc/RomWBW Disk Catalog.pdf
  3. BIN
      Doc/RomWBW Errata.pdf
  4. BIN
      Doc/RomWBW System Guide.pdf
  5. BIN
      Doc/RomWBW User Guide.pdf
  6. 2
      ReadMe.md
  7. 2
      ReadMe.txt
  8. 22
      Source/Apps/Tune/cli.inc
  9. 41
      Source/Apps/Tune/tune.asm
  10. 18
      Source/Doc/Applications.md

BIN
Doc/RomWBW Applications.pdf

Binary file not shown.

BIN
Doc/RomWBW Disk Catalog.pdf

Binary file not shown.

BIN
Doc/RomWBW Errata.pdf

Binary file not shown.

BIN
Doc/RomWBW System Guide.pdf

Binary file not shown.

BIN
Doc/RomWBW User Guide.pdf

Binary file not shown.

2
ReadMe.md

@ -3,7 +3,7 @@
**RomWBW ReadMe** \ **RomWBW ReadMe** \
Version 3.5 \ Version 3.5 \
Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \ Wayne Warthen ([wwarthen@gmail.com](mailto:wwarthen@gmail.com)) \
08 Dec 2024
12 Dec 2024
# Overview # Overview

2
ReadMe.txt

@ -1,6 +1,6 @@
RomWBW ReadMe RomWBW ReadMe
Wayne Warthen (wwarthen@gmail.com) Wayne Warthen (wwarthen@gmail.com)
08 Dec 2024
12 Dec 2024

22
Source/Apps/Tune/cli.inc

@ -23,6 +23,26 @@ CLI_HAVE_HBIOS_SWITCH1 ; NOT MATCHED --HBIOS
LD (HBIOSMD), A LD (HBIOSMD), A
RET RET
CLI_PORTS:
LD HL, CLIARGS ; TEST FOR -MSX ON COMMAND LINE
LD DE, OPT_MSX
CALL STRINDEX
JR NZ, CLI_PORTS1
LD A,PORTS_MSX
JR CLI_PORTS_Z
CLI_PORTS1:
LD HL, CLIARGS ; TEST FOR -RC ON COMMAND LINE
LD DE, OPT_RC
CALL STRINDEX
JR NZ, CLI_PORTS2
LD A,PORTS_RC
JR CLI_PORTS_Z
CLI_PORTS2:
LD A,PORTS_AUTO ; USE AUTO PORT SELECTION
CLI_PORTS_Z:
LD (USEPORTS),A ; SAVE PORTS SELECTION
RET
CLI_ABRT_UNSUPPFILTYP: CLI_ABRT_UNSUPPFILTYP:
PUSH AF PUSH AF
ISHBIOS ISHBIOS
@ -79,6 +99,8 @@ CLI_OCTAVE_ADJST5:
LD (OCTAVEADJ), A LD (OCTAVEADJ), A
RET RET
OPT_MSX .DB "-MSX", 0 ; USE MSX PORTS
OPT_RC .DB "-RC", 0 ; USE RC PORTS
HBIOSOPT: .DB "--HBIOS", 0 HBIOSOPT: .DB "--HBIOS", 0
DOWN1 .DB "-t1", 0 ; DOWN AN OCTAVE DOWN1 .DB "-t1", 0 ; DOWN AN OCTAVE
DOWN2 .DB "-t2", 0 ; DOWN TWO OCTAVE DOWN2 .DB "-t2", 0 ; DOWN TWO OCTAVE

41
Source/Apps/Tune/tune.asm

@ -52,6 +52,7 @@
; 2024-07-08 [WBW] Add support for Les Bird's Graphics, Sound, Joystick ; 2024-07-08 [WBW] Add support for Les Bird's Graphics, Sound, Joystick
; 2024-07-11 [WBW] Updated, Les Bird's module now uses same settings as EB6 ; 2024-07-11 [WBW] Updated, Les Bird's module now uses same settings as EB6
; 2024-09-17 [WBW] Add support for HEATH H8 with Les Bird's MSX Card ; 2024-09-17 [WBW] Add support for HEATH H8 with Les Bird's MSX Card
; 2024-12-12 [WBW] Add options to force standard MSX or RC ports
;_______________________________________________________________________________ ;_______________________________________________________________________________
; ;
; ToDo: ; ToDo:
@ -73,6 +74,10 @@ TYPPT2 .EQU 1 ; FILTYP value for PT2 sound file
TYPPT3 .EQU 2 ; FILTYP value for PT3 sound file TYPPT3 .EQU 2 ; FILTYP value for PT3 sound file
TYPMYM .EQU 3 ; FILTYP value for MYM sound file TYPMYM .EQU 3 ; FILTYP value for MYM sound file
; ;
PORTS_AUTO .EQU 0 ; AUTO select audio chip ports
PORTS_MSX .EQU 1 ; force MSX audio chip ports
PORTS_RC .EQU 2 ; force RCBUS audio chip ports
;
; HIGH SPEED CPU CONTROL ; HIGH SPEED CPU CONTROL
; ;
SBCV2004 .EQU 0 ; ENABLE SBC-V2-004 HALF CLOCK DIVIDER SBCV2004 .EQU 0 ; ENABLE SBC-V2-004 HALF CLOCK DIVIDER
@ -106,6 +111,7 @@ Id .EQU 1 ; 5) Insert official identificator
PRTSTRDE(MSGBAN) ; Print to banner message PRTSTRDE(MSGBAN) ; Print to banner message
CALL CLI_ABRT_IF_OPT_FIRST CALL CLI_ABRT_IF_OPT_FIRST
CALL CLI_PORTS
CALL CLI_HAVE_HBIOS_SWITCH CALL CLI_HAVE_HBIOS_SWITCH
CALL CLI_OCTAVE_ADJST CALL CLI_OCTAVE_ADJST
JP CONTINUE JP CONTINUE
@ -125,6 +131,22 @@ CONTINUE:
OR A OR A
JR NZ, TSTTIMER ; skip hardware check if using hbios JR NZ, TSTTIMER ; skip hardware check if using hbios
LD A, (USEPORTS) ; get ports option
LD HL,MSXPORTS ; assume MSX
CP PORTS_MSX ; use MSX?
JR Z,FORCE
LD HL,RCPORTS ; asssume RC
CP PORTS_RC ; use RC?
JR Z,FORCE
JR AUTOSEL ; otherwise do auto select
FORCE:
LD BC,CFGSIZ ; Size of one entry
LD DE,CFG ; Active config structure
LDIR ; Update active config structure
JR MAT ; Continue
AUTOSEL:
LD HL,CFGTBL ; Point to start of config table LD HL,CFGTBL ; Point to start of config table
CFGSEL: CFGSEL:
LD A,$FF ; End of table marker LD A,$FF ; End of table marker
@ -646,6 +668,17 @@ CFGSIZ .EQU $ - CFGTBL
; ;
.DB $FF ; END OF TABLE MARKER .DB $FF ; END OF TABLE MARKER
; ;
; The following are table entries (like above), but not part of auto
; detection searching. They are selected byh command line options.
;
MSXPORTS:
.DB $FF, $A0, $A1, $FF, $FF, $FF, $FF ; GENERIC MSX
.DW HWSTR_MSX
;
RCPORTS:
.DB $FF, $D8, $D0, $FF, $FF, $FF, $FF ; GENERIC RC
.DW HWSTR_RC
;
CFG: ; ACTIVE CONFIG VALUES (FROM SELECTED CFGTBL ENTRY) CFG: ; ACTIVE CONFIG VALUES (FROM SELECTED CFGTBL ENTRY)
PLT .DB 0 ; RomWBW HBIOS platform id PLT .DB 0 ; RomWBW HBIOS platform id
PORTS: PORTS:
@ -672,11 +705,13 @@ TMP .DB 0 ; work around use of undocumented Z80
HBIOSMD .DB 0 ; NON-ZERO IF USING HBIOS SOUND DRIVER, ZERO OTHERWISE HBIOSMD .DB 0 ; NON-ZERO IF USING HBIOS SOUND DRIVER, ZERO OTHERWISE
OCTAVEADJ .DB 0 ; AMOUNT TO ADJUST OCTAVE UP OR DOWN OCTAVEADJ .DB 0 ; AMOUNT TO ADJUST OCTAVE UP OR DOWN
MSGBAN .DB "Tune Player for RomWBW v3.11, 17-Sep-2024",0
USEPORTS .DB 0 ; AUDIO CHIP PORT SELECTION MODE
MSGBAN .DB "Tune Player for RomWBW v3.12, 12-Dec-2024",0
MSGUSE .DB "Copyright (C) 2024, Wayne Warthen, GNU GPL v3",13,10 MSGUSE .DB "Copyright (C) 2024, Wayne Warthen, GNU GPL v3",13,10
.DB "PTxPlayer Copyright (C) 2004-2007 S.V.Bulba",13,10 .DB "PTxPlayer Copyright (C) 2004-2007 S.V.Bulba",13,10
.DB "MYMPlay by Marq/Lieves!Tuore",13,10,13,10 .DB "MYMPlay by Marq/Lieves!Tuore",13,10,13,10
.DB "Usage: TUNE <filename>.[PT2|PT3|MYM] [--hbios] [+tn|-tn]",0
.DB "Usage: TUNE <filename>.[PT2|PT3|MYM] [-msx|-rc] [--hbios] [+tn|-tn]",0
MSGBIO .DB "Incompatible BIOS or version, " MSGBIO .DB "Incompatible BIOS or version, "
.DB "HBIOS v", '0' + RMJ, ".", '0' + RMN, " required",0 .DB "HBIOS v", '0' + RMJ, ".", '0' + RMN, " required",0
MSGPLT .DB "Hardware error, system not supported!",0 MSGPLT .DB "Hardware error, system not supported!",0
@ -700,6 +735,8 @@ HWSTR_MBC .DB "NHYODYNE Sound Module",0
HWSTR_DUO .DB "DUODYNE Sound Module",0 HWSTR_DUO .DB "DUODYNE Sound Module",0
HWSTR_NABU .DB "NABU Onboard Sound",0 HWSTR_NABU .DB "NABU Onboard Sound",0
HWSTR_HEATH .DB "HEATH H8 MSX Module",0 HWSTR_HEATH .DB "HEATH H8 MSX Module",0
HWSTR_MSX .DB "MSX Standard Ports (A0H/A1H)",0
HWSTR_RC .DB "RCBus Standard Ports (D8H/D0H)",0
MSGUNSUP .db "MYM files not supported with HBIOS yet!\r\n", 0 MSGUNSUP .db "MYM files not supported with HBIOS yet!\r\n", 0

18
Source/Doc/Applications.md

@ -2224,6 +2224,10 @@ well known port addresses at startup. It will auto-configure itself
for the hardware found. If no hardware is detected, it will abort with for the hardware found. If no hardware is detected, it will abort with
an error message. an error message.
Some sound board hardware does not support automatic detection
(notably the Why-Em-Ulator). You may force the use of standard
MSX or RC Bus standard ports using the `-MSX` or `-RC` options.
On Z180 systems, I/O wait states are added when writing to the sound On Z180 systems, I/O wait states are added when writing to the sound
chip to avoid exceeding its speed limitations. On Z80 systems, you chip to avoid exceeding its speed limitations. On Z80 systems, you
will need to ensure that the CPU clock speed of your system does not will need to ensure that the CPU clock speed of your system does not
@ -2239,18 +2243,20 @@ AY-3-8910 or YM2149 chips, or a compatibility layer thru HBIOS supporting
the SN76489 chip. the SN76489 chip.
By default the application will attempt to interface directly to the sound By default the application will attempt to interface directly to the sound
chip. The optional argument `--hbios` supplied after the filename, will
chip. The optional argument `--HBIOS` supplied after the filename, will
enable the application to use the HBIOS sound driver. enable the application to use the HBIOS sound driver.
The HBIOS mode also support other switch as described below. The HBIOS mode also support other switch as described below.
| Switch | Description | | Switch | Description |
| ----------- | ------------------------------------------------------ | | ----------- | ------------------------------------------------------ |
| `--hbios` | Utilise HBIOS' sound driver |
| `+t1` | Play tune an octave higher |
| `+t2` | Play tune two octaves higher |
| `-t1` | Play tune an octave lower |
| `-t2` | Play tune two octaves lower |
| `-MSX` | Force use of MSX standard ports (A0H/A1H) |
| `-RC` | Force use of RCBus standard ports (D8H/D0H) |
| `--HBIOS` | Utilise HBIOS' sound driver |
| `+T1` | Play tune an octave higher |
| `+T2` | Play tune two octaves higher |
| `-T1` | Play tune an octave lower |
| `-T2` | Play tune two octaves lower |
All RomWBW operating system boot disks include a selection of sound All RomWBW operating system boot disks include a selection of sound
files in user area 3. files in user area 3.

Loading…
Cancel
Save