A2osX/SYS/KERNEL.S.PRODOS.txt

89 lines
2.0 KiB
Plaintext
Raw Normal View History

NEW
AUTO 3,1
2022-03-18 17:59:39 +00:00
*/--------------------------------------
* # Online
* Get ProDOS Volume Info
* ## C
* `int online(short int volid, void *buf);`
* ## ASM
* `>PUSHB volid`
* `>PUSHW buf`
* `>SYSCALL Online`
* ## RETURN VALUE
*\--------------------------------------
K.Online >PULLW K.MLI.PARAMS+2
>PULLB K.MLI.PARAMS+1
>MLICALL MLIONLINE
rts
*/--------------------------------------
* # ChTyp
2022-03-18 17:59:39 +00:00
* Change Type of a ProDOS File
* ## C
* `int chtyp(const char *filepath, short int filetype);`
* ## ASM
* `>PUSHW filepath`
* `>PUSHB filetype`
* `>SYSCALL ChTyp`
* ## RETURN VALUE
*\--------------------------------------
K.ChTyp jsr PFT.CheckPath1
bcs PRODOS.RET3
>MLICALL MLIGETFILEINFO
bcs PRODOS.RET3
>PULLB K.MLI.PARAMS+S.FI.T
bra PRODOS.SFIRET2
*/--------------------------------------
* # ChAux
2022-03-18 17:59:39 +00:00
* Change AuxType of a ProDOS File
* ## C
* `int chaux(const char *filepath, int auxtype);`
* ## ASM
* `>PUSHW filepath`
2022-03-18 17:59:39 +00:00
* `>PUSHW auxtype`
* `>SYSCALL ChAux`
* ## RETURN VALUE
*\--------------------------------------
K.ChAux jsr PFT.CheckPath2
bcs PRODOS.RET4
>MLICALL MLIGETFILEINFO
bcs PRODOS.RET4
>PULLW K.MLI.PARAMS+S.FI.AUXTYPE
bra PRODOS.SFIRET2
*/--------------------------------------
* # SetAttr
* Change Attributes of a ProDOS File
* ## C
* `int setattr(const char *filepath, short int attributes);`
* ## ASM
* `>PUSHW filepath`
* `>PUSHB attributes`
* `>SYSCALL setattr`
* ## RETURN VALUE
*\--------------------------------------
K.SetAttr jsr PFT.CheckPath1
bcs PRODOS.RET3
>MLICALL MLIGETFILEINFO
bcs PRODOS.RET3
>PULLB K.MLI.PARAMS+S.FI.A
PRODOS.SFIRET2 >MLICALL MLISETFILEINFO
bra PRODOS.RET2
PRODOS.RET4 inc pStack
PRODOS.RET3 inc pStack
PRODOS.RET2 inc pStack
inc pStack
rts
*--------------------------------------
MAN
SAVE usr/src/sys/kernel.s.prodos
LOAD usr/src/sys/kernel.s
ASM