mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.1 KiB
3.1 KiB
ZX Command
An adaptation of zxcc-0.5.6 by Wayne Warthen
This directory contains the source files used to build the "zx" tool. This tool
is essentially just John Elliott's zxcc package version zxcc-0.5.6 modified to
build for Windows and simplified down to just a single command (zx)
which is essentially just the zxcc command.
Please see http://www.seasip.info/Unix/Zxcc/ for more information on zxcc.
Note that this is a Win32 build. The code has not been updated to build as a 64-bit
binary. However, Win32 binaries run very nicely under 64 bit Windows.
To build under Open Watcom or Microsoft Visual C++, use the following command:
cl /Fe"zx.exe" zx.c cpmdrv.c cpmglob.c cpmparse.c cpmredir.c drdos.c util.c xlt.c zxbdos.c zxcbdos.c zxdbdos.c z80.c dirent.c
To build a debug version, use the following command:
cl /DDEBUG /Fe"zxdbg.exe" zx.c cpmdrv.c cpmglob.c cpmparse.c cpmredir.c drdos.c util.c xlt.c zxbdos.c zxcbdos.c zxdbdos.c z80.c dirent.c
WARNING: There seems to be a rare scenario that breaks zx under the Open Watcom build.
CP/M allows a file to be accessed under multiple FCB's without an error. Open Watcom
will see this as an error. At present, the only tool I know of that does this is M80.
December 5, 2014
After struggling to get the entire zxcc package to build nicely using autoconf,
I finally gave up and took a much more direct approach. I have extracted just
the source files needed and created a simple batch file to build the tool. I
realize this could be done much better, but I cheated in the interest of time.
The one "real" change I made in the source code was that I modified the tool
to look for bios.bin in the same directory as the executable is in. This
just makes it much easier to set up (for me, anyway).
The GPL status of everything remains in place and carries forward.
Wayne Warthen
wwarthen@gmail.com
March 15, 2017
- Updated to compile under Open Watcom.
- Implemented BDOS console status function.
- Set stdin and stdout to binary mode at startup.
August 21, 2021
- Incorporated filename case insensitivity changes from Curt Mayer
- Incorporated fixes from Tony Nicholson at https://github.com/agn453/ZXCC
- Emulation of CP/M BDOS function 60 (call resident system extension)
should be disabled and return 0xFF in both the A and L registers.
- Change cpm_bdos_10() to return an unsigned result to avoid buffer
size being interpreted as negative.
- Fix the emulation of Z80 opcodes for IN (HL),(C) and
OUT (C),(HL) - opcodes 0xED,0x70 and 0xED,0x71 respectively.
This is noted in Fred Weigel's AM9511 arithmetic processing unit
emulation from https://github.com/ratboy666/am9511 in the howto.txt
description. NB: I have not included Fred's am9511 support at this
time into ZXCC.
- Fixed parse_to_fcb function in zx.c to handle parsing second automatic
FCB from command line
- I have not been able to reproduce the multiple FCBs referring to a
single file issue with Watcom documented above. Perhaps I fixed it
and don't remember or I found a bug-fixed version of M80. Not sure.
Wayne Warthen
wwarthen@gmail.com
--WBW 4:09 PM 8/21/2021