mirror of
https://github.com/A2osX/A2osX.git
synced 2024-09-10 07:54:37 +00:00
175 lines
4.7 KiB
Plaintext
175 lines
4.7 KiB
Plaintext
|
NEW
|
|||
|
AUTO 3,1
|
|||
|
*--------------------------------------
|
|||
|
JMP WARM.DOS
|
|||
|
JMP PARSE.COMMAND
|
|||
|
SCI.USER.CMD JMP GP.RTS USER COMMAND PARSER
|
|||
|
JMP ERROR.HANDLER
|
|||
|
PRINT.ERROR JMP ERROR.PRINTER
|
|||
|
ERROR.CODE .HS 00
|
|||
|
*--------------------------------
|
|||
|
OUTVEC .DA $FDF0,$C100,$C200,$C300,$C400,$C500,$C600,$C700
|
|||
|
INVEC .DA $FD1B,$C100,$C200,$C300,$C400,$C500,$C600,$C700
|
|||
|
*--------------------------------
|
|||
|
VECOUT .HS F0FD
|
|||
|
VECIN .HS 1BFD
|
|||
|
*--------------------------------
|
|||
|
VDOSIO .DA 0,0 SAVE HARDWARE VECTOR DURING EXEC, WRITE
|
|||
|
.DA 0,0 VSYSIO
|
|||
|
*--------------------------------
|
|||
|
D.SLOT .HS 06
|
|||
|
D.DRIV .HS 01
|
|||
|
*--------------------------------
|
|||
|
PREGA .BS 1
|
|||
|
PREGX .BS 1
|
|||
|
PREGY .BS 1
|
|||
|
*--------------------------------
|
|||
|
F.TRACE .BS 1 +=TRACE OFF, -=TRACE ON
|
|||
|
STATE .BS 1 0=IMMD, >0=DEFERRED
|
|||
|
F.EXEC .BS 1
|
|||
|
F.READ .BS 1
|
|||
|
F.WRITE .BS 1
|
|||
|
F.PREFIX .BS 1
|
|||
|
DIR.FILE.READ.FLAG .BS 1
|
|||
|
*--------------------------------
|
|||
|
.HS 00
|
|||
|
*--------------------------------
|
|||
|
STRINGS.SPACE.COUNT .BS 1
|
|||
|
BUFFERED.WRITE.COUNT .BS 1
|
|||
|
COMMAND.LINE.LENGTH .BS 1
|
|||
|
PREVIOUS.CHAR .BS 1
|
|||
|
OPEN.FILE.COUNT .BS 1
|
|||
|
EXEC.FILE.CLOSING.FLAG .BS 1
|
|||
|
CATALOG.LINE.STATE .BS 1
|
|||
|
*--------------------------------
|
|||
|
EXTERNAL.COMMAND.HANDLER .BS 2
|
|||
|
COMMAND.NAME.LENGTH .BS 1
|
|||
|
COMMAND.NUMBER .BS 1
|
|||
|
*--------------------------------
|
|||
|
PBITS .HS 0000
|
|||
|
FBITS .HS 0000
|
|||
|
VAL.A .HS 0000
|
|||
|
VAL.B .HS 000000
|
|||
|
VAL.E .HS 0000
|
|||
|
VAL.L .HS 0000
|
|||
|
VAL.S .HS 00
|
|||
|
VAL.D .HS 00
|
|||
|
VAL.F .HS 0000
|
|||
|
VAL.R .HS 0000
|
|||
|
VAL.V .HS 00
|
|||
|
VAL.AT .HS 0000
|
|||
|
VAL.T .HS 00
|
|||
|
VAL.LB .HS 00 PR# OR IN# VALUE
|
|||
|
*--------------------------------
|
|||
|
.DA PATHNAME.ONE.BUFFER
|
|||
|
.DA PATHNAME.TWO.BUFFER
|
|||
|
*--------------------------------
|
|||
|
MLI.CALLER
|
|||
|
STA .2
|
|||
|
STX GP.SAVEX
|
|||
|
CMP #$CF
|
|||
|
BCC .1
|
|||
|
LDA #$CE
|
|||
|
.1 TAX
|
|||
|
LDA MLI.PARM.PNTRS-$C0,X
|
|||
|
STA .3
|
|||
|
JSR GP.MLI
|
|||
|
.2 .HS 00
|
|||
|
.3 .DA *
|
|||
|
BCC .6
|
|||
|
LDX #0
|
|||
|
.4 CMP MLI.ERROR.CODES,X
|
|||
|
BEQ .5
|
|||
|
INX
|
|||
|
CPX #19
|
|||
|
BCC .4
|
|||
|
.5 LDA BI.ERROR.CODES,X
|
|||
|
*** SEC (CARRY ALREADY SET)
|
|||
|
.6 LDX #*-*
|
|||
|
GP.SAVEX .EQ *-1
|
|||
|
ORA #0
|
|||
|
GP.RTS RTS
|
|||
|
*--------------------------------
|
|||
|
.HS 00 <<<SPARE>>>
|
|||
|
*---CREATE PARMS-----------------
|
|||
|
CREATE.PARMS
|
|||
|
.HS 07
|
|||
|
.DA PATHNAME.ONE.BUFFER
|
|||
|
.HS C3.00.0000.00.0000.0000
|
|||
|
*---GET & SET PREFIX, DESTROY----
|
|||
|
PREFIX.PARMS
|
|||
|
.HS 01
|
|||
|
.DA PATHNAME.ONE.BUFFER
|
|||
|
*---RENAME-----------------------
|
|||
|
RENAME.PARMS
|
|||
|
.HS 02
|
|||
|
.DA PATHNAME.ONE.BUFFER
|
|||
|
.DA PATHNAME.TWO.BUFFER
|
|||
|
*---GET & SET FILE INFO----------
|
|||
|
GET.SET.PARMS
|
|||
|
.HS 0A
|
|||
|
.DA PATHNAME.ONE.BUFFER
|
|||
|
.HS 00.00.0000
|
|||
|
.HS 00.0000.0000.0000.0000.0000
|
|||
|
*---MISC-------------------------
|
|||
|
MISC.PARMS
|
|||
|
.HS 02.00.0000
|
|||
|
.HS 00
|
|||
|
*---OPEN PARMS-------------------
|
|||
|
OPEN.PARMS
|
|||
|
.HS 03
|
|||
|
.DA PATHNAME.ONE.BUFFER
|
|||
|
.HS 0000.00
|
|||
|
*---SET NEWLINE PARMS------------
|
|||
|
NEWLINE.PARMS
|
|||
|
.HS 03.00.7F.0D
|
|||
|
*---READ & WRITE PARMS-----------
|
|||
|
READ.WRITE.PARMS
|
|||
|
.HS 04.00.0000.0000.0000
|
|||
|
*---CLOSE & FLUSH PARMS----------
|
|||
|
CLOSE.FLUSH.PARMS
|
|||
|
.HS 01.00
|
|||
|
*--------------------------------
|
|||
|
* ADDRESSES OF MLI PARM LISTS FOR EACH CALL $C0-$D3
|
|||
|
* actual address is $BExx
|
|||
|
*--------------------------------
|
|||
|
MLI.PARM.PNTRS
|
|||
|
.DA #CREATE.PARMS $C0--CREATE
|
|||
|
.DA #PREFIX.PARMS $C1--DESTROY
|
|||
|
.DA #RENAME.PARMS $C2--RENAME
|
|||
|
.DA #GET.SET.PARMS $C3--SFI
|
|||
|
.DA #GET.SET.PARMS $C4--GFI
|
|||
|
.DA #MISC.PARMS $C5--ONLINE
|
|||
|
.DA #PREFIX.PARMS $C6--SPFX
|
|||
|
.DA #PREFIX.PARMS $C7--GPFX
|
|||
|
.DA #OPEN.PARMS $C8--OPEN
|
|||
|
.DA #NEWLINE.PARMS $C9--NEWLINE
|
|||
|
.DA #READ.WRITE.PARMS $CA--READ
|
|||
|
.DA #READ.WRITE.PARMS $CB--WRITE
|
|||
|
.DA #CLOSE.FLUSH.PARMS $CC--CLOSE
|
|||
|
.DA #CLOSE.FLUSH.PARMS $CD--FLUSH
|
|||
|
.DA #MISC.PARMS $CE--SMARK
|
|||
|
* .DA #MISC.PARMS $CF--GMARK
|
|||
|
* .DA #MISC.PARMS $D0--SEOF
|
|||
|
* .DA #MISC.PARMS $D1--GEOF
|
|||
|
* .DA #MISC.PARMS $D2--SBUF
|
|||
|
* .DA #MISC.PARMS $D3--GBUF
|
|||
|
*--------------------------------
|
|||
|
.AS -/++++/
|
|||
|
*--------------------------------
|
|||
|
BUFFER.BASES .HS 78.7C LOWER/UPPER BUFFERS
|
|||
|
EXEC.BUFFER.BASE .HS 74
|
|||
|
*--------------------------------
|
|||
|
RTS WAS GET BUFFER
|
|||
|
NOP
|
|||
|
NOP
|
|||
|
RTS WAS RETURN BUFFER
|
|||
|
NOP
|
|||
|
NOP
|
|||
|
.HS 74 HIMEM PAGE
|
|||
|
*--------------------------------------
|
|||
|
MAN
|
|||
|
SAVE usr/src/scmasm.30/sci.s.gp
|
|||
|
LOAD usr/src/scmasm.30/scmasm.s
|
|||
|
ASM
|