A2osX/SYS/KERNEL.S.SLIST.txt

106 lines
2.5 KiB
Plaintext
Raw Normal View History

2020-02-18 15:34:56 +00:00
NEW
AUTO 3,1
*/--------------------------------------
* # SListGetData
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyID`
* `>PUSHW DataPtr` (0 if KERNEL should allocate a buffer)
* `>PUSHW DataLen` (Data bytes to return, 0 if String mode)
* `>PUSHW DataOfs` (Start offset in Data)
* `>SYSCALL SListGetData`
* ## RETURN VALUE
* Y,A = Byte Count
* X = hMem (if DataPtr = 0)
*\--------------------------------------
2020-02-20 16:54:51 +00:00
K.SListGetData >PULLW ZPSListDataOfs
2020-02-18 15:34:56 +00:00
*/--------------------------------------
* # SListAddData
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyID`
* `>PUSHW DataPtr`
* `>PUSHW DataLen` (Data bytes to add, 0 if String mode)
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListAddData`
* ## RETURN VALUE
*\--------------------------------------
K.SListAddData
*/--------------------------------------
* # SListSetData
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyID`
* `>PUSHW DataPtr`
* `>PUSHW DataLen` (Data bytes to set, 0 if String mode)
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListSetData`
* ## RETURN VALUE
*\--------------------------------------
K.SListSetData >PULLW ZPSListDataLen
2023-11-12 13:20:15 +00:00
jmp JMP.X2A
2020-02-18 15:34:56 +00:00
*/--------------------------------------
* # SListGetByID
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyID`
2020-02-24 13:33:28 +00:00
* `>PUSHW KeyPtr`
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListGetByID`
* ## RETURN VALUE
* Y,A = Next KeyID
*\--------------------------------------
2023-11-12 13:20:15 +00:00
K.SListGetByID .EQ JMP.X2A
2022-11-02 06:54:30 +00:00
* >PULLW FORPNT
* >PULLW TXTPTR
* >PULLA
2020-02-18 15:34:56 +00:00
*/--------------------------------------
* # SListNewKey
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyPtr`
2022-11-02 06:54:30 +00:00
* `>PUSHW ScopeID`
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListNewKey`
* ## RETURN VALUE
* Y,A = KeyID
* X = KeyLen
*\--------------------------------------
2023-11-12 13:20:15 +00:00
K.SListNewKey .EQ JMP.X2A
2022-11-02 06:54:30 +00:00
* >PULLW FORPNT
* >PULLW TXTPTR
* >PULLA
2020-02-18 15:34:56 +00:00
*/--------------------------------------
* # SListLookup
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyPtr`
2022-11-02 06:54:30 +00:00
* `>PUSHW ScopeID`
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListLookup`
* ## RETURN VALUE
* Y,A = KeyID
* X = Key Length
*\--------------------------------------
2023-11-12 13:20:15 +00:00
K.SListLookup .EQ JMP.X2A
2022-11-02 06:54:30 +00:00
* >PULLW FORPNT
* >PULLW TXTPTR
* >PULLA
2020-02-18 15:34:56 +00:00
*/--------------------------------------
* # SListFree
* ## ASM
2021-05-09 12:39:40 +00:00
* `lda hSList`
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListFree`
* ## RETURN VALUE
*\--------------------------------------
2023-11-12 13:20:15 +00:00
K.SListFree .EQ JMP.X
2020-02-18 15:34:56 +00:00
*/--------------------------------------
* # SListNew
* ## ASM
* `lda Opt`
2020-02-18 15:34:56 +00:00
* `>SYSCALL SListNew`
* ## RETURN VALUE
* A=hSList
*\--------------------------------------
2023-11-12 13:20:15 +00:00
K.SListNew .EQ JMP.X
2020-02-18 15:34:56 +00:00
*--------------------------------------
MAN
2020-12-15 13:23:22 +00:00
SAVE usr/src/sys/kernel.s.slist
LOAD usr/src/sys/kernel.s
2020-02-18 15:34:56 +00:00
ASM