home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
ZCPR33
/
A-R
/
CLEAND18.LBR
/
ASSEMBLY.NOT
next >
Wrap
Text File
|
2000-06-30
|
3KB
|
44 lines
Notes on reassembling CLEAND18:
This version was developed and assembled with SLR System's SLR180 Plus--in
my opinion, the finest assembler package ever made available for Z80-based
computer systems.
I assembled the source with ZAS 2.4, and got 52 (!) assembly errors--mostly
flagging the 'ext' defined symbols at the beginning of the file as, first
'M'ultiply-defined, then as 'U'ndefined, and giving 'V'alue errors for half
the relative jumps in the program. (Yes, I tried 'extrn' too--no luck).
I know David McCord likes to keep Z-system tools in such a form that they are
able to be assembled by ZAS. I really did try, but, when ZAS bombed out so
badly on this source (much of it unchanged from Version 1.4, the version he
modified explicitly so it WOULD assemble with ZAS), I gave up. If and when
ZAS ever grows up into a usable product, I will be glad to support it. Until
then, I can't recommend the SLR family of assembler products strongly enough--
and I can't recommend ZAS at all.
The problem is probably mostly my lack of knowledge of the idiosyncrasies of
ZAS. If you do get this version to assemble with ZAS, I would appreciate a
message telling me what I did wrong, so I can come closer to ZAS compatibility
in the future. Leave me a note on ZNode Central or on Seattle's 'downspout',
ZNode #12, at 206-325-1325.
Note that this version allocates a smaller-than-usual amount of space for the
stack--50 bytes. This should be more than sufficient for most systems, since
the most that is on the stack at any BIOS entry is 10 bytes (on the call to
SECTRN; all other BIOS calls have 8 or less bytes on the stack). Unless your
BIOS read or write routines take more than 40 bytes of stack space, you should
have no problem. If you, do, just change the amount of space for the stack to
a larger value and reassemble. Note that this will reduce the amount of space
available for directory entries.
HOWEVER, note also that this version was assembled with a custom version of
SYSLIB that has the COUT routine do its output via a BDOS call rather than a
BIOS call. This allows for printer echo of all program output, and also makes
the amount of stack space available on console output calls irrelevant, since
BDOS/ZRDOS switches to a local stack. If you reassemble CLEANDIR and link it
with the standard SYSLIB, COUT will use direct BIOS console output calls, and
you will need to make sure you have enough stack space for those also.
Steve Dirickson 14 June 1987