Mercurial > hg > Members > kono > nitros9-code
comparison 3rdparty/roms/dos/SuperDos/romdefs.asm @ 1985:4037b23c848d
SuperDos rom, assembalable for Dragon Dos, Dragon Alpha or RS-DOS
author | afra |
---|---|
date | Fri, 20 Jan 2006 01:54:33 +0000 |
parents | |
children | b2f58a220c08 |
comparison
equal
deleted
inserted
replaced
1984:cbb405567d04 | 1985:4037b23c848d |
---|---|
1 * | |
2 * Deinitions for ROM entry points and low memory variables on Dragon | |
3 * 32/64/Alpha. | |
4 * | |
5 * 2005-11-10. P.Harvey-Smith. | |
6 * | |
7 | |
8 ; | |
9 ; Low memory vars in page 0 and 1 | |
10 ; | |
11 | |
12 BasTextPtr EQU $19 ; Basic text pointer | |
13 BasVarsPtr EQU $1B ; Pointer to start of vars | |
14 BasArrayPtr EQU $1D ; Pointer to start of arrays | |
15 BasEndInUse EQU $1F ; End of storage in use | |
16 | |
17 BasFACExponent EQU $4F ; Floating point accumulator exponent | |
18 BasFACMantissa EQU $50 ; FAC mantissa (4 bytes) | |
19 BasStrAddr EQU $52 ; Address of string argument | |
20 BasFACManSgn EQU $54 ; Sign of mantissa | |
21 BasFACManSTemp EQU $55 ; Tempory sign of mantissa | |
22 | |
23 BasCurrentLine EQU $68 ; Current line number | |
24 BasDeviceNo EQU $6F ; Current device number | |
25 ResetVecAddr EQU $72 ; Reset vector address, points to a NOP | |
26 Zero16Bit EQU $8A ; 16 bit zero | |
27 BasChrGet EQU $9F ; Get next character from basic program | |
28 BasChrGetCurr EQU $A5 ; Get current character from basic program | |
29 BasUsrBasePtr EQU $B0 ; Pointer to base of usr vectors | |
30 GrfTopPtr EQU $B7 ; Pointer to top of graphics screen | |
31 GrfBasePtr EQU $BA ; Graphics area base pointer | |
32 | |
33 BasJoyRX EQU $15A ; Basic, Right Joystick X | |
34 BasJoyRY EQU $15B ; Basic, Right Joystick Y | |
35 BasJoyLX EQU $15C ; Basic, Left Joystick X | |
36 BasJoyLY EQU $15D ; Basic, Left Joystick Y | |
37 RamHooks EQU $15E ; Begining of ram hooks (see below) | |
38 | |
39 ; | |
40 ; Ram hooks | |
41 ; | |
42 ; | |
43 ; Some hooks share the same address, the only way to determine which is | |
44 ; in use is to check the return address -- Source : "Inside the Dragon". | |
45 ; | |
46 | |
47 HookOpenDev EQU $15E ; Open device or file | |
48 HookCheckIONum EQU $161 ; Check I/O device number | |
49 HookRetDevParam EQU $164 ; Return device parameters | |
50 HookCharOut EQU $167 ; Character output | |
51 HookCharIn EQU $16A ; Character input | |
52 HookCheckInput EQU $16D ; Deech dev open for input | |
53 HookCheckOutput EQU $170 ; Deech dev open for output | |
54 HookCloseAll EQU $173 ; Close all devices & files | |
55 HookCloseSingle EQU $176 ; Close a single device or file | |
56 HookNewStat EQU $179 ; About to dela with first char of new satement | |
57 HookDiskItem EQU $17C ; Disk file item scanner | |
58 HookPollBreak EQU $17F ; Poll for break key | |
59 HookReadInput EQU $182 ; Read a line of input | |
60 HookFinishASCII EQU $185 ; Finish loading ascii program | |
61 HookEOF EQU $188 ; End of file function | |
62 HookEval EQU $18B ; Evaluate expression | |
63 HookUsrError EQU $18E ; User error trap | |
64 HookSysError EQU $191 ; System error trap | |
65 HookRun EQU $194 ; Run statement | |
66 HookStrCopy EQU $197 ; String copy check | |
67 HookClear EQU $197 ; Clear statement | |
68 HookFetchNext EQU $19A ; Fetch next statement | |
69 HookLet EQU $19D ; LET statement | |
70 HookCLS EQU $1A0 ; CLS statement | |
71 HookRENUM EQU $1A0 ; RENUM statment | |
72 HookPUTGET EQU $1A0 ; PUT or GET statement | |
73 HookFunction EQU $1A0 ; Function assignment | |
74 HookCompress EQU $1A3 ; Compress basic line | |
75 HookExpand EQU $1A6 ; Expand basic line for listing. | |
76 | |
77 | |
78 ; | |
79 ; Basic rom related stuff. | |
80 ; | |
81 | |
82 BasicHWInit EQU $8000 ; Hardware initialisation | |
83 BasicSWInit EQU $8003 ; Software initialisation | |
84 BasicKbdIn EQU $8006 ; Keyboard input | |
85 BasicCursorB EQU $8009 ; Cursor blink | |
86 BasicScreenOut EQU $800C ; Screen output | |
87 BasicPrintOut EQU $800F ; Printer output | |
88 BasicJoyIn EQU $8012 ; Joystick input | |
89 BasicCassOn EQU $8015 ; Cassette player motor on | |
90 BasicCassOff EQU $8018 ; Cassette player motor off | |
91 BasicWriteLead EQU $801B ; Cassette write leader | |
92 BasicCassByOut EQU $801E ; Cassette byte output | |
93 BasicCassOnRd EQU $8021 ; Cassette on for reading | |
94 BasicCassByIn EQU $8024 ; Cassette byte input | |
95 BasicCassBitIn EQU $8027 ; Cassette bit input | |
96 BasicSerIn EQU $802A ; Read a byte from serial | |
97 BasicSerOut EQU $802D ; Write a byte to serial port | |
98 BasicSetBaud EQU $8030 ; Set baud rate | |
99 | |
100 BasOMError EQU $8342 ; ?OM error | |
101 CmdMode EQU $8371 ; Go to basic command mode | |
102 BasResetStack EQU $8434 ; Reset basic stack | |
103 | |
104 VarGetExpr EQU $8877 ; Get (and evaluate?) espression, addrss of expresion in $52 | |
105 VarGetStr EQU $8887 ; Get string variable from basic, and store it | |
106 VarCKComma EQU $89AA ; Check for comma | |
107 BasSNError EQU $89B4 ; ?SN ERROR basic routine | |
108 BasFCError EQU $8B8D ; ?FC Error basic routine | |
109 VarDelVar EQU $8D9F ; Delate a (tempory) var | |
110 VarGet8Bit EQU $8E51 ; Get 8bit value | |
111 VarGet16Bit EQU $8E83 ; Get 16 bit var from basic | |
112 | |
113 TextOutCRLF EQU $90A1 ; Output CRLF | |
114 BasPrintStr EQU $90E5 ; Basic, print string. | |
115 TextOutQuestion EQU $90F8 ; output a ? | |
116 | |
117 BasicEntry EQU $B39B ; Basic entry point | |
118 BasicEntry2 EQU $B3CE | |
119 BasicResetVec EQU $B3B4 ; Basic rom reset vetcor | |
120 | |
121 BasSignonMess EQU $B4B2 ; Address of basic signon message | |
122 | |
123 TextWaitKey EQU $B505 ; Display cursor and await keypress | |
124 | |
125 UtilCopyBXtoU EQU $B7CC ; copy B bytes from X to U | |
126 | |
127 TextCls EQU $BA77 ; Clear screen | |
128 SndDisable EQU $BAC3 ; Disable (cassette) sound | |
129 SndDTOAOn EQU $BAED ; Turn on D to A sound | |
130 CasMotorOff EQU $BDDC ; Turn off casette motor | |
131 CasByteOut EQU $BE12 ; Byte output to cassette |