A2osX/SYS/KERNEL.S.JMP.txt

474 lines
8.9 KiB
Plaintext
Raw Normal View History

2017-12-22 21:24:30 +00:00
NEW
2019-05-25 19:24:07 +00:00
AUTO 3,1
2016-06-07 06:10:18 +00:00
*--------------------------------------
2019-05-04 21:13:50 +00:00
* $E000-E1FF System calls Jump Table
*--------------------------------------
* Bank 1
*--------------------------------------
2019-07-29 15:38:55 +00:00
K.SYSCALL .DA 0 $00
2019-05-04 21:13:50 +00:00
.DA K.ChMod
2018-10-04 15:30:14 +00:00
.DA K.FStat
.DA K.Stat
2018-06-18 06:22:50 +00:00
.DA K.MKDir
.DA K.MKNod
.DA K.MKFIFO
2019-02-04 16:37:15 +00:00
.DA K.Pipe
2018-06-18 06:22:50 +00:00
.DA K.OpenDir $10
.DA K.ReadDir
2018-09-06 15:36:44 +00:00
.DA K.FClose
2018-07-11 15:13:29 +00:00
.DA K.Open
.DA K.Close
.DA K.Read
.DA K.Write
.DA K.IOCTL
2018-06-18 06:22:50 +00:00
.DA K.FPutC $20
.DA K.PutChar
.DA K.GetC
.DA K.GetChar
.DA K.FPutS
2018-06-18 06:22:50 +00:00
.DA K.PutS
2018-07-27 13:34:34 +00:00
.DA K.FGetS
2018-01-15 06:50:44 +00:00
.DA 0
.DA K.FOpen $30
2018-06-18 06:22:50 +00:00
.DA K.FClose
2017-01-12 17:43:45 +00:00
.DA K.FRead
.DA K.FWrite
2018-06-18 06:22:50 +00:00
.DA K.FFlush
2017-01-12 17:43:45 +00:00
.DA K.FSeek
.DA K.FTell
2018-06-18 06:22:50 +00:00
.DA K.FEOF
2018-06-18 06:22:50 +00:00
.DA K.Remove $40
2017-01-12 17:43:45 +00:00
.DA K.Rename
.DA 0
.DA 0
2018-12-18 14:37:07 +00:00
.DA 0
2018-06-18 06:22:50 +00:00
.DA K.GetDevByName
.DA K.GetDevStatus
2018-07-17 15:45:59 +00:00
.DA K.MKDev
.DA 0 $50
2018-06-18 06:22:50 +00:00
.DA K.SScanF
.DA 0
2019-08-30 15:16:58 +00:00
.DA K.PrintF2
2018-06-18 06:22:50 +00:00
.DA K.PrintF
.DA K.SPrintF
.DA K.FPrintF
.DA 0
.DA 0 $60
2019-05-04 21:13:50 +00:00
.DA K.ChTyp
2019-07-29 15:38:55 +00:00
.DA 0
.DA 0
2019-05-04 21:13:50 +00:00
.DA 0
.DA 0
.DA K.ChOwn
.DA K.ChGrp
.DA K.AToF $70
2018-06-18 06:22:50 +00:00
.DA K.AToI
.DA K.AToL
.DA K.StrToF
.DA K.StrToL
2019-09-02 15:34:10 +00:00
.DA K.StrToUL
2018-06-18 06:22:50 +00:00
.DA K.RealPath
2018-12-17 15:21:32 +00:00
.DA 0
2016-09-21 15:20:37 +00:00
*--------------------------------------
* Bank 2
*--------------------------------------
2018-06-18 06:22:50 +00:00
.DA K.StrLen $80
.DA K.StrCpy
.DA K.StrCat
2018-12-20 16:23:43 +00:00
.DA K.StrDup
2018-06-18 06:22:50 +00:00
.DA K.StrUpr
.DA K.StrLwr
2018-01-15 16:51:44 +00:00
.DA K.StrCmp
2018-09-06 12:27:37 +00:00
.DA K.StrCaseCmp
2018-06-18 06:22:50 +00:00
.DA K.Time $90
.DA K.CTime2Time
.DA K.PTime2Time
2018-01-15 16:51:44 +00:00
.DA K.StrFTime
2018-06-18 06:22:50 +00:00
.DA K.LoadLib
.DA K.UnloadLib
.DA K.LoadDrv
2018-06-28 15:26:34 +00:00
.DA K.InsDrv
2018-10-25 15:31:41 +00:00
.DA K.ExecL $A0
.DA K.ExecV
2018-10-15 15:39:21 +00:00
.DA 0
2018-12-04 13:20:35 +00:00
.DA K.Kill
2019-07-29 15:38:55 +00:00
.DA K.LoadFile
.DA K.LoadTxtFile
.DA K.GetMemStat
2018-12-18 14:37:07 +00:00
.DA 0
2018-10-16 15:48:03 +00:00
.DA K.Args2ArgV $B0
.DA K.ArgV
2018-06-18 06:22:50 +00:00
.DA K.ExpandStr
2018-06-28 15:26:34 +00:00
.DA K.FileSearch
2018-06-18 06:22:50 +00:00
.DA K.PutEnv
2016-09-21 15:20:37 +00:00
.DA K.SetEnv
2018-06-18 06:22:50 +00:00
.DA K.GetEnv
.DA K.UnsetEnv
2019-07-10 15:39:02 +00:00
.DA 0 $C0
.DA 0
.DA 0
.DA 0
.DA 0
2017-10-27 14:56:46 +00:00
.DA 0
2019-08-01 14:59:15 +00:00
.DA 0
.DA 0
2017-10-27 14:56:46 +00:00
2019-07-19 14:05:22 +00:00
.DA K.GetPWUID $D0
.DA K.GetPWName
.DA K.PutPW
2019-10-11 13:06:33 +00:00
.DA K.FlushEtcPasswd
2019-07-10 15:39:02 +00:00
.DA 0
.DA 0
.DA 0
2019-07-26 14:23:07 +00:00
.DA X.OSD
2016-06-07 06:10:18 +00:00
*--------------------------------------
* $E000
*--------------------------------------
2019-01-30 06:20:13 +00:00
.DA K.GetMem $E0
2018-06-18 06:22:50 +00:00
.DA K.GetMem0
2019-01-30 06:20:13 +00:00
.DA K.GetMemPtr
.DA K.FreeMem
2019-06-19 15:56:59 +00:00
.DA K.GetMem K.NewStkObj
2019-03-15 16:20:28 +00:00
.DA K.LoadStkObj
2019-06-19 15:56:59 +00:00
.DA K.GetMemPtr K.GetStkObjPtr
.DA K.FreeMem K.FreeStkObj
*--------------------------------------
2019-03-15 16:20:28 +00:00
.DA K.SListGetData $F0
.DA K.SListAddData
2019-01-30 06:20:13 +00:00
.DA K.SListSetData
.DA K.SListGetByID
2019-01-30 06:20:13 +00:00
2019-03-13 16:29:24 +00:00
.DA K.SListNewKey
2019-01-30 06:20:13 +00:00
.DA K.SListLookup
.DA K.SListNew
2018-06-18 06:22:50 +00:00
.DA K.SListFree
2016-09-26 16:00:52 +00:00
*--------------------------------------
* LO Byte :
* #RRAMWRAMBNK1,#RRAMWRAMBNK2
* HI Byte :
* Flags (ROOT....)
2016-09-05 06:10:04 +00:00
*--------------------------------------
K.SYSCALL.BANK .DA #RRAMWRAMBNK1 $00
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
2019-10-03 06:25:27 +00:00
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $10
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $20
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $30
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $40
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $50
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $60
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1 $70
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
.DA #RRAMWRAMBNK1
.DA #$80
*--------------------------------------
.DA #RRAMWRAMBNK2 $80
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2 $90
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2 $A0
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2 $B0
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
2017-10-27 14:56:46 +00:00
.DA #RRAMWRAMBNK2 $C0
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
2019-10-11 13:06:33 +00:00
.DA #$C0 $D0 : PWDX
2017-10-27 14:56:46 +00:00
.DA #$80
2019-10-11 13:06:33 +00:00
.DA #$C0 PWDX
2017-10-27 14:56:46 +00:00
.DA #$80
2019-10-11 13:06:33 +00:00
.DA #$C0 PWDX
2017-10-27 14:56:46 +00:00
.DA #$80
2019-10-11 13:06:33 +00:00
.DA #0 PWD
2017-10-27 14:56:46 +00:00
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
.DA #RRAMWRAMBNK2
.DA #$80
2019-07-26 14:23:07 +00:00
.DA #$C0 Off Screen Driver
2017-10-27 14:56:46 +00:00
.DA #$80
*--------------------------------------
2019-06-19 15:56:59 +00:00
.DA #0 $E0 : MemMgr at $E000
.DA #$80
.DA #0
.DA #$80
.DA #0
.DA #$80
.DA #0
.DA #$80
2019-06-20 06:39:28 +00:00
.DA #$C0 NewStkObj
2019-06-19 15:56:59 +00:00
.DA #$80
.DA #0
.DA #$80
2019-06-20 06:39:28 +00:00
.DA #$C0 GetStkObjPtr
2019-06-19 15:56:59 +00:00
.DA #$80
2019-06-20 06:39:28 +00:00
.DA #$C0 FreeStkObj
2019-06-19 15:56:59 +00:00
.DA #$80
2017-01-12 17:43:45 +00:00
*--------------------------------------
2019-07-29 15:38:55 +00:00
.DA #$C0 $F0 : SLIST
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
2019-07-29 15:38:55 +00:00
.DA #$C0
2019-06-19 15:56:59 +00:00
.DA #$80
*--------------------------------------
2019-08-05 13:30:58 +00:00
* K.SYSCALL2 : From KERNEL (MAIN,AUX), LIB
*--------------------------------------
2019-05-12 20:45:11 +00:00
K.SYSCALL2 bit K.SYSCALL.BANK,x Get Target BNK
2019-06-19 15:56:59 +00:00
bvc K.SYSCALL2.BANK
2019-08-05 13:30:58 +00:00
K.SYSCALL2.AUX sta SETREADAUX MAIN to AUX Mem API
2019-06-19 15:56:59 +00:00
sta SETWRITEAUX
jsr K.SYSCALL.JMP
sta CLRREADAUX
sta CLRWRITEAUX
rts
2019-08-05 13:30:58 +00:00
K.SYSCALL2.MAIN sta CLRREADAUX Coming from KERNEL in AUX...
sta CLRWRITEAUX
jsr .1
sta SETREADAUX
sta SETWRITEAUX
rts
.1 bit K.SYSCALL.BANK,x Get Target LC BNK
K.SYSCALL2.BANK bpl K.SYSCALL.JMP 0, E000, no BNK change
sta .7+1
2019-05-04 21:13:50 +00:00
lda $D000 #RRAMWRAMBNK1 or #RRAMWRAMBNK2
cmp K.SYSCALL.BANK,x
beq .7
pha remember source BNK
stx .6+1
lda K.SYSCALL.BANK,x
tax get Target BNK in x
bit $C000,x switch to Target BNK
bit $C000,x
jsr .6
stx .5+1 Save X
plx get back Source BNK
bit $C000,x switch to Target BNK
bit $C000,x
.5 ldx #$ff SELF MODIFIED
2019-01-26 14:01:05 +00:00
rts
2019-05-04 21:13:50 +00:00
.6 ldx #$ff SELF MODIFIED
.7 lda #$ff SELF MODIFIED
2019-05-05 17:15:37 +00:00
2019-05-04 21:13:50 +00:00
K.SYSCALL.JMP jmp (K.SYSCALL,x)
2019-01-26 14:01:05 +00:00
*--------------------------------------
2016-06-07 06:10:18 +00:00
MAN
2018-11-17 17:17:13 +00:00
SAVE USR/SRC/SYS/KERNEL.S.JMP
LOAD USR/SRC/SYS/KERNEL.S
2016-06-07 06:10:18 +00:00
ASM