The Programmer's Guide to TRSDOS Version 6 - Tim Mann's Home ...
The Programmer's Guide to TRSDOS Version 6 - Tim Mann's Home ...
The Programmer's Guide to TRSDOS Version 6 - Tim Mann's Home ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
7.6.40 @HEX8 SVC-98<br />
This SVC will convert a 1-byte number <strong>to</strong> hex ASCII.<br />
Registers Affected: AF, HL.<br />
Entry:<br />
C Contains the value <strong>to</strong> convert.<br />
HL A pointer <strong>to</strong> your 2-character buffer.<br />
Exit:<br />
HL Will point <strong>to</strong> end-of-buffer + 1.<br />
7.6.41 @HEXDEC SVC-97<br />
This SVC converts a 16-bit binary number in<strong>to</strong> decimal ASCII.<br />
Registers Affected: AF, BC, HL.<br />
Entry:<br />
HL Contains the value <strong>to</strong> convert.<br />
DE A pointer <strong>to</strong> your 5-character buffer.<br />
Exit:<br />
DE Will point <strong>to</strong> end-of-buffer + 1.<br />
7.6.42 @HIGH$ SVC-100<br />
This SVC will alter or return the current value of HIGH$/LOW$. Note that neither can be<br />
altered if bit-0 of the CFLAG$ is set. HIGH$ is a word containing the highest RAM address<br />
usable by the system. User modules that need be protected from being overwritten are<br />
placed in high memory. <strong>The</strong> module's last address should occupy the current HIGH$ and<br />
HIGH$ is then lowered <strong>to</strong> correspond <strong>to</strong> the memory location just prior <strong>to</strong> the module. LOW$<br />
needs <strong>to</strong> be set by those programs using @CMNDR that want <strong>to</strong> protect memory starting from<br />
their lowest address (LOW$ defaults <strong>to</strong> X'2FFF').<br />
Registers Affected: AF [HL if originally set <strong>to</strong> 0].<br />
Entry:<br />
B 0, SVC deals with HIGH$<br />
B 1, SVC deals with LOW$<br />
HL If a non-zero value is contained in HL, then HIGH$/LOW$ is changed the that<br />
value. If HL contains a zero value, then the current value of HIGH$/LOW$ is<br />
returned.<br />
7.6.43 @INIT SVC-58<br />
INIT will open an existing file. If the file is not found, it will be created according<br />
<strong>to</strong> the file specification.<br />
Registers Affected: AF.<br />
Entry:<br />
HL <strong>The</strong> 256-byte disk I/O buffer <strong>to</strong> be used during I/O.<br />
DE File Control Block containing the file specification.<br />
B Logical Record Length <strong>to</strong> be used while the file is open.<br />
7-26