Browse Source

Add Peter Onion's ZDE ANSI Keyboard Support

- Added new ANSI keyboard support from Peter Onion.
- ZDE is now built as part of the RomWBW build itself.
- Did not yet include support for modified ZDE escape character.
- See <https://groups.google.com/g/rc2014-z80/c/hAZen3pZb7o>

Co-Authored-By: PeterOGB <7755057+peterogb@users.noreply.github.com>
pull/517/head
Wayne Warthen 10 months ago
parent
commit
a91deeb347
No known key found for this signature in database GPG Key ID: 8B34ED29C07EEB0A
  1. 1
      Binary/Apps/Clean.cmd
  2. 2
      Binary/Apps/Makefile
  3. 4
      Binary/Apps/ZDE/Clean.cmd
  4. 6
      Binary/Apps/ZDE/Makefile
  5. 10
      Binary/Apps/ZDE/ReadMe.txt
  6. 1
      Source/Apps/Build.cmd
  7. 1
      Source/Apps/Clean.cmd
  8. 2
      Source/Apps/Makefile
  9. 35
      Source/Apps/ZDE/Build.cmd
  10. 9
      Source/Apps/ZDE/Clean.cmd
  11. 15
      Source/Apps/ZDE/Makefile
  12. 36
      Source/Apps/ZDE/ReadMe.md
  13. 8111
      Source/Apps/ZDE/zde16.z80
  14. 102
      Source/Apps/ZDE/zde16a.pat
  15. 8111
      Source/Apps/ZDE/zde17.z80
  16. 8567
      Source/Apps/ZDE/zde18.z80
  17. 8598
      Source/Apps/ZDE/zde19.z80
  18. BIN
      Source/Images/Common/All/u15/ZDE.COM
  19. 7
      Source/Images/d_ws4/u1/ReadMe.md
  20. BIN
      Source/Images/d_ws4/u1/ZDE16.COM
  21. BIN
      Source/Images/d_ws4/u1/ZDE16A.COM
  22. BIN
      Source/Images/d_ws4/u1/ZDE18.COM
  23. 4
      Source/Images/fd_ws4.txt
  24. 4
      Source/Images/hd_ws4.txt
  25. BIN
      Source/RomDsk/ROM_256KB/ZDE.COM
  26. BIN
      Source/RomDsk/ROM_384KB/ZDE.COM
  27. BIN
      Source/RomDsk/ROM_896KB/ZDE.COM

1
Binary/Apps/Clean.cmd

@ -11,3 +11,4 @@ if exist Tunes\*.vgm del Tunes\*.vgm
if exist bbcbasic.txt del bbcbasic.txt
pushd Test && call Clean || exit /b 1 & popd
pushd ZDE && call Clean || exit /b 1 & popd

2
Binary/Apps/Makefile

@ -1,6 +1,6 @@
TOOLS = ../../Tools
MOREDIFF := $(shell $(TOOLS)/unix/casefn.sh *.com)
SUBDIRS = Test
SUBDIRS = Test ZDE
include $(TOOLS)/Makefile.inc

4
Binary/Apps/ZDE/Clean.cmd

@ -0,0 +1,4 @@
@echo off
setlocal
if exist *.com del *.com

6
Binary/Apps/ZDE/Makefile

@ -0,0 +1,6 @@
TOOLS = ../../../Tools
include $(TOOLS)/Makefile.inc
clean::
@rm -f *.com

10
Binary/Apps/ZDE/ReadMe.txt

@ -0,0 +1,10 @@
***********************************************************************
*** ***
*** R o m W B W ***
*** ***
*** Z80/Z180 System Software ***
*** ***
***********************************************************************
This directory contains the ZDE executable binaries. They are
in their original, unconfigured state.

1
Source/Apps/Build.cmd

@ -29,6 +29,7 @@ call :build Survey || exit /b
call :build HTalk || exit /b
call :build BBCBASIC || exit /b
call :build copysl || exit /b
call :build ZDE || exit /b
goto :eof

1
Source/Apps/Clean.cmd

@ -24,6 +24,7 @@ call :clean Survey || exit /b
call :clean HTalk || exit /b
call :clean BBCBASIC || exit /b
call :clean copysl || exit /b
call :clean ZDE || exit /b
goto :eof

2
Source/Apps/Makefile

@ -1,5 +1,5 @@
SUBDIRS = HTalk XM FDU FAT Tune Test ZMP ZMD Dev VGM cpuspd reboot Survey BBCBASIC copysl \
sysgen syscopy assign format talk mode rtc timer
sysgen syscopy assign format talk mode rtc timer ZDE
TOOLS =../../Tools
include $(TOOLS)/Makefile.inc

35
Source/Apps/ZDE/Build.cmd

@ -0,0 +1,35 @@
@echo off
setlocal
set TOOLS=../../../Tools
set PATH=%TOOLS%\tasm32;%TOOLS%\zxcc;%PATH%
set TASMTABS=%TOOLS%\tasm32
set CPMDIR80=%TOOLS%/cpm/
:: These variations of ZDE are built here as reference copies. They
:: are not copied anywhere else during the build.
:: The resulting .COM files are manually
:: copied to /Source/Images/d_ws/u1 as needed.
zxcc ZMAC -ZDE16 -/P -/H || exit /b
zxcc MLOAD25 ZDE16 || exit /b
copy /Y zde16.com ..\..\..\Binary\Apps\ZDE\ || exit /b
zxcc ZMAC ZDE16A.PAT -/H || exit /b
zxcc MLOAD25 ZDE16A=ZDE16.COM,ZDE16A.HEX || exit /b
copy /Y zde16a.com ..\..\..\Binary\Apps\ZDE\ || exit /b
zxcc ZMAC -ZDE17 -/P -/H || exit /b
zxcc MLOAD25 ZDE17 || exit /b
copy /Y zde17.com ..\..\..\Binary\Apps\ZDE\ || exit /b
zxcc ZMAC -ZDE18 -/P -/H || exit /b
zxcc MLOAD25 ZDE18 || exit /b
copy /Y zde18.com ..\..\..\Binary\Apps\ZDE\ || exit /b
zxcc ZMAC -ZDE19 -/P -/H || exit /b
zxcc MLOAD25 ZDE19 || exit /b
copy /Y zde19.com ..\..\..\Binary\Apps\ZDE\ || exit /b

9
Source/Apps/ZDE/Clean.cmd

@ -0,0 +1,9 @@
@echo off
setlocal
if exist *.prn del *.prn
if exist *.err del *.err
if exist *.rel del *.rel
if exist *.com del *.com
if exist *.hex del *.hex
if exist *.sym del *.sym

15
Source/Apps/ZDE/Makefile

@ -0,0 +1,15 @@
# These variations of ZDE are built here as reference copies. They
# are not copied anywhere else during the build.
# The resulting .COM files are manually
# copied to /Source/Images/d_ws/u1 as needed.
OBJECTS = zde16.com zde16a.com zde17.com zde18.com zde19.com
DEST = ../../../Binary/Apps/ZDE
TOOLS = ../../../Tools
OTHERS = *.hex
include $(TOOLS)/Makefile.inc
zde16a.com: zde16.com zde16a.pat
$(ZXCC) zmac zde16a.pat -/H
$(ZXCC) mload25 zde16a=zde16.com,zde16a.hex || exit /b

36
Source/Apps/ZDE/ReadMe.md

@ -0,0 +1,36 @@
# ZDE 1.6 (Z-System Display Editor) reconstituted source - MECPARTS
11/19/2020
Using the source code of [VDE 2.67]
(http://www.classiccmp.org/cpmarchives/cpm/Software/WalnutCD/enterprs/cpm/utils/s/vde267sc.lbr)
as a guide, I've reconstituted the source code for [ZDE 1.6](http://www.classiccmp.org/cpmarchives/cpm/Software/WalnutCD/cpm/editor/zde16.lbr).
The source has been assembled with:
* Al Hawley's ZMAC: assemble as is.
* MicroSoft's M80: rename to ZDE16.MAC, un-comment the first two lines
and assemble. Use RELHEX to create ZDE16.HEX.
* ZASM (Cromemco's ASMB): Rename to ZDE16.Z80 and assemble. Use RELHEX
to create ZDE16.HEX.
Use MLOAD to create ZDE16.COM.
There are still a couple of routines new to ZDE that I haven't figured
out (yet). But most of them have been sussed out.
## ZDE 1.7 - MECPARTS 11/24/2020
I've fixed the "doesn't preserve timestamps for files larger than a
single extent under ZSDOS" bug that was present in v1.6. The existing
ZDENST16.COM program will work with the 1.7 to set the program up for
your terminal and printer.
## ZDE 1.8 - Lars Nelson 12/3/2022
Added routine to save create time stamp under CP/M Plus since
CP/M Plus, unlike ZSDOS, has no native ability to set time stamps.
## ZDE 1.9 - Peter Onion 03/27/2025
- Added support for ANSI PgUp, PgDn, Home, & End.
- Support ANSI F1 key for menu/error escape.

8111
Source/Apps/ZDE/zde16.z80

File diff suppressed because it is too large

102
Source/Apps/ZDE/zde16a.pat

@ -0,0 +1,102 @@
; This patch file modifies the officially-distributed .COM file
; for ZDE Ver 1.6 (copyright by Carson Wilson) to:
; - Correct a bug which did not preserve create times when
; editing files > 1 extent.
; - Use an apparently 'dead' byte in the configuration area as
; a configuration flag to allow disabling the 'Auto-Indent'
; feature which was always 'on' in ZDE1.6.
;
; With the second change, you may configure the 'Auto-Indent'
; feature to be active (as distributed) or disabled (as this patch
; is configured) by altering the DB at label 'AIDflt' in the
; second part of this patch file below.
;
; Assemble this file to a .HEX file (example uses ZMAC) as:
;
; ZMAC ZDE16A.PAT /H
;
; then overlay the resulting ZDE16.HEX onto ZDE16.COM with MYLOAD
; (or equivalent) as:
;
; MYLOAD ZDE.COM=ZDE.COM,ZDE16.HEX
;
; The resulting ZDE.COM will be identified as 'ZDE 1.6a' in the
; text identification string near the beginning of the .COM file.
;
; Harold F. Bower, 18 July 2001.
;
; CP/M Standard Equates
;
BDOS EQU 0005H
FCB EQU 005CH
DMA EQU 0080H
TPA EQU 0100H
;
SDMA EQU 26 ; CP/M Function to set DMA Address
;
; Needed locations within ZDE 1.6
;
Fill EQU TPA+0F8BH ; For Date Patch
TimBuf EQU TPA+3B3FH ; " " "
;
VTFlg EQU TPA+3ADAH ; For Auto-Ins Patch
HCRFlg EQU TPA+3AE3H ; " " " "
LfMarg EQU TPA+3AFDH ; " " " "
;
; ----------- Begin Patch File -----------
;
; --- Fix Create Time Stamp Preservation Error ---
ORG TPA+0029H
; was:
DB 'a, (C)' ; DB ', Copr.'
ORG TPA+2461H
; was:
LD (FCB+13),A ; CALL ClUsrF
;
ORG TPA+2F10H
; was:
LD B,4 ; CALL ClUsrF
CALL ClUsrF ; LD DE,TimBuf
LD DE,TimBuf ; LD C,SDMA
CALL SetDMA ; CALL BDOS
;
ORG TPA+30AAH
; was:
LD DE,DMA ; LD C,SDMA
SetDMA: LD C,SDMA ; LD DE,DMA
;
ORG TPA+30B4H
; was:
ClUsrF: XOR A ; XOR A
EX DE,HL ; LD (FCB+13),A
JP Fill ; RET
;
; --- Usurp Config Flag for Auto-Insert use, sense on startup ---
;
ORG TPA+0057H
; was: 0FFH
AIDflt: DB 00H ; Set Desired default (0=Off, FF=On)
;
ORG TPA+262AH
; was:
LD (LfMarg),HL ; LD HL,0101H
XOR A ; LD (LfMarg),HL
LD (VTFlg),A ; XOR A
LD (HCRFlg),A ; LD (VTFlg),A
NOP ; LD (HCRFlg),A
LD A,(AIDflt) ; DEC A
;
ORG TPA+2711H
; was:
NOP ; LD A,(0157H) {Unknown Use}
NOP ; OR A
NOP ; JP Z,Error2
NOP
NOP
NOP
NOP
;
;------------ End of Patch File ------------
END


8111
Source/Apps/ZDE/zde17.z80

File diff suppressed because it is too large

8567
Source/Apps/ZDE/zde18.z80

File diff suppressed because it is too large

8598
Source/Apps/ZDE/zde19.z80

File diff suppressed because it is too large

BIN
Source/Images/Common/All/u15/ZDE.COM

Binary file not shown.

7
Source/Images/d_ws4/u1/README.MD → Source/Images/d_ws4/u1/ReadMe.md

@ -28,4 +28,9 @@ your terminal and printer.
## ZDE 1.8 - Lars Nelson 12/3/2022
Added routine to save create time stamp under CP/M Plus since
CP/M Plus, unlike ZSDOS, has no native ability to set time stamps.
CP/M Plus, unlike ZSDOS, has no native ability to set time stamps.
## ZDE 1.9 - Peter Onion 03/27/2025
- Added support for ANSI PgUp, PgDn, Home, & End.
- Support ANSI F1 key for menu/error escape.

BIN
Source/Images/d_ws4/u1/ZDE16.COM

Binary file not shown.

BIN
Source/Images/d_ws4/u1/ZDE16A.COM

Binary file not shown.

BIN
Source/Images/d_ws4/u1/ZDE18.COM

Binary file not shown.

4
Source/Images/fd_ws4.txt

@ -0,0 +1,4 @@
#
# Add the ZDE binaries
#
../../Binary/Apps/ZDE/*.com 1:

4
Source/Images/hd_ws4.txt

@ -0,0 +1,4 @@
#
# Add the ZDE binaries
#
../../Binary/Apps/ZDE/*.com 1:

BIN
Source/RomDsk/ROM_256KB/ZDE.COM

Binary file not shown.

BIN
Source/RomDsk/ROM_384KB/ZDE.COM

Binary file not shown.

BIN
Source/RomDsk/ROM_896KB/ZDE.COM

Binary file not shown.
Loading…
Cancel
Save