NEW AUTO 3,1 *-------------------------------------- ZPDRV .EQ $20 32 bytes ZPLIB .EQ $40 32 bytes *-------------------------------------- CORE.PSIndex .EQ $D0 CORE.PSCount .EQ $D1 pPS .EQ $D2 pEvent .EQ $D4 hHandler .EQ $D6 * .EQ $D7 *-------------------------------------- * PS Context : 40 bytes MAX *-------------------------------------- pCode .EQ $D8 pData .EQ $DA pStack .EQ $DC pBase .EQ $DE 8 Bytes ZPBIN .EQ $E0 32 bytes PSCTX.SIZE .EQ $100-pCode *-------------------------------------- A2osX.ZCALL .EQ $0000 *-------------------------------------- * A2osX GLOBAL PAGE * $BC00->$BC0F : Public Vectors *-------------------------------------- A2osX.SYSCALL .EQ $BC00 A2osX.LIBCALL .EQ $BC03 A2osX.ATKCALL .EQ $BC06 A2osX.FPUCALL .EQ $BC09 A2osX.BADCALL .EQ $BC0C *-------------------------------------- A2osX.SLEEP .EQ $BC10 *-------------------------------------- * $BED0->$BEEF : Public Variables *-------------------------------------- A2osX.SCRNDEVS .EQ $BED0 0=console, 1-8=VT100, 9=GFX A2osX.ASCREEN .EQ $BEDA Active Screen * free BEDB -> BEDF A2osX.KVER .EQ $BEE0 A2osX.IRQMode .EQ $BEE3 A2osX.ATLKSID .EQ $BEE4 A2osX.FSID .EQ $BEE5 A2osX.CPUTYPE .EQ $BEE6 A2osX.CPUSPEED .EQ $BEE7 WORD, (->255.99 Mhz) A2osX.Z80SLOT .EQ $BEE9 A2osX.HWType .EQ $BEEA A2osX.HWType.UNKNOWN .EQ 0 A2osX.HWType.IIe .EQ 1 A2osX.HWType.IIc .EQ 2 A2osX.HWType.IIgs .EQ 3 A2osX.HWSubT .EQ $BEEB A2osX.HWSubT.Enh .EQ 1 A2osX.HWSubT.LCCard .EQ 2 A2osX.TIMER16 .EQ $BEEC WORD A2osX.RANDOM16 .EQ $BEEE WORD *-------------------------------------- * $BEF0->$BEFF : Kernel Config Block *-------------------------------------- A2osX.KCONFIG .EQ $BEF0 A2osX.HZ .EQ $BEF0 5/6 for 50/60Hz A2osX.TTYDEVS .EQ $BEF1 A2osX.F .EQ $BEF8 A2osX.F.CHROOT .EQ %10000000 ChRooting to /RAMx A2osX.F.PMODE .EQ %01000000 Pre-emptive Mode A2osX.S .EQ $BEF8 $BEF9->$BEFF, 7 slots A2osX.S.Z80 .EQ $80 A2osX.S.VXDRIVE .EQ $81 A2osX.S.ATCARD .EQ $82 A2osX.S.DII .EQ $C0 A2osX.S.BLK .EQ $C1 A2osX.S.SP .EQ $C2 A2osX.S.COM .EQ $E0 A2osX.S.XY .EQ $E1 A2osX.S.NIC .EQ $E2 A2osX.S.CLK .EQ $E3 A2osX.S.SND .EQ $E4 A2osX.S.DISABLE .EQ $FF *-------------------------------------- * NON BLOCKING Entry point (From libs) *-------------------------------------- A2osX.SYSCALL2 .EQ $E200 *-------------------------------------- * ProDOS ERROR CODES : $00->$5F * Kernel ERROR CODES : $60->$7F * Lib ERROR CODES : $80->$BF *-------------------------------------- E.NODATA .EQ $FF No Data *-------------------------------------- E.CSYN .EQ $C0 E.ESYN .EQ $C1 E.STACKERROR .EQ $C2 E.STKOVERFLOW .EQ $C3 E.NOWHILE .EQ $C4 E.NOFOR .EQ $C5 E.NOIF .EQ $C6 E.BADFTYPE .EQ $C7 E.FUNDEF .EQ $C8 E.UNEXPEOF .EQ $C9 E.NODO .EQ $CA E.REDEF .EQ $CB * E.TMISMATCH .EQ $CF *-------------------------------------- E.OOM .EQ $7F Out Of Memory Error E.OOH .EQ $7E Out Of Handle Error E.INVH .EQ $7D Invalid Handle E.BUF .EQ $7C Buffer Overflow E.BADPATH .EQ $7B E.BADARG .EQ $7A E.NSP .EQ $79 No Such Process Error E.SYN .EQ $78 Syntax Error E.ENVF .EQ $77 Env is Full E.IBIN .EQ $76 Invalid BIN format E.FTB .EQ $75 File Too Big Error E.OOB .EQ $74 Out Of Bound E.INUM .EQ $73 Invalid Numerical E.STACK .EQ $72 Stack Error E.NOKEY .EQ $6F Undefined Key E.DUPKEY .EQ $6E Duplicate Key E.EMPTYKEY .EQ $6D No Data for this key E.DATALEN .EQ $6C Data Length Mismatch E.IPWDDB .EQ $68 Invalid PWD database E.IUSR .EQ $67 Invalid User E.DUPUSR .EQ $66 Duplicate User *-------------------------------------- * A2osX.SYSCALL Constants *-------------------------------------- C.ETX .EQ 3 Ctrl-C C.EOF .EQ 4 Ctrl-D C.ENQ .EQ 5 C.BEL .EQ 7 Ctrl.G C.BS .EQ 8 C.TAB .EQ 9 C.LF .EQ 10 C.VT .EQ 11 C.FF .EQ 12 C.CR .EQ 13 C.SO .EQ 14 C.SI .EQ 15 C.XON .EQ 17 C.XOFF .EQ 19 C.FS .EQ 21 C.ESC .EQ 27 C.SPACE .EQ 32 C.DEL .EQ 127 *-------------------------------------- AF.LOCAL .EQ 0 AF.INET .EQ 2 AF.APPLETALK .EQ 4 *-------------------------------------- O.RDONLY .EQ %00000001 O.WRONLY .EQ %00000010 O.RDWR .EQ %00000011 O.TRUNC .EQ %00000100 O.APPEND .EQ %00001000 O.TEXT .EQ %01000000 O.CREATE .EQ %10000000 *-------------------------------------- SEEK.SET .EQ $00 SEEK.CUR .EQ $01 SEEK.END .EQ $02 *-------------------------------------- SL.. .EQ %10000000 SL._ .EQ %01000000 SL.NoCase .EQ %01000010 SL.EndDollar .EQ %00000001 *-------------------------------------- * A2osX.SYSCALL Functions Indexes *--------------------------------------D1 * STAT * .EQ $00 SYS.ChMod .EQ $02 SYS.FStat .EQ $04 SYS.Stat .EQ $06 SYS.MKDir .EQ $08 SYS.MKNod .EQ $0A SYS.MKFIFO .EQ $0C SYS.Pipe .EQ $0E * DIRENT SYS.OpenDir .EQ $10 SYS.ReadDir .EQ $12 SYS.CloseDir .EQ $14 * UNISTD SYS.Open .EQ $16 SYS.Close .EQ $18 SYS.Read .EQ $1A SYS.Write .EQ $1C SYS.ChOwn .EQ $1E * STDIO SYS.FPutC .EQ $20 SYS.PutChar .EQ $22 SYS.GetC .EQ $24 SYS.GetChar .EQ $26 SYS.FPutS .EQ $28 SYS.PutS .EQ $2A SYS.FGetS .EQ $2C SYS.UngetC .EQ $2E SYS.FOpen .EQ $30 SYS.FClose .EQ $32 SYS.FRead .EQ $34 SYS.FWrite .EQ $36 SYS.FFlush .EQ $38 SYS.FSeek .EQ $3A SYS.FTell .EQ $3C SYS.FEOF .EQ $3E SYS.Remove .EQ $40 SYS.Rename .EQ $42 SYS.PrintF .EQ $44 SYS.FPrintF .EQ $46 SYS.SPrintF .EQ $48 SYS.ScanF .EQ $4A SYS.FScanF .EQ $4C SYS.SScanF .EQ $4E * .EQ $50 * .EQ $52 * .EQ $54 * .EQ $56 * PRODOS SYS.Online .EQ $58 SYS.ChTyp .EQ $5A SYS.ChAux .EQ $5C SYS.SetAttr .EQ $5E *--------------------------------------D2 * MOUNT SYS.Mount .EQ $60 SYS.UMount .EQ $62 * .EQ $64 SYS.GetStkObj .EQ $66 * ARG SYS.Shift .EQ $68 SYS.ArgV .EQ $6A SYS.ArgVDup .EQ $6C * ERROR SYS.GetErrMsg .EQ $6E * STDLIB SYS.AToF .EQ $70 SYS.AToI .EQ $72 SYS.AToL .EQ $74 SYS.StrToF .EQ $76 SYS.StrToL .EQ $78 SYS.StrToUL .EQ $7A SYS.RealPath .EQ $7C SYS.Expand .EQ $7E * STRING SYS.StrLen .EQ $80 SYS.StrCpy .EQ $82 SYS.StrCat .EQ $84 SYS.StrDup .EQ $86 SYS.StrUpr .EQ $88 SYS.StrLwr .EQ $8A SYS.StrCmp .EQ $8C SYS.StrCaseCmp .EQ $8E * DEV SYS.GetDevByName .EQ $90 SYS.MKFD .EQ $92 SYS.MKDev .EQ $94 SYS.IOCTL .EQ $96 * BIN SYS.LoadLib .EQ $98 SYS.UnloadLib .EQ $9A SYS.LoadDrv .EQ $9C SYS.InsDrv .EQ $9E * PS SYS.ExecL .EQ $A0 SYS.ExecV .EQ $A2 SYS.Fork .EQ $A4 SYS.Kill .EQ $A6 SYS.LoadFile .EQ $A8 SYS.LoadTxtFile .EQ $AA SYS.FileSearch .EQ $AC SYS.GetMemStat .EQ $AE *--------------------------------------E0/AUX * STRV / STRVX SYS.StrVNew .EQ $B0 SYS.StrVSet .EQ $B2 SYS.StrVGet .EQ $B4 SYS.StrVFree .EQ $B6 * ENV / ENVX SYS.PutEnv .EQ $B8 SYS.SetEnv .EQ $BA SYS.GetEnv .EQ $BC SYS.UnsetEnv .EQ $BE * TIME / TIMEX SYS.Time .EQ $C0 SYS.StrFTime .EQ $C2 SYS.PTime2Time .EQ $C4 SYS.CTime2Time .EQ $C6 * MD5 / MD5X SYS.MD5 .EQ $C8 SYS.MD5Init .EQ $CA SYS.MD5Update .EQ $CC SYS.MD5Finalize .EQ $CE * PWD / PWDX SYS.GetPWUID .EQ $D0 SYS.GetPWName .EQ $D2 SYS.PutPW .EQ $D4 SYS.GetGRGID .EQ $D6 SYS.GetGRName .EQ $D8 SYS.PutGR .EQ $DA SYS.OpenSession .EQ $DC SYS.CloseSession .EQ $DE * SLIST / SLISTX SYS.SListGetData .EQ $E0 SYS.SListAddData .EQ $E2 SYS.SListSetData .EQ $E4 SYS.SListGetByID .EQ $E6 SYS.SListNewKey .EQ $E8 SYS.SListLookup .EQ $EA SYS.SListFree .EQ $EC SYS.SListNew .EQ $EE *--------------------------------------F0 * MEM SYS.GetMem .EQ $F0 SYS.Realloc .EQ $F2 SYS.GetMemPtr .EQ $F4 SYS.FreeMem .EQ $F6 SYS.NewStkObj .EQ $F8 SYS.LoadStkObj .EQ $FA SYS.GetStkObjPtr .EQ $FC SYS.FreeStkObj .EQ $FE *-------------------------------------- * MEM STRUCT *-------------------------------------- S.MEM.F .EQ 0 S.MEM.F.INUSE .EQ %10000000 (Internal Flag) S.MEM.F.INIT0 .EQ %01000000 Fill with "0" S.MEM.F.NOCROSS .EQ %00100000 S.MEM.F.ALIGN .EQ %00010000 S.MEM.F.FD .EQ %00001000 S.MEM.F.CODE .EQ %00000100 S.MEM.F.DATA .EQ %00000010 S.MEM.F.STACK .EQ %00000001 S.MEM.REFCNT .EQ 1 S.MEM.OWNERPID .EQ 2 S.MEM.BIN .EQ 3 S.MEM.PTR .EQ 4 S.MEM.LEN .EQ 6 * S.MEM .EQ 8 *-------------------------------------- S.MSTAT.ML .EQ 0 S.MSTAT.MF .EQ 2 S.MSTAT.MH .EQ 4 S.MSTAT.MLast .EQ 6 * S.MSTAT.XL .EQ 8 S.MSTAT.XF .EQ 10 S.MSTAT.XH .EQ 12 S.MSTAT.XLast .EQ 14 * S.MSTAT.DL .EQ 16 S.MSTAT.DF .EQ 18 S.MSTAT.DH .EQ 20 S.MSTAT.DCount .EQ 22 * S.MSTAT .EQ 24 *-------------------------------------- * IOCTL device API *-------------------------------------- IOCTL.STATUS .EQ 0 X,Y = byte count returned IOCTL.READBLOCK .EQ 2 IOCTL.WRITEBLOCK .EQ 4 IOCTL.FORMAT .EQ 6 IOCTL.CONTROL .EQ 8 IOCTL.INIT .EQ 10 IOCTL.OPEN .EQ 12 IOCTL.CLOSE .EQ 14 IOCTL.READ .EQ 16 IOCTL.WRITE .EQ 18 IOCTL.IRQ .EQ 20 *-------------------------------------- S.IOCTL.CNT .EQ 0 S.IOCTL.UNITNUM .EQ 1 S.IOCTL.BUFPTR .EQ 2 S.IOCTL.S .EQ 4 1 BYTE S.IOCTL.S.STATUS .EQ 0 S.IOCTL.S.GETDCB .EQ 1 S.IOCTL.S.GETNL .EQ 2 S.IOCTL.S.GETDIB .EQ 3 S.IOCTL.S.EOF .EQ 4 S.IOCTL.C .EQ 4 1 BYTE S.IOCTL.C.RESET .EQ 0 S.IOCTL.C.SETDCB .EQ 1 S.IOCTL.C.SETNL .EQ 2 S.IOCTL.C.IRQ .EQ 3 S.IOCTL.C.EJECT .EQ 4 S.IOCTL.BLKNUM .EQ 4 3 BYTES S.IOCTL.BYTECNT .EQ 4 2 BYTES S.IOCTL.ADDRPTR .EQ 6 3 BYTES * S.IOCTL .EQ 9 *-------------------------------------- S.DCB.T .EQ 0 S.DCB.T.NIC .EQ $81 S.DCB.T.COM .EQ $82 S.DCB.T.GFX .EQ $83 S.DCB.T.SND .EQ $84 *-------------------------------------- S.DIB.S .EQ 0 S.DIB.S.BLOCK .EQ %10000000 S.DIB.S.WRITE .EQ %01000000 S.DIB.S.READ .EQ %00100000 S.DIB.S.ONLINE .EQ %00010000 S.DIB.S.NOFMT .EQ %00001000 S.DIB.S.WENABL .EQ %00000100 S.DIB.S.IRQ .EQ %00000010 S.DIB.S.OPENED .EQ %00000001 S.DIB.SIZE .EQ 1 3 bytes S.DIB.IDS .EQ 4 1 (LEN) + 16 MAX S.DIB.T .EQ 21 S.DIB.T.RAM .EQ $00 Memory Expansion Card (RAM disk) S.DIB.T.3.5 .EQ $01 3.5" disk S.DIB.T.PROFILE .EQ $02 ProFile-type hard disk S.DIB.T.GENSCSI .EQ $03 Generic SCSI S.DIB.T.ROM .EQ $04 ROM disk S.DIB.T.CDROM .EQ $05 SCSI CD-ROM S.DIB.T.TAPE .EQ $06 SCSI tape or other SCSI sequential device S.DIB.T.HD .EQ $07 SCSI hard disk * .EQ $08 Reserved *S.DIB.T.SPRINTER .EQ $09 SCSI printer S.DIB.T.5.25 .EQ $0A 5-1/4" disk * .EQ $0B Reserved * .EQ $0C Reserved *S.DIB.T.PRINTER .EQ $0D Printer *S.DIB.T.CLOCK .EQ $0E Clock *S.DIB.T.MODEM .EQ $0F Modem S.DIB.T.DISKII .EQ $10 S.DIB.T.PRODOS .EQ $11 S.DIB.T.NIC .EQ $12 Network Interface Card S.DIB.T.XY .EQ $13 X,Y Pointing Device S.DIB.T.CHAR .EQ $14 S.DIB.T.GFX .EQ $15 S.DIB.T.SND .EQ $16 S.DIB.ST .EQ 22 S.DIB.ST.EXT .EQ $80 S.DIB.ST.DSKSW .EQ $40 S.DIB.ST.NOREM .EQ $20 S.DIB.VERSION .EQ 23 word * S.DIB .EQ 25 *-------------------------------------- * S.FD *-------------------------------------- S.FD.T .EQ 0 S.FD.T.REG .EQ 0 S.FD.T.DIR .EQ 2 S.FD.T.CDEV .EQ 4 S.FD.T.BDEV .EQ 6 S.FD.T.LNK .EQ 8 S.FD.T.DSOCK .EQ 10 S.FD.T.SSOCK .EQ 12 S.FD.T.PIPE .EQ 14 S.FD.PFT .EQ 1 *-------------------------------------- S.FD.REG.REF .EQ 2 S.FD.REG.IOBUF .EQ 3 * S.FD.REG .EQ 16 *-------------------------------------- S.FD.DIR.EL .EQ 4 S.FD.DIR.EPB .EQ 5 S.FD.DIR.FC .EQ 6 word S.FD.DIR.ACL .EQ 8 57.00 S.FD.DIR.UID .EQ 10 S.FD.DIR.GID .EQ 12 S.FD.DIR.MODE .EQ 14 * S.FD.DIR .EQ 16 *-------------------------------------- S.FD.DEV.BUSID .EQ 2 S.FD.DEV.DEVID .EQ 3 S.FD.DEV.BUSPTR .EQ 4 word S.FD.DEV.DRVPTR .EQ 6 word S.FD.DEV.DCBPTR .EQ 8 word S.FD.DEV.BUFPTR .EQ 10 word * S.FD.DEV .EQ 12 *-------------------------------------- * S.FD.LNK *-------------------------------------- S.FD.DSOCK.IOH .EQ 2 S.FD.DSOCK.OPEN .EQ 3 S.FD.DSOCK.CLOSE .EQ 4 S.FD.DSOCK.READ .EQ 5 S.FD.DSOCK.WRITE .EQ 6 S.FD.DSOCK.EOF .EQ 7 * S.FD.DSOCK .EQ 8 *-------------------------------------- S.FD.SSOCK.IOH .EQ 2 S.FD.SSOCK.OPEN .EQ 3 S.FD.SSOCK.CLOSE .EQ 4 S.FD.SSOCK.READ .EQ 5 S.FD.SSOCK.WRITE .EQ 6 S.FD.SSOCK.EOF .EQ 7 * S.FD.SSOCK .EQ 8 *-------------------------------------- S.FD.PIPE.S .EQ 2 S.FD.PIPE.hMem .EQ 3 S.FD.PIPE.Tail .EQ 4 S.FD.PIPE.Head .EQ 6 S.FD.PIPE.Free .EQ 8 S.FD.PIPE.Used .EQ 10 S.FD.PIPE.Size .EQ 12 * S.FD.PIPE .EQ 14 *-------------------------------------- * PS STRUCT *-------------------------------------- S.PS.F .EQ 0 S.PS.F.HOLD .EQ %10000000 S.PS.F.SLEEP .EQ %01000000 S.PS.F.CLOSEONX .EQ %00000100 S.PS.F.EVENT .EQ %00000010 S.PS.F.NOHUP .EQ %00000001 S.PS.S .EQ 1 S.PS.S.INIT .EQ 0 S.PS.S.RUN .EQ 2 S.PS.S.DOEVENT .EQ 4 S.PS.S.QUIT .EQ 6 S.PS.PPID .EQ 2 S.PS.PID .EQ 3 S.PS.CPID .EQ 4 S.PS.hCS .EQ 5 S.PS.hDS .EQ 6 S.PS.hSS .EQ 7 *S.PS.ENVPAGECNT .EQ 8 S.PS.hENV .EQ 9 S.PS.hCWD .EQ 10 S.PS.hStdIn .EQ 11 S.PS.hStdOut .EQ 12 S.PS.hStdErr .EQ 13 S.PS.RC .EQ 14 S.PS.ARGC .EQ 15 S.PS.hARGV .EQ 16 S.PS.A .EQ 17 S.PS.X .EQ 18 S.PS.Y .EQ 19 S.PS.P .EQ 20 S.PS.PC .EQ 21 WORD S.PS.hSession .EQ 23 S.PS.ZP.CODE .EQ 24 S.PS.ZP.DATA .EQ 26 S.PS.ZP.STACK .EQ 28 S.PS.ZP.LOCAL .EQ 30 * S.PS .EQ 64 *-------------------------------------- * LIB Function Indexes *-------------------------------------- LIBMGR.LOAD .EQ 0 LIBMGR.UNLOAD .EQ 2 *-------------------------------------- * EVENT STRUCT *-------------------------------------- S.EVT.F .EQ 0 S.EVT.F.T10TH .EQ %10000000 S.EVT.F.T1SEC .EQ %01000000 S.EVT.F.hMEM2 .EQ %00100000 Indicates That S.EVT.B2 is a hMem S.EVT.F.hMEM1 .EQ %00010000 Indicates That S.EVT.B1 is a hMem *S.EVT.hDEV .EQ 1 S.EVT.B1 .EQ 2 S.EVT.B2 .EQ 3 S.EVT.W1 .EQ 4 S.EVT.W2 .EQ 6 * S.EVT .EQ 8 *-------------------------------------- S.TIME.CENTURY .EQ 0 19,20,21.... S.TIME.YEAR .EQ 1 0..99 S.TIME.MONTH .EQ 2 1..12 S.TIME.DAY .EQ 3 1..31 S.TIME.HOUR .EQ 4 0..23 S.TIME.MINUTE .EQ 5 0..59 S.TIME.SECOND .EQ 6 0..61 S.TIME.WDAY .EQ 7 1..7 * S.TIME .EQ 8 *-------------------------------------- * S.STAT *-------------------------------------- S.STAT.MODE .EQ 0 S.STAT.MODE.XO .EQ $0001 S.STAT.MODE.WO .EQ $0002 S.STAT.MODE.RO .EQ $0004 S.STAT.MODE.FO .EQ $0007 S.STAT.MODE.XG .EQ $0008 S.STAT.MODE.WG .EQ $0010 S.STAT.MODE.RG .EQ $0020 S.STAT.MODE.FG .EQ $0038 S.STAT.MODE.XU .EQ $0040 S.STAT.MODE.WU .EQ $0080 S.STAT.MODE.RU .EQ $0100 S.STAT.MODE.FU .EQ $01C0 *S.STAT.MODE.SST .EQ $0200 *S.STAT.MODE.SGID .EQ $0400 *S.STAT.MODE.SUID .EQ $0800 S.STAT.MODE.REG .EQ $0000 S.STAT.MODE.DIR .EQ $1000 S.STAT.MODE.CDEV .EQ $2000 S.STAT.MODE.BDEV .EQ $3000 *S.STAT.MODE.LNK .EQ $4000 S.STAT.MODE.DSOCK .EQ $5000 S.STAT.MODE.SSOCK .EQ $6000 S.STAT.MODE.FIFO .EQ $7000 S.STAT.DEV .EQ 2 WORD S.STAT.UID .EQ 4 WORD S.STAT.GID .EQ 6 WORD S.STAT.INO .EQ 8 QWORD S.STAT.NLINK .EQ 16 WORD S.STAT.SIZE .EQ 18 DWORD S.STAT.ATIME .EQ 22 S.TIME S.STAT.MTIME .EQ 30 S.TIME S.STAT.CTIME .EQ 38 S.TIME S.STAT.BLOCKS .EQ 46 DWORD S.STAT.BLKSIZE .EQ 50 WORD S.STAT.P.TYPE .EQ 52 BYTE S.STAT.P.AUXTYPE .EQ 53 WORD S.STAT.P.SLOT .EQ 55 BYTE S.STAT.P.DRIVE .EQ 56 BYTE S.STAT.P.DEVSTATUS .EQ 57 BYTE S.STAT.P.DEVCNFLCT .EQ 58 BYTE S.STAT.P.DEVBLOCKS .EQ 59 WORD S.STAT.FSID .EQ 61 BYTE S.STAT.P.ACCESS .EQ 62 BYTE * S.STAT .EQ 64 *-------------------------------------- S.PW.NAME .EQ 0 16+1 S.PW.PASSWD .EQ 17 32+1 S.PW.UID .EQ 50 S.PW.GID .EQ 51 S.PW.GECOS .EQ 52 64+1 S.PW.DIR .EQ 117 64+1 S.PW.SHELL .EQ 182 64+1 * S.PW .EQ 247 *-------------------------------------- S.GRP.NAME .EQ 0 16+1 S.GRP.GID .EQ 17 * S.GRP .EQ 18 *-------------------------------------- S.SESSION.P .EQ 0 S.SESSION.P.ROOT .EQ %10000000 S.SESSION.P.SYSADMIN .EQ %01000000 S.SESSION.UID .EQ 1 S.SESSION.GID .EQ 2 S.SESSION.NAME .EQ 3 *S.SESSION.GECOS .EQ 0 *S.SESSION.DIR .EQ 0 *S.SESSION.SHELL .EQ 0 * *-------------------------------------- MAN SAVE inc/a2osx.i