mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-20 03:31:42 +00:00
Kernel version 0.8 : DevMgr, moving to SmartPort, cont.
This commit is contained in:
parent
36d95641a8
commit
75750babe2
@ -128,6 +128,7 @@ A2osX.RANDOM16 .EQ $BEEE
|
||||
* $BEF0->$BEFF : Kernel Config Block
|
||||
*--------------------------------------
|
||||
A2osX.HZ .EQ $BEF0
|
||||
A2osX.RAMDRVDIS .EQ $BEF8 If $80, prevent CHrooting to /RAMx
|
||||
A2osX.SLOTS .EQ $BEF8 $BEF9->$BEFF, 7 slots
|
||||
*--------------------------------------
|
||||
H.BIN.HEADER .EQ 0
|
||||
@ -245,8 +246,9 @@ SYS.GetDevByNameYA .EQ $82
|
||||
SYS.GetDevInfoA .EQ $84
|
||||
* .EQ $86
|
||||
|
||||
* .EQ $88
|
||||
* .EQ $8A
|
||||
*--------------------------------------
|
||||
SYS.MKNOD .EQ $88
|
||||
SYS.MKFIFO .EQ $8A
|
||||
* .EQ $8C
|
||||
* .EQ $8E
|
||||
*--------------------------------------
|
||||
@ -263,11 +265,6 @@ SYS.FreeStockObject .EQ $9E
|
||||
SYS.SetLoMem .EQ $A0
|
||||
SYS.GetMemStatYA .EQ $A2
|
||||
*--------------------------------------
|
||||
* TO DO :
|
||||
*--------------------------------------
|
||||
SYS.MKNOD .EQ $FF
|
||||
SYS.MKFIFO .EQ $FF
|
||||
*--------------------------------------
|
||||
* ProDOS ERROR CODES : $00->$5F
|
||||
* Lib ERROR CODES : $80->$BF
|
||||
* Kernel ERROR CODES : $C0->$FF
|
||||
@ -308,7 +305,7 @@ S.MEM.LEN .EQ 6
|
||||
*
|
||||
S.MEM .EQ 8
|
||||
*--------------------------------------
|
||||
* DEV STRUCT
|
||||
* DEVMGR (old API)
|
||||
*--------------------------------------
|
||||
S.DEV.CODE .EQ 0 cld,jmp...
|
||||
S.DEV.JMP .EQ 2 ...(code,x)
|
||||
@ -365,6 +362,55 @@ DEVMGR.GFX.GETPIXEL .EQ 16
|
||||
DEVMGR.GFX.HLINE .EQ 18
|
||||
DEVMGR.GFX.VLINE .EQ 20
|
||||
DEVMGR.GFX.BITBLT .EQ 22
|
||||
*--------------------------------------
|
||||
* DEVMGR (new API) = Smartport DIB
|
||||
*--------------------------------------
|
||||
* JMP :
|
||||
* DEVID :
|
||||
* 00->0F : NUL,SYS & loadable drivers
|
||||
* X0 : X=Slot : Controller
|
||||
* XY : X=Slot, Y=Device (<$80)
|
||||
* > $80 : IDs for PIPE,SOCK....
|
||||
*--------------------------------------
|
||||
S..DEV.JMP .EQ 0
|
||||
S..DEV.DEVID .EQ 2
|
||||
S..DEV.FLAGS .EQ 3
|
||||
S..DEV.FLAGS.IRQ .EQ %10000000
|
||||
S..DEV.FLAGS.TYPE .EQ %00110000
|
||||
S..DEV.FLAGS.TYPE.DRV .EQ %00000000
|
||||
S..DEV.FLAGS.TYPE.BLK .EQ %00010000
|
||||
S..DEV.FLAGS.TYPE.SP .EQ %00100000
|
||||
S..DEV.FLAGS.NAMELEN .EQ %00001111
|
||||
S..DEV.NAME .EQ 4
|
||||
S..DEV .EQ 8
|
||||
*--------------------------------------
|
||||
DEVMGR..STATUS .EQ 0
|
||||
DEVMGR..READBLOCK .EQ 1
|
||||
DEVMGR..READBLOCK .EQ 2
|
||||
DEVMGR..FORMAT .EQ 3
|
||||
DEVMGR..CONTROL .EQ 4
|
||||
DEVMGR..INIT .EQ 5
|
||||
DEVMGR..OPEN .EQ 6
|
||||
DEVMGR..CLOSE .EQ 7
|
||||
DEVMGR..READ .EQ 8
|
||||
DEVMGR..WRITE .EQ 9
|
||||
*--------------------------------------
|
||||
S.DEVSTAT.STATUS .EQ 0
|
||||
S.DEVSTAT.STATUS.BLOCK .EQ %10000000
|
||||
S.DEVSTAT.STATUS.WRITE .EQ %01000000
|
||||
S.DEVSTAT.STATUS.READ .EQ %00100000
|
||||
S.DEVSTAT.STATUS.ONLINE .EQ %00010000
|
||||
S.DEVSTAT.STATUS.NOFMT .EQ %00001000
|
||||
S.DEVSTAT.STATUS.WENABL .EQ %00000100
|
||||
S.DEVSTAT.STATUS.IRQ .EQ %00000010
|
||||
S.DEVSTAT.STATUS.OPENED .EQ %00000001
|
||||
S.DEVSTAT.SIZE .EQ 1
|
||||
S.DEVSTAT.IDSTRING .EQ 4 1 (LEN) + 16 MAX
|
||||
S.DEVSTAT.TYPE .EQ 21
|
||||
S.DEVSTAT.SUBTYPE .EQ 22
|
||||
S.DEVSTAT.VERSION .EQ 23
|
||||
*--------------------------------------
|
||||
|
||||
*--------------------------------------
|
||||
* PS STRUCT
|
||||
*--------------------------------------
|
||||
|
@ -99,6 +99,29 @@ K.GetDevInfoA jsr K.GetDevByIDA
|
||||
>STYA ZPQuickPtr1
|
||||
ldx #DEVMGR.GETINFO
|
||||
jmp (ZPQuickPtr1)
|
||||
*/--------------------------------------
|
||||
* #MkNodYA
|
||||
* return a S.FILE from a given device
|
||||
* ##IN:
|
||||
* Y,A=DevName
|
||||
* ##OUT:
|
||||
* CC = OK, CS = ERROR
|
||||
* A = hFILE
|
||||
*\--------------------------------------
|
||||
K.MkNodYA
|
||||
clc
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* #MkFIFO
|
||||
* return a S.FILE
|
||||
* ##IN:
|
||||
* ##OUT:
|
||||
* CC = OK, CS = ERROR
|
||||
* A = hFILE
|
||||
*\--------------------------------------
|
||||
K.MkFIFO
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE SYS/KERNEL.S.DEV
|
||||
|
Loading…
Reference in New Issue
Block a user