mirror of https://github.com/wwarthen/RomWBW.git
54 changed files with 2635 additions and 544 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,33 @@ |
|||
|
|||
|
|||
CLI_ABRT_IF_OPT_FIRST: |
|||
LD A, (FCB+1) |
|||
CP '-' ; OPTION FIRST OR - MISSING FILENAME? |
|||
JP Z, ERRCMD ; SHOW USAGE |
|||
RET |
|||
|
|||
CLI_HAVE_HBIOS_SWITCH: |
|||
LD HL, CLIARGS ; TEST FOR --HBIOS ON COMNMAND LINE |
|||
LD DE, HBIOSOPT |
|||
CALL STRINDEX |
|||
JR NZ, CLI_HAVE_HBIOS_SWITCH1 |
|||
OR $FF ; IS NOT HBIOS |
|||
LD (HBIOSMD), A |
|||
RET |
|||
CLI_HAVE_HBIOS_SWITCH1: |
|||
AND 0 ; IS HBIOS |
|||
LD (HBIOSMD), A |
|||
RET |
|||
|
|||
CLI_ABRT_UNSUPPFILTYP: |
|||
PUSH AF |
|||
ISHBIOS |
|||
JR Z, CLI_ABRT_UNSUPPFILTYP1 |
|||
POP AF |
|||
CP TYPMYM |
|||
RET NZ |
|||
ERRWITHMSG(MSGUNSUP) ; EXIT WITH UNSUPPORTED FILE TYPE MESSAGE |
|||
|
|||
CLI_ABRT_UNSUPPFILTYP1: |
|||
POP AF |
|||
RET |
|||
@ -0,0 +1,4 @@ |
|||
CLIARGS .EQU $81 |
|||
RESTART .EQU $0000 ; CP/M restart vector |
|||
BDOS .EQU $0005 ; BDOS invocation vector |
|||
FCB .EQU $5C ; Location of default FCB |
|||
@ -0,0 +1,15 @@ |
|||
IDENT .EQU $FFFE ; loc of RomWBW HBIOS ident ptr |
|||
; |
|||
RMJ .EQU 3 ; intended CBIOS version - major |
|||
RMN .EQU 1 ; intended CBIOS version - minor |
|||
; |
|||
BF_SYSVER .EQU $F1 ; BIOS: VER function |
|||
BF_SYSGET .EQU $F8 ; HBIOS: SYSGET function |
|||
; |
|||
|
|||
BF_SND .EQU $50 |
|||
BF_SNDRESET .EQU BF_SND + 0 ; RESET SOUND SYSTEM |
|||
BF_SNDVOL .EQU BF_SND + 1 ; REQUEST SOUND VOL - D IS CHANNEL, E CONTAINS VOLUME (255 MAX, 0 SILENT) - SCALED AS REQUIRED BY DRIVER (EG: MAPS TO JUST 4 BIT RESOLUTION FOR SN76489) |
|||
BF_SNDPIT .EQU BF_SND + 2 ; REQUEST SOUND PITCH - D IS CHANNEL, HL CONTAINS PITCH (0 LOWEST NOTE, FFFF HIGHEST NOTE) - SCALED BY DRIVER (EG: MAPS TO JUST 10 BITS FOR SN76489 ) |
|||
BF_SNDPLAY .EQU BF_SND + 4 ; INITIATE THE REQUESTED SOUND COMMAND |
|||
BF_SNDQUERY .EQU BF_SND + 5 ; D IS CHANNEL, E IS SUBCOMMAND |
|||
@ -0,0 +1,175 @@ |
|||
; |
|||
; Print character in A without destroying any registers |
|||
; |
|||
PRTCHR: |
|||
PUSH BC ; save registers |
|||
PUSH DE |
|||
PUSH HL |
|||
LD E,A ; character to print in E |
|||
LD C,$02 ; BDOS function to output a character |
|||
CALL BDOS ; do it |
|||
POP HL ; restore registers |
|||
POP DE |
|||
POP BC |
|||
RET |
|||
; |
|||
PRTDOT: |
|||
; |
|||
; shortcut to print a dot preserving all regs |
|||
PUSH AF ; save af |
|||
LD A,'.' ; load dot char |
|||
CALL PRTCHR ; print it |
|||
POP AF ; restore af |
|||
RET ; done |
|||
; |
|||
PRTCR: |
|||
; |
|||
; shortcut to print a dot preserving all regs |
|||
PUSH AF ; save af |
|||
LD A,13 ; load CR value |
|||
CALL PRTCHR ; print it |
|||
POP AF ; restore af |
|||
RET ; done |
|||
; |
|||
; Print a zero terminated string at (DE) without destroying any registers |
|||
; |
|||
PRTSTR: |
|||
PUSH DE |
|||
; |
|||
PRTSTR1: |
|||
LD A,(DE) ; get next char |
|||
OR A |
|||
JR Z,PRTSTR2 |
|||
CALL PRTCHR |
|||
INC DE |
|||
JR PRTSTR1 |
|||
; |
|||
PRTSTR2: |
|||
POP DE ; restore registers |
|||
RET |
|||
; |
|||
; Print the value in A in hex without destroying any registers |
|||
; |
|||
PRTHEX: |
|||
PUSH AF ; save AF |
|||
PUSH DE ; save DE |
|||
CALL HEXASCII ; convert value in A to hex chars in DE |
|||
LD A,D ; get the high order hex char |
|||
CALL PRTCHR ; print it |
|||
LD A,E ; get the low order hex char |
|||
CALL PRTCHR ; print it |
|||
POP DE ; restore DE |
|||
POP AF ; restore AF |
|||
RET ; done |
|||
; |
|||
; print the hex word value in bc |
|||
; |
|||
PRTHEXWORD: |
|||
PUSH AF |
|||
LD A,B |
|||
CALL PRTHEX |
|||
LD A,C |
|||
CALL PRTHEX |
|||
POP AF |
|||
RET |
|||
; |
|||
; print the hex dword value in de:hl |
|||
; |
|||
PRTHEX32: |
|||
PUSH BC |
|||
PUSH DE |
|||
POP BC |
|||
CALL PRTHEXWORD |
|||
PUSH HL |
|||
POP BC |
|||
CALL PRTHEXWORD |
|||
POP BC |
|||
RET |
|||
; |
|||
; Convert binary value in A to ascii hex characters in DE |
|||
; |
|||
HEXASCII: |
|||
LD D,A ; save A in D |
|||
CALL HEXCONV ; convert low nibble of A to hex |
|||
LD E,A ; save it in E |
|||
LD A,D ; get original value back |
|||
RLCA ; rotate high order nibble to low bits |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
CALL HEXCONV ; convert nibble |
|||
LD D,A ; save it in D |
|||
RET ; done |
|||
|
|||
; |
|||
; Convert low nibble of A to ascii hex |
|||
; |
|||
HEXCONV: |
|||
AND $0F ; low nibble only |
|||
ADD A,$90 |
|||
DAA |
|||
ADC A,$40 |
|||
DAA |
|||
RET |
|||
|
|||
; |
|||
; Print value of A or HL in decimal with leading zero suppression |
|||
; Use prtdecb for A or prtdecw for HL |
|||
; |
|||
PRTDECB: |
|||
PUSH HL |
|||
LD H,0 |
|||
LD L,A |
|||
CALL PRTDECW ; print it |
|||
POP HL |
|||
RET |
|||
; |
|||
PRTDECW: |
|||
PUSH AF |
|||
PUSH BC |
|||
PUSH DE |
|||
PUSH HL |
|||
CALL PRTDEC0 |
|||
POP HL |
|||
POP DE |
|||
POP BC |
|||
POP AF |
|||
RET |
|||
; |
|||
PRTDEC0: |
|||
LD E,'0' |
|||
LD BC,-10000 |
|||
CALL PRTDEC1 |
|||
LD BC,-1000 |
|||
CALL PRTDEC1 |
|||
LD BC,-100 |
|||
CALL PRTDEC1 |
|||
LD C,-10 |
|||
CALL PRTDEC1 |
|||
LD E,0 |
|||
LD C,-1 |
|||
PRTDEC1: |
|||
LD A,'0' - 1 |
|||
PRTDEC2: |
|||
INC A |
|||
ADD HL,BC |
|||
JR C,PRTDEC2 |
|||
SBC HL,BC |
|||
CP E |
|||
RET Z |
|||
LD E,0 |
|||
CALL PRTCHR |
|||
RET |
|||
; |
|||
; Start a new line |
|||
; |
|||
CRLF2: |
|||
CALL CRLF ; two of them |
|||
CRLF: |
|||
PUSH AF ; preserve AF |
|||
LD A,13 ; <CR> |
|||
CALL PRTCHR ; print it |
|||
LD A,10 ; <LF> |
|||
CALL PRTCHR ; print it |
|||
POP AF ; restore AF |
|||
RET |
|||
@ -0,0 +1,39 @@ |
|||
STRINDEX: ; SEARCH FOR STRING AT DE WITHIN STRING AT HL |
|||
|
|||
LD B, 0 |
|||
LD C, 0 |
|||
|
|||
TRYNEXT: |
|||
PUSH HL |
|||
PUSH DE |
|||
CALL STRCMP |
|||
POP DE |
|||
POP HL |
|||
RET Z |
|||
|
|||
INC HL |
|||
INC BC |
|||
LD A, (HL) |
|||
OR A |
|||
JR NZ, TRYNEXT |
|||
|
|||
OR $FF ; RETURN NZ |
|||
RET |
|||
|
|||
STRCMP: ; COMPARE STRING AT HL WITH DE - RETURN Z IF LIKE |
|||
LD A, (DE) |
|||
OR A |
|||
RET Z |
|||
|
|||
LD B, A |
|||
LD A, (HL) |
|||
OR A |
|||
JR NZ, STRCMP1 |
|||
OR $FF ; END OF STRING HL - SO NOT FOUND |
|||
RET |
|||
STRCMP1 |
|||
CP B |
|||
RET NZ |
|||
INC HL |
|||
INC DE |
|||
JR STRCMP |
|||
@ -0,0 +1,60 @@ |
|||
|
|||
; |
|||
; Wait for quark play time. Can use hardware timer if |
|||
; supported by hardware or simple delay loop otherwise. |
|||
; Delay loop requires QDLY to be pre-set to to achieve |
|||
; optimal 20ms wait time. |
|||
; |
|||
WAITQ LD A,(WMOD) ; Get delay mode |
|||
OR A ; Set flags |
|||
JR Z,DLY ; Delay mode |
|||
; |
|||
; Timer loop |
|||
CALL TIM2 ; Read timer LSB into A |
|||
LD C,A ; Init prev value |
|||
TIM1 PUSH BC ; Save prev value |
|||
CALL TIM2 ; Read timer LSB into A |
|||
POP BC ; Recover prev value |
|||
CP C ; Compare to prev |
|||
RET NZ ; Done if changed |
|||
JR TIM1 ; Else, loop |
|||
; |
|||
TIM2 LD B,$F8 ; BIOS SYSGET function |
|||
LD C,$D0 ; TIMER sub-function |
|||
RST 08 ; Call BIOS |
|||
LD A,L ; MSB to A |
|||
RET ; Return to loop |
|||
; |
|||
; Delay spin loop (40 tstates per loop) |
|||
DLY LD BC,(QDLY) ; Load quark delay factor |
|||
DLY1 DEC BC ; [6] |
|||
NOP ; [4] |
|||
NOP ; [4] |
|||
NOP ; [4] |
|||
NOP ; [4] |
|||
LD A,B ; [4] |
|||
OR C ; [4] |
|||
JP NZ,DLY1 ; [10] |
|||
RET |
|||
|
|||
; |
|||
; Test for timer running to determine if it can be used for delay |
|||
; Return string message in DE |
|||
; Assigned (WMOD) with 0 if no hardware time, 1 if hardware timer found |
|||
; |
|||
PROBETIMER: |
|||
LD B,BF_SYSGET ; HBIOS: GET function |
|||
LD C,$D0 ; TIMER subfunction |
|||
RST 08 ; DE:HL := current tick count |
|||
LD A,L ; DE:HL == 0? |
|||
OR H |
|||
OR E |
|||
OR D |
|||
LD A,0 ; Assume no timer |
|||
LD DE,MSGDLY ; Delay mode msg |
|||
JR Z,SETDLY ; If tick count is zero, no timer active |
|||
LD A,$FF ; Value for timer active |
|||
LD DE,MSGTIM ; Timer mode msg |
|||
SETDLY: |
|||
LD (WMOD),A ; Save wait mode |
|||
RET |
|||
@ -0,0 +1,4 @@ |
|||
#DEFINE ISHBIOS LD A, (HBIOSMD) \ OR A |
|||
#DEFINE PRTSTRDE(X) LD DE, X \ CALL PRTSTR |
|||
#DEFINE PRTCRLF CALL CRLF |
|||
#DEFINE ERRWITHMSG(X) LD DE, X \ JP ERR |
|||
@ -0,0 +1,828 @@ |
|||
!include(Common.inc) |
|||
!def(document)(Disk Catalog) |
|||
!def(author)(Mykl Orders) |
|||
--- |
|||
title: | |
|||
| !product |
|||
| Version !ver |
|||
| |
|||
| !document |
|||
author: !author (mailto:!authmail) |
|||
date: !date |
|||
institution: !orgname |
|||
documentclass: article |
|||
classoption: |
|||
- oneside |
|||
toc: true |
|||
papersize: letter |
|||
geometry: |
|||
- top=1.5in |
|||
- bottom=1.5in |
|||
- left=1.0in |
|||
- right=1.0in |
|||
# - showframe |
|||
linestretch: 1.25 |
|||
colorlinks: true |
|||
fontfamily: helvet |
|||
fontsize: 12pt |
|||
header-includes: |
|||
- | |
|||
```{=latex} |
|||
\usepackage{fancyhdr} |
|||
\usepackage{xhfill} |
|||
\renewcommand*{\familydefault}{\sfdefault} |
|||
\setstretch{1.25} % for TOC |
|||
``` |
|||
--- |
|||
|
|||
```{=latex} |
|||
\clearpage |
|||
\pagestyle{fancyplain} |
|||
\fancyhf{} |
|||
\pagenumbering{arabic} |
|||
\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill !product !document}}} |
|||
\lfoot{\small RetroBrew Computing Group ~~ {\xrfill[3pt]{1pt}[cyan]} ~~ \thepage} |
|||
``` |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# RomWBW Distribution File Catalog |
|||
|
|||
This document is a reference to the files found on the disk media |
|||
distributed with RomWBW. Specifically, RomWBW provides a set |
|||
of floppy and hard disk images in the Binary directory of the |
|||
distribution. The contents of these images is listed here. |
|||
|
|||
The files on the disk images were sourced from a variety of locations. |
|||
The primary sources of these files are listed below. Note that the |
|||
primary documentation for each of these sources is listed. You are |
|||
strongly encouraged to refer to this documentation for more information |
|||
on using the applications and files listed. |
|||
|
|||
## Sources |
|||
|
|||
- **RomWBW**: RomWBW Custom Applications |
|||
|
|||
Documentation: RomWBW Applications.pdf* |
|||
|
|||
These files are custom applications built exclusively to enhance the |
|||
functionality of RomWBW. In some cases they are built from scratch |
|||
while others are customized versions of well known CP/M tools. |
|||
|
|||
- **CPM22**: Digital Research CP/M-80 2.2 Distribution Files |
|||
|
|||
Documentation: CPM Manual.pdf |
|||
|
|||
These files are from the official Digital Research distribution |
|||
of CP/M 2.2. Applications have been patched according to the |
|||
DRI patch list. |
|||
|
|||
- **ZSDOS**: ZSDOS 1.1 Disk Operating System Distribution Files |
|||
|
|||
Documentation: *ZSDOS Manual.pdf* |
|||
|
|||
These files are from the official ZSDOS 1.1 distribution. Some of |
|||
the files are redistributions of applications from other sources. |
|||
|
|||
- **ZCPR**: ZCPR 1.0 Command Processor Distribution Files |
|||
|
|||
Documentation: *ZCPR Manual.pdf* |
|||
|
|||
These files are from the ZCPR 1.0 distribution. |
|||
|
|||
- **NZCOM**: NZCOM Automatic Z-System Distribution Files |
|||
|
|||
Documentation: *NZCOM Users Manual.pdf* |
|||
|
|||
These files are from the last official release of NZCOM. |
|||
|
|||
- **CPM3**: Digital Research CP/M 3 Distribution Files |
|||
|
|||
Documentation: *CPM3 Users Guide.pdf*, *CPM3 System Guide.pdf*, |
|||
*CPM3 Programmers Guide.pdf*, *CPM3 Command Summary.pdf* |
|||
|
|||
These files are from the official Digital Research distribution of |
|||
CP/M 3. Applications have been patched according to the DRI |
|||
patch list. |
|||
|
|||
- **ZPM3**: Digital Research CP/M-80 2.2 Distribution Files |
|||
|
|||
Documentation: *CPM Manual.pdf* |
|||
|
|||
These files are from Simeon Cran's ZPM3 operating system distribution. |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# CPM 2.2 Boot Disk |
|||
|
|||
| Floppy Disk Image: **fd_cpm22.img** |
|||
| Hard Disk Image: **hd_cpm22.img** |
|||
| Combo Disk Image: **Slice 0** |
|||
|
|||
| **User 0** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ASM.COM` | CPM22 | DRI 8080 Assembler | |
|||
| `CR.COM` | -- | Crunch archiver | |
|||
| `DDT.COM` | CPM22 | DRI Dynamic Debugger | |
|||
| `DDTZ.DOC` | -- | Z80 replacement for DDT | |
|||
| `DIRX.COM` | -- | Directory lister with file sizes | |
|||
| `DUMP.COM` | CPM22 | DRI type contents of disk file in hex | |
|||
| `ED.COM` | CPM22 | DRI context editor | |
|||
| `KERMIT.COM` | -- | Generic CP/M 2.2 Kermit communication application | |
|||
| `LBREXT.COM` | -- | Extract library files | |
|||
| `LIB.COM` | -- | DRI Library manager | |
|||
| `LINK.COM` | -- | DRI CPM relocatable linker | |
|||
| `LOAD.COM` | -- | DRI hex file loader into memory | |
|||
| `MAC.COM` | -- | DRI CPM macro assembler | |
|||
| `MBASIC.COM` | -- | Microsoft Basic | |
|||
| `PIP.COM` | CPM22 | DRI Periperal Interchange Program | |
|||
| `PMARC.COM` | -- | LHA file compressor | |
|||
| `PMEXT.COM` | -- | Extractor for PMARC archives | |
|||
| `RMAC.COM` | -- | DRI Relocatable Macro Assembler | |
|||
| `STAT.COM` | CPM22 | DRI statistices about file storage and device assignment | |
|||
| `SUBMIT.COM` | CPM22 | DRI batch processor | |
|||
| `UNCR.COM` | -- | NZCOM Uncrunch decompression | |
|||
| `UNZIP.COM` | -- | Extractor for ZIP archives | |
|||
| `XSUB.COM` | CPM22 | DRI eXtended submit | |
|||
| `ZSID.COM` | -- | DRI Z80 symbolic instruction debugger | |
|||
| `ASSIGN.COM` | RomWBW | RomWBW Drive/Slice mapper | |
|||
| `FAT.COM` | RomWBW | RomWBW FAT filesystem access | |
|||
| `FDU.COM` | RomWBW | RomWBW Floppy Disk Utility | |
|||
| `FORMAT.COM` | RomWBW | RomWBW media formatter (placeholder) | |
|||
| `INTTEST.COM` | RomWBW | RomWBW Interrupt test | |
|||
| `MODE.COM` | RomWBW | RomWBW Modify serial port characteristics | |
|||
| `RTC.COM` | RomWBW | RomWBW Display and set RTC | |
|||
| `SURVEY.COM` | RomWBW | System survey | |
|||
| `SYSCOPY.COM` | RomWBW | RomWBW Read/write system boot image | |
|||
| `SYSGEN.COM` | RomWBW | DRI CPM SYSGEN to put CPM onto a new drive | |
|||
| `TALK.COM` | RomWBW | RomWBW Direct console I/O to a serial port | |
|||
| `TIMER.COM` | RomWBW | RomWBW Display timer tick counter | |
|||
| `TUNE.COM` | RomWBW | RomWBW Play PT or MYM sound files | |
|||
| `XM.COM` | RomWBW | RomWBW XMODEM file transfer | |
|||
| `CPM.SYS` | RomWBW | CPM2.2 system image | |
|||
| `CLRDIR.COM` | -- | Max Scane's disk directory cleaner | |
|||
| `COMPARE.COM` | -- | FoxHollow compare two files | |
|||
| `DDTZ.COM` | -- | Z80 replacement for DDT | |
|||
| `FDISK80.COM` | -- | John Coffman's Partition editor for FAT filesystem | |
|||
| `FLASH.COM` | -- | Will Sowerbutts' in-situ EEPROM programmer | |
|||
| `NULU.COM` | -- | NZCOM new library utility | |
|||
| `UNARC.COM` | -- | Extractor for ARC archives | |
|||
| `ZAP.COM` | -- | Disk editor/patcher | |
|||
| `ZDE.COM` | -- | Z-system display editor | |
|||
| `ZDENST.COM` | -- | ZDE Installer | |
|||
|
|||
| **User 1** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `SAMPKEY.DOC` | -- | ZDE Distribution File | |
|||
| `SAMPKEY.ZDK` | -- | ZDE Distribution File | |
|||
| `SAMPKEY.ZDT` | -- | ZDE Distribution File | |
|||
| `ZDE10.DOC` | -- | ZDE Distribution File | |
|||
| `ZDE10.FOR` | -- | ZDE Distribution File | |
|||
| `ZDE10.NEW` | -- | ZDE Distribution File | |
|||
| `ZDE10.QRF` | -- | ZDE Distribution File | |
|||
| `ZDE10.TOC` | -- | ZDE Distribution File | |
|||
| `ZDE13.FOR` | -- | ZDE Distribution File | |
|||
| `ZDE13.NEW` | -- | ZDE Distribution File | |
|||
| `ZDE16.COM` | -- | ZDE Distribution File | |
|||
| `ZDE16.DIR` | -- | ZDE Distribution File | |
|||
| `ZDE16.FIX` | -- | ZDE Distribution File | |
|||
| `ZDE16.FOR` | -- | ZDE Distribution File | |
|||
| `ZDE16.NEW` | -- | ZDE Distribution File | |
|||
| `ZDE16A.COM` | -- | ZDE Distribution File | |
|||
| `ZDE16A.PAT` | -- | ZDE Distribution File | |
|||
| `ZDENST16.COM` | -- | ZDE Distribution File | |
|||
| `ZDEPROP.DOC` | -- | ZDE Distribution File | |
|||
| `ZDEPROP.Z80` | -- | ZDE Distribution File | |
|||
| `ZDKCOM13.COM` | -- | ZDE Distribution File | |
|||
| `ZDKCOM13.DOC` | -- | ZDE Distribution File | |
|||
|
|||
| **User 3** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ATTACK.PT3` | -- | Sound File | |
|||
| `BACKUP.PT3` | -- | Sound File | |
|||
| `BADMICE.PT3` | -- | Sound File | |
|||
| `DEMO.MYM` | -- | Sound File | |
|||
| `DEMO1.MYM` | -- | Sound File | |
|||
| `DEMO3.MYM` | -- | Sound File | |
|||
| `DEMO3MIX.MYM` | -- | Sound File | |
|||
| `DEMO4.MYM` | -- | Sound File | |
|||
| `HOWRU.PT3` | -- | Sound File | |
|||
| `ITERATN.PT3` | -- | Sound File | |
|||
| `LOOKBACK.PT3` | -- | Sound File | |
|||
| `LOUBOUTN.PT3` | -- | Sound File | |
|||
| `NAMIDA.PT3` | -- | Sound File | |
|||
| `RECOLL.PT3` | -- | Sound File | |
|||
| `SANXION.PT3` | -- | Sound File | |
|||
| `SYNCH.PT3` | -- | Sound File | |
|||
| `TOSTAR.PT3` | -- | Sound File | |
|||
| `VICTORY.PT3` | -- | Sound File | |
|||
| `WICKED.PT3` | -- | Sound File | |
|||
| `YEOLDE.PT3` | -- | Sound File | |
|||
| `YEOVIL.PT3` | -- | Sound File | |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# ZSDOS 1.1 Boot Disk |
|||
|
|||
| Floppy Disk Image: **fd_zsdos.img** |
|||
| Hard Disk Image: **hd_zsdos.img** |
|||
| Combo Disk Image: **Slice 1** |
|||
|
|||
| **User 0** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ASM.COM` | CPM22 | DRI 8080 Assembler | |
|||
| `CLOCKS.DAT` | ZSDOS | ZSDOS Library of clock drivers | |
|||
| `COPY.CFG` | ZSDOS | ZSDOS Configuration file for COPY.COM | |
|||
| `COPY.COM` | ZSDOS | ZSDOS File copier with file dates and archiving | |
|||
| `COPY.UPD` | ZSDOS | ZSDOS ??? | |
|||
| `CR.COM` | -- | Crunch archiver | |
|||
| `DATSWEEP.COM` | ZSDOS | ZSDOS Comprehensive file management utility | |
|||
| `DDT.COM` | CPM22 | DRI Dynamic Debugger | |
|||
| `DDTZ.DOC` | -- | Z80 replacement for DDT | |
|||
| `DIRX.COM` | -- | Directory lister with file sizes | |
|||
| `DSCONFIG.COM` | ZSDOS | ZSDOS DATSWEEP configuration tool | |
|||
| `DUMP.COM` | CPM22 | DRI type contents of disk file in hex | |
|||
| `ED.COM` | CPM22 | DRI context editor | |
|||
| `FA16.CFG` | ZSDOS | ZSDOS FILEATTR.COM v1.6 configuration file | |
|||
| `FA16.DOC` | ZSDOS | ZSDOS FILEATTR.COM v1.6 documentation | |
|||
| `FA16A.FOR` | ZSDOS | ZSDOS FILEATTR.COM v1.6a information | |
|||
| `FA16CFG.TXT` | ZSDOS | ZSDOS FILEATTR.COM v1.6 configuration instructions | |
|||
| `FILEATTR.COM` | ZSDOS | ZSDOS Modify file attributes | |
|||
| `FILEDATE.CFG` | ZSDOS | ZSDOS Configuration file for FILEDATE.COM | |
|||
| `FILEDATE.COM` | ZSDOS | ZSDOS Disk directory that allows sorting and selecting by date and name | |
|||
| `FILEDATE.COM` | ZSDOS | ZSDOS Disk directory that allows sorting and selecting by date and name | |
|||
| `INITDIR.CFG` | ZSDOS | ZSDOS Configuration file for INITDIR.COM | |
|||
| `INITDIR.COM` | ZSDOS | ZSDOS Prepare disks for P2DOS Stamps | |
|||
| `KERMIT.COM` | -- | Generic CP/M 2.2 Kermit communication application | |
|||
| `LBREXT.COM` | -- | Extract library files | |
|||
| `LDDS.COM` | ZSDOS | Clock driver | |
|||
| `LDNZT.COM` | ZSDOS | Clock driver | |
|||
| `LDP2D.COM` | ZSDOS | Clock driver | |
|||
| `LIB.COM` | -- | DRI Library manager | |
|||
| `LINK.COM` | -- | DRI CPM relocatable linker | |
|||
| `LOAD.COM` | -- | DRI hex file loader into memory | |
|||
| `MAC.COM` | -- | DRI CPM macro assembler | |
|||
| `MBASIC.COM` | -- | Microsoft Basic | |
|||
| `PIP.COM` | CPM22 | DRI Periperal Interchange Program | |
|||
| `PMARC.COM` | -- | LHA file compressor | |
|||
| `PMEXT.COM` | -- | Extractor for PMARC archives | |
|||
| `PUTBG.COM` | ZSDOS | ZSDOS Prepare disk for backgrounder | |
|||
| `PUTDS.COM` | ZSDOS | ZSDOS Prepare disk for datestamper | |
|||
| `RELOG.COM` | ZSDOS | ZSDOS relog disks after program that bypasses BDOS | |
|||
| `RMAC.COM` | -- | DRI Relocatable Macro Assembler | |
|||
| `SETTERM.COM` | ZSDOS | ZSDOS Installs terminal control codes into DateSamper utilities | |
|||
| `SETUPZST.COM` | ZSDOS | ZSDOS Select clock driver | |
|||
| `STAMPS.DAT` | ZSDOS | ZSDOS Library of stamping routines | |
|||
| `STAT.COM` | CPM22 | DRI statistices about file storage and device assignment | |
|||
| `SUBMIT.COM` | CPM22 | DRI batch processor | |
|||
| `SUPERSUB.COM` | ZSDOS | | |
|||
| `TD.CFG` | ZSDOS | ZSDOS Configuration file for TD.COM | |
|||
| `TD.COM` | ZSDOS | ZSDOS Time/Date utility | |
|||
| `TERMBASE.DAT` | ZSDOS | ZSDOS Terminal information library for SETTERM | |
|||
| `TESTCLOK.COM` | ZSDOS | ZSDOS Test various clock drivers | |
|||
| `UNCR.COM` | -- | NZCOM Uncrunch decompression | |
|||
| `UNZIP.COM` | -- | Extractor for ZIP archives | |
|||
| `XSUB.COM` | CPM22 | DRI eXtended submit | |
|||
| `ZCAL.COM` | ZSDOS | ZSDOS Show month calendar | |
|||
| `ZCNFG.COM` | ZSDOS | ZSDOS Configure various utilities | |
|||
| `ZCNFG24.CFG` | ZSDOS | ZSDOS Configuration file for ZCNFG.COM | |
|||
| `ZPATH.COM` | ZSDOS | ZSDOS Set BDOS and/or ZCPR command path | |
|||
| `ZSCONFIG.COM` | ZSDOS | ZSDOS Dynamically regulate many of ZSDOS features | |
|||
| `ZSID.COM` | -- | DRI Z80 symbolic instruction debugger | |
|||
| `ZSVSTAMP.COM` | ZSDOS | ZSDOS Save/restore file timestamp | |
|||
| `ZSVSTAMP.DOC` | ZSDOS | ZSDOS ZSVSTAMP.COM documentation | |
|||
| `ZXD.CFG` | ZSDOS | ZSDOS Configuration file for ZXD.COM | |
|||
| `ZXD.COM` | ZSDOS | ZSDOS Extended directory utility | |
|||
| `ASSIGN.COM` | RomWBW | RomWBW Drive/Slice mapper | |
|||
| `FAT.COM` | RomWBW | RomWBW FAT filesystem access | |
|||
| `FDU.COM` | RomWBW | RomWBW Floppy Disk Utility | |
|||
| `FORMAT.COM` | RomWBW | RomWBW media formatter (placeholder) | |
|||
| `INTTEST.COM` | RomWBW | RomWBW Interrupt test | |
|||
| `MODE.COM` | RomWBW | RomWBW Modify serial port characteristics | |
|||
| `RTC.COM` | RomWBW | RomWBW Display and set RTC | |
|||
| `SURVEY.COM` | RomWBW | System survey | |
|||
| `SYSCOPY.COM` | RomWBW | RomWBW Read/write system boot image | |
|||
| `SYSGEN.COM` | RomWBW | DRI CPM SYSGEN to put CPM onto a new drive | |
|||
| `TALK.COM` | RomWBW | RomWBW Direct console I/O to a serial port | |
|||
| `TIMER.COM` | RomWBW | RomWBW Display timer tick counter | |
|||
| `TUNE.COM` | RomWBW | RomWBW Play PT or MYM sound files | |
|||
| `XM.COM` | RomWBW | RomWBW XMODEM file transfer | |
|||
| `ZSYS.SYS` | RomWBW | ZSDOS system image | |
|||
| `CLRDIR.COM` | -- | Max Scane's disk directory cleaner | |
|||
| `COMPARE.COM` | -- | FoxHollow compare two files | |
|||
| `DDTZ.COM` | -- | Z80 replacement for DDT | |
|||
| `FDISK80.COM` | -- | John Coffman's Partition editor for FAT filesystem | |
|||
| `FLASH.COM` | -- | Will Sowerbutts' in-situ EEPROM programmer | |
|||
| `NULU.COM` | -- | NZCOM new library utility | |
|||
| `UNARC.COM` | -- | Extractor for ARC archives | |
|||
| `ZAP.COM` | -- | Disk editor/patcher | |
|||
| `ZDE.COM` | -- | Z-system display editor | |
|||
| `ZDENST.COM` | -- | ZDE Installer | |
|||
|
|||
| **User 1** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `SAMPKEY.DOC` | -- | ZDE Distribution File | |
|||
| `SAMPKEY.ZDK` | -- | ZDE Distribution File | |
|||
| `SAMPKEY.ZDT` | -- | ZDE Distribution File | |
|||
| `ZDE10.DOC` | -- | ZDE Distribution File | |
|||
| `ZDE10.FOR` | -- | ZDE Distribution File | |
|||
| `ZDE10.NEW` | -- | ZDE Distribution File | |
|||
| `ZDE10.QRF` | -- | ZDE Distribution File | |
|||
| `ZDE10.TOC` | -- | ZDE Distribution File | |
|||
| `ZDE13.FOR` | -- | ZDE Distribution File | |
|||
| `ZDE13.NEW` | -- | ZDE Distribution File | |
|||
| `ZDE16.COM` | -- | ZDE Distribution File | |
|||
| `ZDE16.DIR` | -- | ZDE Distribution File | |
|||
| `ZDE16.FIX` | -- | ZDE Distribution File | |
|||
| `ZDE16.FOR` | -- | ZDE Distribution File | |
|||
| `ZDE16.NEW` | -- | ZDE Distribution File | |
|||
| `ZDE16A.COM` | -- | ZDE Distribution File | |
|||
| `ZDE16A.PAT` | -- | ZDE Distribution File | |
|||
| `ZDENST16.COM` | -- | ZDE Distribution File | |
|||
| `ZDEPROP.DOC` | -- | ZDE Distribution File | |
|||
| `ZDEPROP.Z80` | -- | ZDE Distribution File | |
|||
| `ZDKCOM13.COM` | -- | ZDE Distribution File | |
|||
| `ZDKCOM13.DOC` | -- | ZDE Distribution File | |
|||
|
|||
| **User 3** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ATTACK.PT3` | -- | Sound File | |
|||
| `BACKUP.PT3` | -- | Sound File | |
|||
| `BADMICE.PT3` | -- | Sound File | |
|||
| `DEMO.MYM` | -- | Sound File | |
|||
| `DEMO1.MYM` | -- | Sound File | |
|||
| `DEMO3.MYM` | -- | Sound File | |
|||
| `DEMO3MIX.MYM` | -- | Sound File | |
|||
| `DEMO4.MYM` | -- | Sound File | |
|||
| `HOWRU.PT3` | -- | Sound File | |
|||
| `ITERATN.PT3` | -- | Sound File | |
|||
| `LOOKBACK.PT3` | -- | Sound File | |
|||
| `LOUBOUTN.PT3` | -- | Sound File | |
|||
| `NAMIDA.PT3` | -- | Sound File | |
|||
| `RECOLL.PT3` | -- | Sound File | |
|||
| `SANXION.PT3` | -- | Sound File | |
|||
| `SYNCH.PT3` | -- | Sound File | |
|||
| `TOSTAR.PT3` | -- | Sound File | |
|||
| `VICTORY.PT3` | -- | Sound File | |
|||
| `WICKED.PT3` | -- | Sound File | |
|||
| `YEOLDE.PT3` | -- | Sound File | |
|||
| `YEOVIL.PT3` | -- | Sound File | |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# NZCOM Boot Disk |
|||
|
|||
| Floppy Disk Image: **fd_nzcom.img** |
|||
| Hard Disk Image: **hd_nzcom.img** |
|||
| Combo Disk Image: **Slice 2** |
|||
|
|||
| **User 0** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `!(C)1988` | NZCOM | | |
|||
| `!NZ-COM` | NZCOM | | |
|||
| `!VERS--1.2H` | NZCOM | | |
|||
| `ALIAS.CMD` | NZCOM | NZCOM Aliases file for ARUNZ.COM | |
|||
| `ARUNZ.COM` | NZCOM | NZCOM Invoke an alias in ALIAS.CMD | |
|||
| `BGZRDS19.LBR` | NZCOM | | |
|||
| `CLEDINST.COM` | NZCOM | Command line editing and history shell installer | |
|||
| `CLEDSAVE.COM` | NZCOM | Write command line history to disk | |
|||
| `CONFIG.LBR` | NZCOM | | |
|||
| `COPY.COM` | NZCOM | ZSDOS File copier with file dates and archiving | |
|||
| `CPSET.COM` | NZCOM | NZCOM Create multiple definitions for CRT and PRT | |
|||
| `CRUNCH.COM` | NZCOM | NZCOM Text compression | |
|||
| `DOCFILES.LBR` | NZCOM | | |
|||
| `EDITNDR.COM` | NZCOM | NZCOM Associate names with directories | |
|||
| `FCP.LBR` | NZCOM | NZCOM ??? Flow control | |
|||
| `FF.COM` | NZCOM | NZCOM File finder | |
|||
| `HELP.COM` | NZCOM | DRI CPM+ | |
|||
| `HLPFILES.LBR` | NZCOM | | |
|||
| `IF.COM` | NZCOM | NZCOM Flow condition tester for FCP | |
|||
| `JETLDR.COM` | NZCOM | NZCOM General-purpose module loader | |
|||
| `KERMIT.COM` | -- | Generic CP/M 2.2 Kermit communication application | |
|||
| `LBREXT.COM` | NZCOM | Extract library files | |
|||
| `LBRHELP.COM` | NZCOM | | |
|||
| `LDIR.COM` | NZCOM | NZCOM Display the directory of a library | |
|||
| `LPUT.COM` | NZCOM | NZCOM Put files into a library | |
|||
| `LSH-HELP.COM` | NZCOM | | |
|||
| `LSH.COM` | NZCOM | | |
|||
| `LSH.WZ` | NZCOM | | |
|||
| `LSHINST.COM` | NZCOM | | |
|||
| `LX.COM` | NZCOM | NZCOM Extract and execute a memeber of a library | |
|||
| `MKZCM.COM` | NZCOM | NZCOM NZCOM system defining utility | |
|||
| `NAME.COM` | NZCOM | NZCOM Name a drive/user | |
|||
| `NZ-DBASE.INF` | NZCOM | NZCOM Dbase information | |
|||
| `NZBLITZ.COM` | NZCOM | | |
|||
| `NZBLTZ14.CFG` | NZCOM | | |
|||
| `NZBLTZ14.HZP` | NZCOM | | |
|||
| `NZCOM.COM` | NZCOM | NZCOM system loader from CP/M | |
|||
| `NZCOM.LBR` | NZCOM | NZCOM Library of NZCOM system modules | |
|||
| `NZCPR.LBR` | NZCOM | NZCOM Default command processor | |
|||
| `PATH.COM` | NZCOM | NZCOM Set/display command search path | |
|||
| `PUBLIC.COM` | NZCOM | | |
|||
| `PWD.COM` | NZCOM | | |
|||
| `RCP.LBR` | NZCOM | NZCOM Resident command package | |
|||
| `RELEASE.NOT` | NZCOM | | |
|||
| `SAINST.COM` | NZCOM | | |
|||
| `SALIAS.COM` | NZCOM | NZCOM Screen alias | |
|||
| `SAVENDR.COM` | NZCOM | NZCOM Save named directory assignments to a file | |
|||
| `SDZ.COM` | NZCOM | NZCOM Super directory | |
|||
| `SHOW.COM` | NZCOM | NZCOM Show resident commands | |
|||
| `SUB.COM` | NZCOM | | |
|||
| `SUBMIT.COM` | -- | DRI batch processor | |
|||
| `TCAP.LBR` | NZCOM | NZCOM Terminal capability descriptor library | |
|||
| `TCJ.INF` | NZCOM | | |
|||
| `TCJ25.WZ` | NZCOM | | |
|||
| `TCJ26.WZ` | NZCOM | | |
|||
| `TCJ27.WZ` | NZCOM | | |
|||
| `TCJ28.WZ` | NZCOM | | |
|||
| `TCJ29.WZ` | NZCOM | | |
|||
| `TCJ30.WZ` | NZCOM | | |
|||
| `TCJ31UPD.WZ` | NZCOM | | |
|||
| `TCJ32.WZ` | NZCOM | | |
|||
| `TCJ33UPD.WZ` | NZCOM | | |
|||
| `TCSELECT.COM` | NZCOM | NZCOM Create terminal capability file | |
|||
| `TY3ERA.COM` | NZCOM | NZCOM Type-3 transient program to erase a file | |
|||
| `TY3REN.COM` | NZCOM | NZCOM Type-3 transient program to rename a file | |
|||
| `TY4ERA.COM` | NZCOM | NZCOM Type-4 transient program to erase a file | |
|||
| `TY4REN.COM` | NZCOM | NZCOM Type-4 transient program to rename a file | |
|||
| `TY4SAVE.COM` | NZCOM | NZCOM Type-4 transient program to save memory to a file | |
|||
| `TY4SP.COM` | NZCOM | NZCOM Type-4 transient program ti display disk space | |
|||
| `UNCRUNCH.COM` | NZCOM | NZCOM Text decompressor | |
|||
| `VIEW.COM` | NZCOM | | |
|||
| `XTCAP.COM` | NZCOM | | |
|||
| `Z3LOC.COM` | NZCOM | NZCOM Display the addresses of the ZCPR3 CCP, BDOS, and BIOS | |
|||
| `Z3TCAP.TCP` | NZCOM | NZCOM Database of terminal descriptors | |
|||
| `ZCNFG.COM` | NZCOM | ZSDOS Configure various utilities | |
|||
| `ZERR.COM` | NZCOM | | |
|||
| `ZEX.COM` | NZCOM | NZCOM Memory-based batch processor | |
|||
| `ZF-DIM.COM` | NZCOM | NZCOM ZFILER shell for dim-video terminals | |
|||
| `ZF-REV.COM` | NZCOM | NZCOM ZFILER shell for reverse-video terminals | |
|||
| `ZFILEB38.LZT` | NZCOM | | |
|||
| `ZFILER.CMD` | NZCOM | NZCOM Macro script file for ZFILER | |
|||
| `ZHELPERS.LZT` | NZCOM | | |
|||
| `ZLT.COM` | NZCOM | | |
|||
| `ZNODES66.LZT` | NZCOM | | |
|||
| `ZSDOS.ZRL` | NZCOM | | |
|||
| `ZSYSTEM.IZF` | NZCOM | | |
|||
| `ASSIGN.COM` | RomWBW | RomWBW Drive/Slice mapper | |
|||
| `FAT.COM` | RomWBW | RomWBW FAT filesystem access | |
|||
| `FDU.COM` | RomWBW | RomWBW Floppy Disk Utility | |
|||
| `FORMAT.COM` | RomWBW | RomWBW media formatter (placeholder) | |
|||
| `INTTEST.COM` | RomWBW | RomWBW Interrupt test | |
|||
| `MODE.COM` | RomWBW | RomWBW Modify serial port characteristics | |
|||
| `RTC.COM` | RomWBW | RomWBW Display and set RTC | |
|||
| `SURVEY.COM` | RomWBW | System survey | |
|||
| `SYSCOPY.COM` | RomWBW | RomWBW Read/write system boot image | |
|||
| `SYSGEN.COM` | RomWBW | DRI CPM SYSGEN to put CPM onto a new drive | |
|||
| `TALK.COM` | RomWBW | RomWBW Direct console I/O to a serial port | |
|||
| `TIMER.COM` | RomWBW | RomWBW Display timer tick counter | |
|||
| `TUNE.COM` | RomWBW | RomWBW Play PT or MYM sound files | |
|||
| `XM.COM` | RomWBW | RomWBW XMODEM file transfer | |
|||
| `CPM.SYS` | RomWBW | | |
|||
| `ZSYS.SYS` | RomWBW | | |
|||
| `CLRDIR.COM` | -- | Max Scane's disk directory cleaner | |
|||
| `COMPARE.COM` | -- | FoxHollow compare two files | |
|||
| `DDTZ.COM` | -- | Z80 replacement for DDT | |
|||
| `FDISK80.COM` | -- | John Coffman's Partition editor for FAT filesystem | |
|||
| `FLASH.COM` | -- | Will Sowerbutts' in-situ EEPROM programmer | |
|||
| `NULU.COM` | -- | NZCOM new library utility | |
|||
| `UNARC.COM` | -- | Extractor for ARC archives | |
|||
| `ZAP.COM` | -- | Disk editor/patcher | |
|||
| `ZDE.COM` | -- | Z-system display editor | |
|||
| `ZDENST.COM` | -- | ZDE Installer | |
|||
|
|||
| **User 3** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ATTACK.PT3` | -- | Sound File | |
|||
| `BACKUP.PT3` | -- | Sound File | |
|||
| `BADMICE.PT3` | -- | Sound File | |
|||
| `DEMO.MYM` | -- | Sound File | |
|||
| `DEMO1.MYM` | -- | Sound File | |
|||
| `DEMO3.MYM` | -- | Sound File | |
|||
| `DEMO3MIX.MYM` | -- | Sound File | |
|||
| `DEMO4.MYM` | -- | Sound File | |
|||
| `HOWRU.PT3` | -- | Sound File | |
|||
| `ITERATN.PT3` | -- | Sound File | |
|||
| `LOOKBACK.PT3` | -- | Sound File | |
|||
| `LOUBOUTN.PT3` | -- | Sound File | |
|||
| `NAMIDA.PT3` | -- | Sound File | |
|||
| `RECOLL.PT3` | -- | Sound File | |
|||
| `SANXION.PT3` | -- | Sound File | |
|||
| `SYNCH.PT3` | -- | Sound File | |
|||
| `TOSTAR.PT3` | -- | Sound File | |
|||
| `VICTORY.PT3` | -- | Sound File | |
|||
| `WICKED.PT3` | -- | Sound File | |
|||
| `YEOLDE.PT3` | -- | Sound File | |
|||
| `YEOVIL.PT3` | -- | Sound File | |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# CP/M 3 Boot Disk |
|||
|
|||
| Floppy Disk Image: **fd_cpm3.img** |
|||
| Hard Disk Image: **hd_cpm3.img** |
|||
| Combo Disk Image: **Slice 3** |
|||
|
|||
| **User 0** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `DATE.COM` | CPM3 | DRI CPM+ Set or display the date and time | |
|||
| `DEVICE.COM` | CPM3 | DRI CPM+ Assign logical devices with one or more physical devices | |
|||
| `DIR.COM` | CPM3 | DRI CPM+ DIR with options | |
|||
| `DUMP.COM` | CPM3 | DRI type contents of disk file in hex | |
|||
| `ED.COM` | CPM3 | DRI context editor | |
|||
| `ERASE.COM` | CPM3 | DRI file deletion | |
|||
| `GENCOM.COM` | CPM3 | DRI CPM+ Generate special COM file with attached RSX files | |
|||
| `GET.COM` | CPM3 | DRI CPM+ Temporarily get console input form a disk file | |
|||
| `HELP.COM` | CPM3 | DRI CPM+ Display information on how to use commands | |
|||
| `HELP.HLP` | CPM3 | DRI CPM+ Databse of help information for HELP.COM | |
|||
| `HEXCOM.CPM` | CPM3 | DRI CPM+ Create a COM file from a nex file output by MAC | |
|||
| `INITDIR.COM` | CPM3 | DRI CPM+ Initializes a disk to allow time and date stamping | |
|||
| `KERMIT.COM` | -- | Generic CP/M 3 Kermit communication application | |
|||
| `PATCH.COM` | CPM3 | DRI CPM+ Display or install patch to the CPM+ system or command files | |
|||
| `PIP.COM` | CPM3 | DRI Periperal Interchange Program | |
|||
| `PUT.COM` | CPM3 | DIR CPM+ Temporarily redirect printer or console output to a disk file | |
|||
| `RENAME.COM` | CPM3 | DRI CPM+ Rename a file | |
|||
| `ROMWBW.TXT` | RomWBW | | |
|||
| `SAVE.COM` | CPM3 | DRI CPM+ Copy the contents of memory to a file | |
|||
| `SET.COM` | CPM3 | DIR CPM+ Set file options | |
|||
| `SETDEF.COM` | CPM3 | DIR CPM+ Set system options including the drive search chain | |
|||
| `SHOW.COM` | CPM3 | DIR CPM+ Display disk and drive statistics | |
|||
| `SUBMIT.COM` | CPM3 | DRI batch processor | |
|||
| `TYPE.COM` | CPM3 | DIR CPM+ Display the contents of an ASCII character file | |
|||
| `ZSID.COM` | CPM3 | DRI Z80 symbolic instruction debugger | |
|||
| `CPMLDR.COM` | RomWBW | DRI CPM 3.0 loader | |
|||
| `CPMLDR.SYS` | RomWBW | DRI CPM 3.0 loader | |
|||
| `CCP.COM` | CPM3 | DRI CPM+ Console Command Processor | |
|||
| `GENCPM.COM` | CPM3 | DRI CPM+ Create a memory image of CPM3.SYS | |
|||
| `GENRES.DAT` | RomWBW | | |
|||
| `GENBNK.DAT` | RomWBW | | |
|||
| `BIOS3.SPR` | RomWBW | DRI CPM+ GENCPM input file for non-banked BIOS | |
|||
| `BNKBIOS3.SPR` | RomWBW | DRI CPM+ GENCPM input file for banked BIOS | |
|||
| `BDOS3.SPR` | CPM3 | DRI CPM+ GENCPM input file for the non-banked BDOS | |
|||
| `BNKBDOS3.SPR` | CPM3 | DRI CPM+ GENCPM input file for banked BDOS | |
|||
| `RESBDOS3.SPR` | CPM3 | DRI CPM+ GENCPM input file for resident BDOS | |
|||
| `CPM3RES.SYS` | RomWBW | DRI CPM+ (non-banked) memory image | |
|||
| `CPM3BNK.SYS` | RomWBW | DRI CPM+ (banked) memory image | |
|||
| `GENCPM.DAT` | RomWBW | DRI CPM+ System generation tool data file | |
|||
| `CPM3.SYS` | RomWBW | DRI CPM+ (non-banked) memory image | |
|||
| `README.1ST` | CPM3 | | |
|||
| `CPM3FIX.PAT` | CPM3 | | |
|||
| `ASSIGN.COM` | RomWBW | RomWBW Drive/Slice mapper | |
|||
| `FAT.COM` | RomWBW | RomWBW FAT filesystem access | |
|||
| `FDU.COM` | RomWBW | RomWBW Floppy Disk Utility | |
|||
| `FORMAT.COM` | RomWBW | RomWBW media formatter (placeholder) | |
|||
| `INTTEST.COM` | RomWBW | RomWBW Interrupt test | |
|||
| `MODE.COM` | RomWBW | RomWBW Modify serial port characteristics | |
|||
| `RTC.COM` | RomWBW | RomWBW Display and set RTC | |
|||
| `SURVEY.COM` | RomWBW | System survey | |
|||
| `SYSCOPY.COM` | RomWBW | RomWBW Read/write system boot image | |
|||
| `SYSGEN.COM` | RomWBW | DRI CPM SYSGEN to put CPM onto a new drive | |
|||
| `TALK.COM` | RomWBW | RomWBW Direct console I/O to a serial port | |
|||
| `TIMER.COM` | RomWBW | RomWBW Display timer tick counter | |
|||
| `TUNE.COM` | RomWBW | RomWBW Play PT or MYM sound files | |
|||
| `XM.COM` | RomWBW | RomWBW XMODEM file transfer | |
|||
| `CLRDIR.COM` | -- | Max Scane's disk directory cleaner | |
|||
| `COMPARE.COM` | -- | FoxHollow compare two files | |
|||
| `DDTZ.COM` | -- | Z80 replacement for DDT | |
|||
| `FDISK80.COM` | -- | John Coffman's Partition editor for FAT filesystem | |
|||
| `FLASH.COM` | -- | Will Sowerbutts' in-situ EEPROM programmer | |
|||
| `NULU.COM` | -- | NZCOM new library utility | |
|||
| `UNARC.COM` | -- | Extractor for ARC archives | |
|||
| `ZAP.COM` | -- | Disk editor/patcher | |
|||
| `ZDE.COM` | -- | Z-system display editor | |
|||
| `ZDENST.COM` | -- | ZDE Installer | |
|||
|
|||
| **User 3** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ATTACK.PT3` | -- | Sound File | |
|||
| `BACKUP.PT3` | -- | Sound File | |
|||
| `BADMICE.PT3` | -- | Sound File | |
|||
| `DEMO.MYM` | -- | Sound File | |
|||
| `DEMO1.MYM` | -- | Sound File | |
|||
| `DEMO3.MYM` | -- | Sound File | |
|||
| `DEMO3MIX.MYM` | -- | Sound File | |
|||
| `DEMO4.MYM` | -- | Sound File | |
|||
| `HOWRU.PT3` | -- | Sound File | |
|||
| `ITERATN.PT3` | -- | Sound File | |
|||
| `LOOKBACK.PT3` | -- | Sound File | |
|||
| `LOUBOUTN.PT3` | -- | Sound File | |
|||
| `NAMIDA.PT3` | -- | Sound File | |
|||
| `RECOLL.PT3` | -- | Sound File | |
|||
| `SANXION.PT3` | -- | Sound File | |
|||
| `SYNCH.PT3` | -- | Sound File | |
|||
| `TOSTAR.PT3` | -- | Sound File | |
|||
| `VICTORY.PT3` | -- | Sound File | |
|||
| `WICKED.PT3` | -- | Sound File | |
|||
| `YEOLDE.PT3` | -- | Sound File | |
|||
| `YEOVIL.PT3` | -- | Sound File | |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# ZPM3 Boot Disk |
|||
|
|||
| Floppy Disk Image: **fd_zpm3.img** |
|||
| Hard Disk Image: **hd_zpm3.img** |
|||
| Combo Disk Image: **Slice 4** |
|||
|
|||
| **User 0** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `HELP.HLP` | ZPM3 | | |
|||
| `ROMWBW.TXT` | RomWBW | | |
|||
| `ZPMLDR.COM` | RomWBW | | |
|||
| `ZPMLDR.SYS` | RomWBW | | |
|||
| `CPMLDR.COM` | RomWBW | | |
|||
| `CPMLDR.SYS` | RomWBW | | |
|||
| `CPM3.SYS` | RomWBW | | |
|||
| `ZCCP.COM` | ZPM3 | | |
|||
| `ZINSTAL.ZPM` | ZPM3 | | |
|||
| `STARTZPM.COM` | ZPM3 | | |
|||
| `MAKEDOS.COM` | ZPM3 | | |
|||
| `GENCPM.DAT` | RomWBW | | |
|||
| `BNKBIOS3.SPR` | RomWBW | | |
|||
| `BNKBDOS3.SPR` | ZPM3 | | |
|||
| `RESBDOS3.SPR` | ZPM3 | | |
|||
|
|||
| **User 3** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ATTACK.PT3` | -- | Sound File | |
|||
| `BACKUP.PT3` | -- | Sound File | |
|||
| `BADMICE.PT3` | -- | Sound File | |
|||
| `DEMO.MYM` | -- | Sound File | |
|||
| `DEMO1.MYM` | -- | Sound File | |
|||
| `DEMO3.MYM` | -- | Sound File | |
|||
| `DEMO3MIX.MYM` | -- | Sound File | |
|||
| `DEMO4.MYM` | -- | Sound File | |
|||
| `HOWRU.PT3` | -- | Sound File | |
|||
| `ITERATN.PT3` | -- | Sound File | |
|||
| `LOOKBACK.PT3` | -- | Sound File | |
|||
| `LOUBOUTN.PT3` | -- | Sound File | |
|||
| `NAMIDA.PT3` | -- | Sound File | |
|||
| `RECOLL.PT3` | -- | Sound File | |
|||
| `SANXION.PT3` | -- | Sound File | |
|||
| `SYNCH.PT3` | -- | Sound File | |
|||
| `TOSTAR.PT3` | -- | Sound File | |
|||
| `VICTORY.PT3` | -- | Sound File | |
|||
| `WICKED.PT3` | -- | Sound File | |
|||
| `YEOLDE.PT3` | -- | Sound File | |
|||
| `YEOVIL.PT3` | -- | Sound File | |
|||
|
|||
| **User 10** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ALIAS.HLP` | -- | | |
|||
| `HP-RPN.HLP` | -- | | |
|||
| `HP-ZP.HLP` | -- | | |
|||
| `IF.HLP` | -- | | |
|||
| `MENU.HLP` | -- | | |
|||
| `VLU.HLP` | -- | | |
|||
| `ZFHIST.HLP` | -- | | |
|||
| `ZFILER.HLP` | -- | | |
|||
| `ZFMACRO.HLP` | -- | | |
|||
| `ZP.HLP` | -- | | |
|||
|
|||
| **User 14** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `COPY.CFG` | -- | | |
|||
| `ERASE.CFG` | -- | | |
|||
| `HELPC15.CFG` | -- | | |
|||
| `ZCNFG24.CFG` | -- | | |
|||
| `ZEX.CFG` | -- | | |
|||
| `ZF11.CFG` | -- | | |
|||
| `ZP17.CFG` | -- | | |
|||
|
|||
| **User 15** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ALIAS.COM` | -- | | |
|||
| `ARUNZ.COM` | -- | | |
|||
| `COPY.COM` | -- | | |
|||
| `DATE.COM` | CPM3 | | |
|||
| `DEV.COM` | -- | | |
|||
| `DEVICE.COM` | CPM3 | | |
|||
| `DIR.COM` | CPM3 | | |
|||
| `DISKINFO.COM` | -- | | |
|||
| `DU.COM` | -- | | |
|||
| `DUMP.COM` | CPM3 | | |
|||
| `ED.COM` | CPM3 | | |
|||
| `ERASE.COM` | CPM3 | | |
|||
| `GENCOM.COM` | CPM3 | | |
|||
| `GENCPM.COM` | CPM3 | | |
|||
| `GET.COM` | CPM3 | | |
|||
| `GOTO.COM` | -- | | |
|||
| `HELP.COM` | CPM3 | | |
|||
| `HEXCOM.COM` | CPM3 | | |
|||
| `IF.COM` | -- | | |
|||
| `INITDIR.COM` | CPM3 | | |
|||
| `KERMIT.COM` | CPM3 | | |
|||
| `LBREXT.COM` | -- | | |
|||
| `LIB.COM` | -- | | |
|||
| `LINK.COM` | -- | | |
|||
| `LOADSEG.COM` | -- | | |
|||
| `MAC.COM` | -- | | |
|||
| `MBASIC.COM` | -- | | |
|||
| `NAMES.NDR` | -- | | |
|||
| `PATCH.COM` | CPM3 | | |
|||
| `PIP.COM` | CPM3 | | |
|||
| `PUT.COM` | CPM3 | | |
|||
| `REMOVE.COM` | -- | | |
|||
| `RENAME.COM` | CPM3 | | |
|||
| `RMAC.COM` | -- | | |
|||
| `RSXDIR.COM` | -- | | |
|||
| `SAINST.COM` | -- | | |
|||
| `SALIAS.COM` | -- | | |
|||
| `SAVE.COM` | CPM3 | | |
|||
| `SET.COM` | CPM3 | | |
|||
| `SETDEF.COM` | CPM3 | | |
|||
| `SETPATH.COM` | -- | | |
|||
| `SHOW.COM` | CPM3 | | |
|||
| `SUBMIT.COM` | CPM3 | | |
|||
| `TCAP.Z3T` | -- | | |
|||
| `TYPE.COM` | CPM3 | | |
|||
| `VERROR.COM` | -- | | |
|||
| `VLU.COM` | -- | | |
|||
| `XREF.COM` | -- | | |
|||
| `ZCNFG.COM` | -- | | |
|||
| `ZERASE.COM` | -- | | |
|||
| `ZEX.COM` | -- | | |
|||
| `ZFILER.COM` | -- | | |
|||
| `ZHELP.COM` | -- | | |
|||
| `ZP.COM` | -- | | |
|||
| `ZSHOW.COM` | -- | | |
|||
| `ZSID.COM` | -- | | |
|||
| `ZXD.COM` | -- | | |
|||
| `AUTOTOG.COM` | ZPM3 | | |
|||
| `CLRHIST.COM` | ZPM3 | | |
|||
| `SETZ3.COM` | ZPM3 | | |
|||
| `ASSIGN.COM` | RomWBW | | |
|||
| `FAT.COM` | RomWBW | | |
|||
| `FDU.COM` | RomWBW | | |
|||
| `FORMAT.COM` | RomWBW | | |
|||
| `INTTEST.COM` | RomWBW | | |
|||
| `MODE.COM` | RomWBW | | |
|||
| `RTC.COM` | RomWBW | | |
|||
| `SURVEY.COM` | RomWBW | | |
|||
| `SYSCOPY.COM` | RomWBW | | |
|||
| `SYSGEN.COM` | RomWBW | | |
|||
| `TALK.COM` | RomWBW | | |
|||
| `TIMER.COM` | RomWBW | | |
|||
| `TUNE.COM` | RomWBW | | |
|||
| `XM.COM` | RomWBW | | |
|||
| `CLRDIR.COM` | -- | | |
|||
| `COMP.COM` | -- | | |
|||
| `DDTZ.COM` | -- | | |
|||
| `FDISK80.COM` | -- | | |
|||
| `FLASH.COM` | -- | | |
|||
| `NULU.COM` | -- | | |
|||
| `UNARC.COM` | -- | | |
|||
| `ZAP.COM` | -- | | |
|||
| `ZDE.COM` | -- | | |
|||
| `ZDENST.COM` | -- | | |
|||
|
|||
`\clearpage`{=latex} |
|||
|
|||
# WordStar 4 Application Disk |
|||
|
|||
| Floppy Disk Image: **fd_ws4.img** |
|||
| Hard Disk Image: **hd_ws4.img** |
|||
| Combo Disk Image: **Slice 5** |
|||
|
|||
| **User 0** | **Source** | **Description** | |
|||
| -------------- | ---------- | ------------------------------------------------------------ | |
|||
| `ANAGRAM.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `CHAPTER1.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `CHAPTER2.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `CHAPTER3.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `DIARY.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `DICTSORT.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `FIND.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `HOMONYMS.TXT` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `HYEXCEPT.TXT` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `HYPHEN.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `LOOKUP.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `MAINDICT.CMP` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `MARKFIX.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `MOVEPRN.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `PATCH.LST` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `PRINT.TST` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `READ.ME` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `README.` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `REVIEW.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `RULER.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `SAMPLE1.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `SAMPLE2.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `SAMPLE3.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `SPELL.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `TABLE.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `TEXT.DOC` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `TW.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WC.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WINSTALL.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WORDFREQ.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WS.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WS.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSCHANGE.COM` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSCHANGE.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSCHHELP.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSHELP.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSINDEX.XCL` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSMSGS.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSPRINT.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
| `WSSHORT.OVR` | WS4 | MicroPro WordStar 4 Distribution File | |
|||
@ -0,0 +1,26 @@ |
|||
#IF AUDIOTRACE |
|||
#DEFINE AUDTRACE(STR) PUSH DE \ LD DE, STR \ CALL WRITESTR \ POP DE |
|||
#DEFINE AUDTRACE_A CALL PRTHEXBYTE |
|||
#DEFINE AUDTRACE_B PUSH AF \ LD A, B \ CALL PRTHEXBYTE \ POP AF |
|||
#DEFINE AUDTRACE_D PUSH AF \ LD A, D \ CALL PRTHEXBYTE \ POP AF |
|||
#DEFINE AUDTRACE_E PUSH AF \ LD A, E \ CALL PRTHEXBYTE \ POP AF |
|||
#DEFINE AUDTRACE_L PUSH AF \ LD A, L \ CALL PRTHEXBYTE \ POP AF |
|||
#DEFINE AUDTRACE_HL CALL PRTHEXWORDHL |
|||
#DEFINE AUDTRACE_DE PUSH DE \ PUSH DE \ POP HL \ CALL PRTHEXWORDHL \ POP DE |
|||
#DEFINE AUDTRACE_IY PUSH HL \ PUSH IY \ POP HL \ CALL PRTHEXWORDHL \ POP HL |
|||
|
|||
#DEFINE AUDDEBUG(S) CALL PRTSTRD \ .TEXT S \ .TEXT "$" ; $$$$$$ PRINT STRING S TO CONSOLE - PRTD("HELLO") - NO TRAILING $ REQUIRED |
|||
|
|||
#ELSE |
|||
#DEFINE AUDTRACE(S) |
|||
#DEFINE AUDTRACE_A |
|||
#DEFINE AUDTRACE_B |
|||
#DEFINE AUDTRACE_D |
|||
#DEFINE AUDTRACE_E |
|||
#DEFINE AUDTRACE_L |
|||
#DEFINE AUDTRACE_HL |
|||
#DEFINE AUDTRACE_DE |
|||
#DEFINE AUDTRACE_IY |
|||
|
|||
#DEFINE AUDDEBUG(STR) |
|||
#ENDIF |
|||
@ -0,0 +1,588 @@ |
|||
;====================================================================== |
|||
; SN76489 sound driver |
|||
; |
|||
; WRITTEN BY: DEAN NETHERTON |
|||
;====================================================================== |
|||
; |
|||
; TODO: |
|||
; |
|||
;====================================================================== |
|||
; CONSTANTS |
|||
;====================================================================== |
|||
; |
|||
|
|||
SN76489_PORT_LEFT .EQU $FC ; PORTS FOR ACCESSING THE SN76489 CHIP (LEFT) |
|||
SN76489_PORT_RIGHT .EQU $F8 ; 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 |
|||
SN7_CHCNT .EQU SN7_TONECNT + SN7_NOISECNT |
|||
CHANNEL_0_SILENT .EQU $9F |
|||
CHANNEL_1_SILENT .EQU $BF |
|||
CHANNEL_2_SILENT .EQU $DF |
|||
CHANNEL_3_SILENT .EQU $FF |
|||
|
|||
SN7CLKDIVIDER .EQU 4 |
|||
SN7CLK .EQU CPUOSC / SN7CLKDIVIDER |
|||
SN7RATIO .EQU SN7CLK * 100 / 32 |
|||
|
|||
|
|||
SN7_FIRST_NOTE .EQU 5827 ; A1# |
|||
SN7_LAST_NOTE .EQU 209300 ; C7 |
|||
|
|||
A1S .EQU SN7RATIO / SN7_FIRST_NOTE |
|||
C7 .EQU SN7RATIO / SN7_LAST_NOTE |
|||
|
|||
.ECHO "SN76489: range of A1# (pitch: " |
|||
.ECHO A1S |
|||
.ECHO ") to C7 (pitch: " |
|||
.ECHO C7 |
|||
.ECHO ")\n" |
|||
|
|||
#INCLUDE "audio.inc" |
|||
|
|||
SN76489_INIT: |
|||
LD IY, SN7_IDAT ; POINTER TO INSTANCE DATA |
|||
|
|||
LD DE,STR_MESSAGELT |
|||
CALL WRITESTR |
|||
LD A, SN76489_PORT_LEFT |
|||
CALL PRTHEXBYTE |
|||
|
|||
LD DE,STR_MESSAGERT |
|||
CALL WRITESTR |
|||
LD A, SN76489_PORT_RIGHT |
|||
CALL PRTHEXBYTE |
|||
; |
|||
SN7_INIT1: |
|||
LD BC, SN7_FNTBL ; BC := FUNCTION TABLE ADDRESS |
|||
LD DE, SN7_IDAT ; DE := SN7 INSTANCE DATA PTR |
|||
CALL SND_ADDENT ; ADD ENTRY, A := UNIT ASSIGNED |
|||
|
|||
CALL SN7_VOLUME_OFF |
|||
XOR A ; SIGNAL SUCCESS |
|||
RET |
|||
|
|||
;====================================================================== |
|||
; SN76489 DRIVER - SOUND ADAPTER (SND) FUNCTIONS |
|||
;====================================================================== |
|||
; |
|||
|
|||
SN7_RESET: |
|||
AUDTRACE(TRACE_INIT) |
|||
CALL SN7_VOLUME_OFF |
|||
XOR A ; SIGNAL SUCCESS |
|||
RET |
|||
|
|||
SN7_VOLUME_OFF: |
|||
AUDTRACE(TRACE_VOLUME_OFF) |
|||
|
|||
LD A, CHANNEL_0_SILENT |
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
LD A, CHANNEL_1_SILENT |
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
LD A, CHANNEL_2_SILENT |
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
LD A, CHANNEL_3_SILENT |
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
RET |
|||
|
|||
; BIT MAPPING |
|||
; SET TONE: |
|||
; 1 CC 0 PPPP (LOW) |
|||
; 0 0 PPPPPP (HIGH) |
|||
|
|||
; 1 CC 1 VVVV |
|||
|
|||
SN7_VOLUME: |
|||
AUDDEBUG("SN7VOL ") |
|||
AUDTRACE_L |
|||
AUDDEBUG("\r\n") |
|||
LD A, L |
|||
LD (PENDING_VOLUME), A |
|||
|
|||
XOR A ; SIGNAL SUCCESS |
|||
RET |
|||
|
|||
|
|||
|
|||
SN7_NOTE: |
|||
AUDDEBUG("SN7NOT ") |
|||
AUDTRACE_L |
|||
AUDDEBUG("\r\n") |
|||
|
|||
ADD HL, HL ; SHIFT RIGHT (MULT 2) -INDEX INTO SN7NOTETBL TABLE OF WORDS |
|||
; TEST IF HL IS LARGER THAN SN7NOTETBL SIZE |
|||
OR A ; CLEAR CARRY FLAG |
|||
LD DE, SIZ_SN7NOTETBL |
|||
SBC HL, DE |
|||
JR NC, SN7_NOTE1 ; INCOMING HL DOES NOT MAP INTO SN7NOTETBL |
|||
|
|||
ADD HL, DE ; RESTORE HL |
|||
LD E, L ; HL = SN7NOTETBL + HL |
|||
LD D, H |
|||
LD HL, SN7NOTETBL |
|||
ADD HL, DE |
|||
|
|||
LD A, (HL) ; RETRIEVE PITCH COUNT FROM SN7NOTETBL |
|||
INC HL |
|||
LD H, (HL) |
|||
LD L, A |
|||
|
|||
JR SN7_PITCH ; APPLY PITCH |
|||
|
|||
SN7_NOTE1: |
|||
OR $FF ; NOT IMPLEMENTED YET |
|||
RET |
|||
|
|||
SN7_PITCH: |
|||
AUDDEBUG("SN7PIT ") |
|||
AUDTRACE_HL |
|||
AUDDEBUG("\r\n") |
|||
LD (PENDING_PITCH), HL |
|||
|
|||
XOR A ; SIGNAL SUCCESS |
|||
RET |
|||
|
|||
SN7_PLAY: |
|||
AUDDEBUG("SN7PLY ") |
|||
AUDTRACE_D |
|||
AUDDEBUG("\r\n") |
|||
|
|||
CALL SN7_APPLY_VOL |
|||
CALL SN7_APPLY_PIT |
|||
|
|||
XOR A ; SIGNAL SUCCESS |
|||
RET |
|||
|
|||
SN7_QUERY: |
|||
LD A, E |
|||
CP BF_SNDQ_CHCNT |
|||
JR Z, SN7_QUERY_CHCNT |
|||
|
|||
CP BF_SNDQ_SPITCH |
|||
JR Z, SN7_QUERY_PITCH |
|||
|
|||
CP BF_SNDQ_SVOLUME |
|||
JR Z, SN7_QUERY_VOLUME |
|||
|
|||
OR $FF ; SIGNAL FAILURE |
|||
RET |
|||
|
|||
SN7_QUERY_CHCNT: |
|||
LD B, SN7_TONECNT |
|||
LD C, SN7_NOISECNT |
|||
XOR A |
|||
RET |
|||
|
|||
SN7_QUERY_PITCH: |
|||
LD HL, (PENDING_PITCH) |
|||
|
|||
XOR A |
|||
RET |
|||
|
|||
SN7_QUERY_VOLUME: |
|||
LD A, (PENDING_VOLUME) |
|||
LD L, A |
|||
LD H, 0 |
|||
|
|||
XOR A |
|||
RET |
|||
|
|||
; |
|||
; UTIL FUNCTIONS |
|||
; |
|||
|
|||
SN7_APPLY_VOL: ; APPLY VOLUME TO BOTH LEFT AND RIGHT CHANNELS |
|||
PUSH BC ; D CONTAINS THE CHANNEL NUMBER |
|||
PUSH AF |
|||
LD A, D |
|||
AND $3 |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
OR $90 |
|||
LD B, A |
|||
|
|||
LD A, (PENDING_VOLUME) |
|||
RRCA |
|||
RRCA |
|||
RRCA |
|||
RRCA |
|||
|
|||
AND $0F |
|||
LD C, A |
|||
LD A, $0F |
|||
SUB C |
|||
AND $0F |
|||
OR B ; A CONTAINS COMMAND TO SET VOLUME FOR CHANNEL |
|||
|
|||
AUDTRACE(TRACE_PORT_WR) |
|||
AUDTRACE_A |
|||
AUDTRACE(TRACE_NEWLINE) |
|||
|
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
POP AF |
|||
POP BC |
|||
RET |
|||
|
|||
SN7_APPLY_PIT: |
|||
PUSH DE |
|||
PUSH BC |
|||
PUSH AF |
|||
LD HL, (PENDING_PITCH) |
|||
|
|||
LD A, D |
|||
AND $3 |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
OR $80 |
|||
LD B, A ; PITCH COMMAND 1 - CONTAINS CHANNEL ONLY |
|||
|
|||
LD A, L ; GET LOWER 4 BITS FOR COMMAND 1 |
|||
AND $F |
|||
OR B ; A NOW CONATINS FIRST PITCH COMMAND |
|||
|
|||
AUDTRACE(TRACE_PORT_WR) |
|||
AUDTRACE_A |
|||
AUDTRACE(TRACE_NEWLINE) |
|||
|
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
LD A, L ; RIGHT SHIFT OUT THE LOWER 4 BITS |
|||
RRCA |
|||
RRCA |
|||
RRCA |
|||
RRCA |
|||
AND $F |
|||
LD B, A |
|||
|
|||
LD A, H |
|||
AND $3 |
|||
RLCA |
|||
RLCA |
|||
RLCA |
|||
RLCA ; AND PLACE IN BITS 5 AND 6 |
|||
OR B ; OR THE TWO SETS OF BITS TO MAKE 2ND PITCH COMMAND |
|||
|
|||
AUDTRACE(TRACE_PORT_WR) |
|||
AUDTRACE_A |
|||
AUDTRACE(TRACE_NEWLINE) |
|||
|
|||
OUT (SN76489_PORT_LEFT), A |
|||
OUT (SN76489_PORT_RIGHT), A |
|||
|
|||
POP AF |
|||
POP BC |
|||
POP DE |
|||
RET |
|||
|
|||
|
|||
SN7_FNTBL: |
|||
.DW SN7_RESET |
|||
.DW SN7_VOLUME |
|||
.DW SN7_PITCH |
|||
.DW SN7_NOTE |
|||
.DW SN7_PLAY |
|||
.DW SN7_QUERY |
|||
|
|||
#IF (($ - SN7_FNTBL) != (SND_FNCNT * 2)) |
|||
.ECHO "*** INVALID SND FUNCTION TABLE ***\n" |
|||
!!!!! |
|||
#ENDIF |
|||
|
|||
PENDING_PITCH |
|||
.DW 0 ; PENDING PITCH (10 BITS) |
|||
PENDING_VOLUME |
|||
.DB 0 ; PENDING VOL (8 BITS -> DOWNOVERTED TO 4 BITS AND INVERTED) |
|||
|
|||
STR_MESSAGELT .DB "\r\nSN76489: LEFT IO=0x$" |
|||
STR_MESSAGERT .DB ", RIGHT IO=0x$" |
|||
|
|||
#IF AUDIOTRACE |
|||
TRACE_INIT .DB "\r\nSN7_INIT CALLED\r\n$" |
|||
TRACE_VOLUME_OFF .DB "\r\nSN7_VOLUME_OFF\r\n$" |
|||
TRACE_VOLUME_SET .DB "\r\nSN7_VOLUME_SET CH: $" |
|||
TRACE_PLAY .DB "\r\nPLAY\r\n$" |
|||
TRACE_VOLUME .DB ", VOL: $" |
|||
TRACE_PORT_WR .DB "\r\nOUT SN76489, $" |
|||
TRACE_PITCH_SET .DB "\r\nSN7_PITCH_SET CH: $" |
|||
TRACE_PITCH .DB ", PITCH: $" |
|||
TRACE_NEWLINE .DB "\r\n$" |
|||
#ENDIF |
|||
|
|||
; THE FREQUENCY BY QUATER TONE STARTING AT A1# |
|||
SN7NOTETBL: |
|||
.DW A1S |
|||
.DW SN7RATIO / 5912 |
|||
.DW SN7RATIO / 5998 |
|||
.DW SN7RATIO / 6085 |
|||
.DW SN7RATIO / 6174 |
|||
.DW SN7RATIO / 6264 |
|||
.DW SN7RATIO / 6355 |
|||
.DW SN7RATIO / 6447 |
|||
.DW SN7RATIO / 6541 |
|||
.DW SN7RATIO / 6636 |
|||
.DW SN7RATIO / 6733 |
|||
.DW SN7RATIO / 6831 |
|||
.DW SN7RATIO / 6930 |
|||
.DW SN7RATIO / 7031 |
|||
.DW SN7RATIO / 7133 |
|||
.DW SN7RATIO / 7237 |
|||
.DW SN7RATIO / 7342 |
|||
.DW SN7RATIO / 7449 |
|||
.DW SN7RATIO / 7557 |
|||
.DW SN7RATIO / 7667 |
|||
.DW SN7RATIO / 7778 |
|||
.DW SN7RATIO / 7891 |
|||
.DW SN7RATIO / 8006 |
|||
.DW SN7RATIO / 8122 |
|||
.DW SN7RATIO / 8241 |
|||
.DW SN7RATIO / 8361 |
|||
.DW SN7RATIO / 8482 |
|||
.DW SN7RATIO / 8606 |
|||
.DW SN7RATIO / 8731 |
|||
.DW SN7RATIO / 8858 |
|||
.DW SN7RATIO / 8987 |
|||
.DW SN7RATIO / 9118 |
|||
.DW SN7RATIO / 9250 |
|||
.DW SN7RATIO / 9385 |
|||
.DW SN7RATIO / 9521 |
|||
.DW SN7RATIO / 9660 |
|||
.DW SN7RATIO / 9800 |
|||
.DW SN7RATIO / 9943 |
|||
.DW SN7RATIO / 10087 |
|||
.DW SN7RATIO / 10234 |
|||
.DW SN7RATIO / 10383 |
|||
.DW SN7RATIO / 10534 |
|||
.DW SN7RATIO / 10687 |
|||
.DW SN7RATIO / 10843 |
|||
.DW SN7RATIO / 11000 |
|||
.DW SN7RATIO / 11160 |
|||
.DW SN7RATIO / 11322 |
|||
.DW SN7RATIO / 11487 |
|||
.DW SN7RATIO / 11654 |
|||
.DW SN7RATIO / 11824 |
|||
.DW SN7RATIO / 11995 |
|||
.DW SN7RATIO / 12170 |
|||
.DW SN7RATIO / 12347 |
|||
.DW SN7RATIO / 12527 |
|||
.DW SN7RATIO / 12709 |
|||
.DW SN7RATIO / 12894 |
|||
.DW SN7RATIO / 13081 |
|||
.DW SN7RATIO / 13271 |
|||
.DW SN7RATIO / 13464 |
|||
.DW SN7RATIO / 13660 |
|||
.DW SN7RATIO / 13859 |
|||
.DW SN7RATIO / 14061 |
|||
.DW SN7RATIO / 14265 |
|||
.DW SN7RATIO / 14473 |
|||
.DW SN7RATIO / 14683 |
|||
.DW SN7RATIO / 14897 |
|||
.DW SN7RATIO / 15113 |
|||
.DW SN7RATIO / 15333 |
|||
.DW SN7RATIO / 15556 |
|||
.DW SN7RATIO / 15782 |
|||
.DW SN7RATIO / 16012 |
|||
.DW SN7RATIO / 16245 |
|||
.DW SN7RATIO / 16481 |
|||
.DW SN7RATIO / 16721 |
|||
.DW SN7RATIO / 16964 |
|||
.DW SN7RATIO / 17211 |
|||
.DW SN7RATIO / 17461 |
|||
.DW SN7RATIO / 17715 |
|||
.DW SN7RATIO / 17973 |
|||
.DW SN7RATIO / 18234 |
|||
.DW SN7RATIO / 18500 |
|||
.DW SN7RATIO / 18769 |
|||
.DW SN7RATIO / 19042 |
|||
.DW SN7RATIO / 19319 |
|||
.DW SN7RATIO / 19600 |
|||
.DW SN7RATIO / 19885 |
|||
.DW SN7RATIO / 20174 |
|||
.DW SN7RATIO / 20468 |
|||
.DW SN7RATIO / 20765 |
|||
.DW SN7RATIO / 21067 |
|||
.DW SN7RATIO / 21373 |
|||
.DW SN7RATIO / 21684 |
|||
.DW SN7RATIO / 22000 |
|||
.DW SN7RATIO / 22320 |
|||
.DW SN7RATIO / 22645 |
|||
.DW SN7RATIO / 22974 |
|||
.DW SN7RATIO / 23308 |
|||
.DW SN7RATIO / 23647 |
|||
.DW SN7RATIO / 23991 |
|||
.DW SN7RATIO / 24340 |
|||
.DW SN7RATIO / 24694 |
|||
.DW SN7RATIO / 25053 |
|||
.DW SN7RATIO / 25418 |
|||
.DW SN7RATIO / 25787 |
|||
.DW SN7RATIO / 26163 |
|||
.DW SN7RATIO / 26544 |
|||
.DW SN7RATIO / 26930 |
|||
.DW SN7RATIO / 27321 |
|||
.DW SN7RATIO / 27718 |
|||
.DW SN7RATIO / 28121 |
|||
.DW SN7RATIO / 28530 |
|||
.DW SN7RATIO / 28945 |
|||
.DW SN7RATIO / 29366 |
|||
.DW SN7RATIO / 29793 |
|||
.DW SN7RATIO / 30226 |
|||
.DW SN7RATIO / 30666 |
|||
.DW SN7RATIO / 31113 |
|||
.DW SN7RATIO / 31566 |
|||
.DW SN7RATIO / 32025 |
|||
.DW SN7RATIO / 32490 |
|||
.DW SN7RATIO / 32963 |
|||
.DW SN7RATIO / 33442 |
|||
.DW SN7RATIO / 33929 |
|||
.DW SN7RATIO / 34422 |
|||
.DW SN7RATIO / 34923 |
|||
.DW SN7RATIO / 35431 |
|||
.DW SN7RATIO / 35946 |
|||
.DW SN7RATIO / 36469 |
|||
.DW SN7RATIO / 36999 |
|||
.DW SN7RATIO / 37537 |
|||
.DW SN7RATIO / 38083 |
|||
.DW SN7RATIO / 38637 |
|||
.DW SN7RATIO / 39200 |
|||
.DW SN7RATIO / 39770 |
|||
.DW SN7RATIO / 40349 |
|||
.DW SN7RATIO / 40936 |
|||
.DW SN7RATIO / 41530 |
|||
.DW SN7RATIO / 42134 |
|||
.DW SN7RATIO / 42747 |
|||
.DW SN7RATIO / 43369 |
|||
.DW SN7RATIO / 44000 |
|||
.DW SN7RATIO / 44640 |
|||
.DW SN7RATIO / 45289 |
|||
.DW SN7RATIO / 45948 |
|||
.DW SN7RATIO / 46616 |
|||
.DW SN7RATIO / 47294 |
|||
.DW SN7RATIO / 47982 |
|||
.DW SN7RATIO / 48680 |
|||
.DW SN7RATIO / 49388 |
|||
.DW SN7RATIO / 50106 |
|||
.DW SN7RATIO / 50835 |
|||
.DW SN7RATIO / 51575 |
|||
.DW SN7RATIO / 52325 |
|||
.DW SN7RATIO / 53086 |
|||
.DW SN7RATIO / 53858 |
|||
.DW SN7RATIO / 54642 |
|||
.DW SN7RATIO / 55437 |
|||
.DW SN7RATIO / 56243 |
|||
.DW SN7RATIO / 57061 |
|||
.DW SN7RATIO / 57891 |
|||
.DW SN7RATIO / 58733 |
|||
.DW SN7RATIO / 59587 |
|||
.DW SN7RATIO / 60454 |
|||
.DW SN7RATIO / 61333 |
|||
.DW SN7RATIO / 62225 |
|||
.DW SN7RATIO / 63130 |
|||
.DW SN7RATIO / 64048 |
|||
.DW SN7RATIO / 64980 |
|||
.DW SN7RATIO / 65925 |
|||
.DW SN7RATIO / 66884 |
|||
.DW SN7RATIO / 67857 |
|||
.DW SN7RATIO / 68844 |
|||
.DW SN7RATIO / 69846 |
|||
.DW SN7RATIO / 70862 |
|||
.DW SN7RATIO / 71893 |
|||
.DW SN7RATIO / 72938 |
|||
.DW SN7RATIO / 73999 |
|||
.DW SN7RATIO / 75075 |
|||
.DW SN7RATIO / 76167 |
|||
.DW SN7RATIO / 77275 |
|||
.DW SN7RATIO / 78399 |
|||
.DW SN7RATIO / 79539 |
|||
.DW SN7RATIO / 80696 |
|||
.DW SN7RATIO / 81870 |
|||
.DW SN7RATIO / 83061 |
|||
.DW SN7RATIO / 84269 |
|||
.DW SN7RATIO / 85495 |
|||
.DW SN7RATIO / 86738 |
|||
.DW SN7RATIO / 88000 |
|||
.DW SN7RATIO / 89280 |
|||
.DW SN7RATIO / 90579 |
|||
.DW SN7RATIO / 91896 |
|||
.DW SN7RATIO / 93233 |
|||
.DW SN7RATIO / 94589 |
|||
.DW SN7RATIO / 95965 |
|||
.DW SN7RATIO / 97361 |
|||
.DW SN7RATIO / 98777 |
|||
.DW SN7RATIO / 100214 |
|||
.DW SN7RATIO / 101671 |
|||
.DW SN7RATIO / 103150 |
|||
.DW SN7RATIO / 104650 |
|||
.DW SN7RATIO / 106172 |
|||
.DW SN7RATIO / 107716 |
|||
.DW SN7RATIO / 109283 |
|||
.DW SN7RATIO / 110873 |
|||
.DW SN7RATIO / 112486 |
|||
.DW SN7RATIO / 114122 |
|||
.DW SN7RATIO / 115782 |
|||
.DW SN7RATIO / 117466 |
|||
.DW SN7RATIO / 119175 |
|||
.DW SN7RATIO / 120908 |
|||
.DW SN7RATIO / 122667 |
|||
.DW SN7RATIO / 124451 |
|||
.DW SN7RATIO / 126261 |
|||
.DW SN7RATIO / 128098 |
|||
.DW SN7RATIO / 129961 |
|||
.DW SN7RATIO / 131851 |
|||
.DW SN7RATIO / 133769 |
|||
.DW SN7RATIO / 135715 |
|||
.DW SN7RATIO / 137689 |
|||
.DW SN7RATIO / 139691 |
|||
.DW SN7RATIO / 141723 |
|||
.DW SN7RATIO / 143784 |
|||
.DW SN7RATIO / 145876 |
|||
.DW SN7RATIO / 147998 |
|||
.DW SN7RATIO / 150151 |
|||
.DW SN7RATIO / 152335 |
|||
.DW SN7RATIO / 154550 |
|||
.DW SN7RATIO / 156798 |
|||
.DW SN7RATIO / 159079 |
|||
.DW SN7RATIO / 161393 |
|||
.DW SN7RATIO / 163740 |
|||
.DW SN7RATIO / 166122 |
|||
.DW SN7RATIO / 168538 |
|||
.DW SN7RATIO / 170990 |
|||
.DW SN7RATIO / 173477 |
|||
.DW SN7RATIO / 176000 |
|||
.DW SN7RATIO / 178560 |
|||
.DW SN7RATIO / 181157 |
|||
.DW SN7RATIO / 183792 |
|||
.DW SN7RATIO / 186466 |
|||
.DW SN7RATIO / 189178 |
|||
.DW SN7RATIO / 191930 |
|||
.DW SN7RATIO / 194722 |
|||
.DW SN7RATIO / 197553 |
|||
.DW SN7RATIO / 200426 |
|||
.DW SN7RATIO / 203342 |
|||
.DW SN7RATIO / 206299 |
|||
.DW C7 |
|||
|
|||
SIZ_SN7NOTETBL .EQU $ - SN7NOTETBL |
|||
.ECHO "SN76489 approx " |
|||
.ECHO SIZ_SN7NOTETBL / 2 / 4 /12 |
|||
.ECHO " Octaves. Last note index supported: " |
|||
|
|||
.ECHO SIZ_SN7NOTETBL / 2 |
|||
.ECHO "\n" |
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue