KERNEL:changes for most compilers

This commit is contained in:
burniouf 2022-11-02 07:54:30 +01:00
parent b757926227
commit 3d241a05d8
89 changed files with 3024 additions and 2735 deletions

Binary file not shown.

View File

@ -91,9 +91,9 @@ CS.RUN
.4
bit bFast ; did they want us to switch to fast mode?
bpl .5 ; no, so go check next possibility
>PUSHW L.MSG.FAST ; push address for fast mode message
>PUSHBI 0
>SYSCALL PrintF ; print fast mode msg
>LDYA L.MSG.FAST ; push address for fast mode message
>SYSCALL PutS ; print fast mode msg
jsr CS.RUN.SetFastMode ; call fast mode routine
jmp .99 ; jump to successful exit
@ -101,17 +101,15 @@ CS.RUN
.5
bit bSlow ; did they want us to switch to slow mode?
bpl .9 ; no, so go display usage
>PUSHW L.MSG.SLOW ; push address for slow mode message
>PUSHBI 0
>SYSCALL PrintF ; print slow mode message
>LDYA L.MSG.SLOW ; push address for slow mode message
>SYSCALL PutS ; print slow mode message
jsr CS.RUN.SetSlowMode ; call slow mode routine
jmp .99 ; jump to successful exit
*--- Display usage and error out ------
.9
>PUSHW L.MSG.USAGE ; push address for usage text
>PUSHBI 0
>SYSCALL PrintF ; print usage message
>LDYA L.MSG.USAGE ; push address for usage text
>SYSCALL PutS ; print usage message
lda #E.SYN ; set OS return code as Syntax Error
sec ; indicate we don't want CS.RUN called again
rts ; return to OS
@ -216,11 +214,11 @@ CS.RUN.SetSlowMode
*--------------------------------------
CS.END
*--------------------------------------
MSG.USAGE .AS "Usage : ACC\r\n"
.AS " -F : Fast speed\r\n"
.AZ " -S : Slow speed\r\n"
MSG.MSG.FAST .AZ "FAST mode enabled\r\n"
MSG.MSG.SLOW .AZ "SLOW mode enabled\r\n"
MSG.USAGE .CS "Usage : ACC\r\n"
.CS " -F : Fast speed\r\n"
.CZ " -S : Slow speed\r\n"
MSG.MSG.FAST .CZ "FAST mode enabled"
MSG.MSG.SLOW .CZ "SLOW mode enabled"
*--------------------------------------
OptionList .AS "FfSs"
OptionVars .DA #bFast,#bFast,#bSlow,#bSlow

View File

@ -496,6 +496,7 @@ CORE.CreateLabel
*--------------------------------------
CORE.GetLabel >PUSHB.G hLabels
>PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .9
@ -592,6 +593,7 @@ CORE.NewVarKey >LDA.G hVars
CORE.NewKey >PUSHA
>PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .9
@ -609,6 +611,7 @@ CORE.GetAddr >PUSHA
>PUSHA for SListGetData
>PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .9

View File

@ -205,6 +205,7 @@ EXP.VARLookup >LDA.G hVars
>PUSHA for SListGetData/SListAddData
>PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .3

View File

@ -505,37 +505,31 @@ CCODE.TESTTRUE.LEN .EQ *-CCODE.TESTTRUE
*--------------------------------------
* Initialized DATA
*--------------------------------------
MSG.GREETINGS .AZ "\r\nACOS-Shell %d.%d\r\n\r\n"
MSG.USAGE .AS "Usage : ACOS <option> file\r\n"
.AS " -D : Debug Mode\r\n"
.AS " -T : Trace On"
.AZ "\r\n"
MSG.GREETINGS .CZ "\r\nACOS-Shell %d.%d\r\n\r\n"
MSG.USAGE .CS "Usage : ACOS <option> file\r\n"
.CS " -D : Debug Mode\r\n"
.CS " -T : Trace On"
OUT.CRLF .CZ "\r\n"
*--------------------------------------
MSG.COMPILING .AZ "***Compiling : %s...\r\n"
MSG.DEBUG .AZ "***CodePtr=%H DataPtr=%H StackPtr=%H\r\n"
MSG.TRACE .AZ "%05D>%s\r\n"
MSG.ERROR .AZ " %s^\r\n"
MSG.FWREF .AZ "***Resolving FWRefs..."
MSG.FWREFERR .AZ "***Unresolved FWRef : %s\r\n"
MSG.RUN .AZ "***Code size: %D, Data Size: %D, Running...\r\n"
MSG.STR .AZ "%s"
MSG.INT16 .AZ "%I"
MSG.COMPILING .CZ "***Compiling : %s...\r\n"
MSG.DEBUG .CZ "***CodePtr=%H DataPtr=%H StackPtr=%H\r\n"
MSG.TRACE .CZ "%05D>%s\r\n"
MSG.ERROR .CZ " %s^\r\n"
MSG.FWREF .CZ "***Resolving FWRefs..."
MSG.FWREFERR .CZ "***Unresolved FWRef : %s\r\n"
MSG.RUN .CZ "***Code size: %D, Data Size: %D, Running...\r\n"
MSG.STR .CZ "%s"
MSG.INT16 .CZ "%I"
*--------------------------------------
OUT.ELW .DA #C.ESC
.AZ "[?7h" Enable Line Wrap
OUT.DLW .DA #C.ESC
.AZ "[?7l" Disable Line Wrap
OUT.CRLF .DA #C.CR,#C.LF,#0
OUT.BSSPBS .DA #C.BS,#C.SPACE,#C.BS,#0
OUT.CLRSCR .DA #C.ESC
.AS "c"
.DA #C.ESC
.AS "(B"
.DA #C.ESC
.AZ ")0"
OUT.ELW .CZ "\e[?7h" Enable Line Wrap
OUT.DLW .CZ "\e[?7l" Disable Line Wrap
OUT.BSSPBS .CZ "\b \b"
OUT.CLRSCR .CS "\ec"
.CS "\e(B"
.CZ "\e)0"
*--------------------------------------
FMT.DATE .AZ "%m/%d/%y"
FMT.TIME .AZ "%H:%M:%S"
FMT.DATE .CZ "%m/%d/%y"
FMT.TIME .CZ "%H:%M:%S"
*--------------------------------------
OptionList .AS "DdTt"
OptionVars .DA #bDebug,#bDebug,#bTrace,#bTrace

View File

@ -66,6 +66,7 @@ CS.RUN >LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
lda (pPS),y
cmp #1
bcs .2
jmp CS.RUN.DUMP
.2 lda #1
@ -88,9 +89,8 @@ CS.RUN >LIBCALL hLIBTCPIP,LIBTCPIP.GETCFG
bne CS.RUN.ERR
jmp CS.RUN.ADD
CS.RUN.ERR >PUSHW L.MSG.Usage
>PUSHBI 0
>SYSCALL PrintF
CS.RUN.ERR >LDYA L.MSG.Usage
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -101,13 +101,17 @@ CS.RUN.QUERY jsr Init.Timeout
>PUSHEA.G DST.IP
>LIBCALL hLIBTCPIP,LIBTCPIP.ARP.Query
bcc .2 success, print & exit
jsr Wait.TimeOut
bcs .8
>SLEEP
>SYSCALL GetChar
bcs .1
cmp #3
beq .9
bra .1
.2 >PUSHW L.MSG2
@ -130,7 +134,9 @@ CS.RUN.QUERY jsr Init.Timeout
>PUSHBI 10
>SYSCALL PrintF
.8 lda #0
.9 sec
rts
*--------------------------------------
@ -151,8 +157,10 @@ CS.RUN.ADD lda #2
>PUSHEA.G DST.MAC
>PUSHEA.G DST.IP
>LIBCALL hLIBTCPIP,LIBTCPIP.ARP.Add
clc
.8 rts
rts
.9 jmp CS.RUN.ERR
*--------------------------------------
CS.RUN.DUMP >LIBCALL hLIBTCPIP,LIBTCPIP.ARP.GetCache
@ -213,8 +221,10 @@ CS.DOEVENT lda (pEvent)
ldy #TimeOut
lda (pData),y
beq .9
dec
sta (pData),y
.9 sec do not discard TIMER event
rts
*--------------------------------------
@ -222,6 +232,7 @@ CS.QUIT lda hLIBTCPIP
beq .8
>SYSCALL UnloadLib
.8 clc
rts
*--------------------------------------
@ -234,20 +245,22 @@ Wait.TimeOut sec
ldy #TimeOut
lda (pData),y
beq .9
clc
.9 rts
*--------------------------------------
CS.END
LIBTCPIP .AZ "libtcpip"
hLIBTCPIP .BS 1
SSCANF.IP .AZ "%d.%d.%d.%d"
SSCANF.MAC .AZ "%h:%h:%h:%h:%h:%h"
MSG.Usage .AS "Usage : ARP, display ARP cache\r\n"
.AS " ARP ip.ip.ip.ip query cache or network\r\n"
.AZ " ARP ip.ip.ip.ip HH:HH:HH:HH:HH:HH add a static ARP record in Cache\r\n"
MSG0 .AZ "STS TTL MAC Address IP Address"
MSG1 .AZ "$%h %5D %h:%h:%h:%h:%h:%h %d.%d.%d.%d\r\n"
MSG2 .AZ "%d.%d.%d.%d is at %h:%h:%h:%h:%h:%h\r\n"
hLIBTCPIP .BS 1
MSG.Usage .CS "Usage : ARP display ARP cache\r\n"
.CS " ARP ip.ip.ip.ip query cache or network\r\n"
.CZ " ARP ip.ip.ip.ip HH:HH:HH:HH:HH:HH add a static ARP record in cache\r\n"
MSG0 .CZ "STS TTL MAC Address IP Address"
MSG1 .CZ "$%h %5D %h:%h:%h:%h:%h:%h %d.%d.%d.%d\r\n"
MSG2 .CZ "%d.%d.%d.%d is at %h:%h:%h:%h:%h:%h\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -627,6 +627,7 @@ DIR.MA >LDA.G ASM.MA.ON
>PUSHB.G MAC.hList
>PUSHW ZPLinePtr
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .99

View File

@ -195,6 +195,7 @@ MAC.Exec jsr SRC.GetNextChar skip '>'
>PUSHB.G MAC.hList
>PUSHW ZPLinePtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .90

View File

@ -51,6 +51,7 @@ SYM.NewGlobal >LDA.G ASM.PASS
>PUSHB.G SYM.hList
>PUSHW ZPLinePtr Pass #1: try to add global...
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .9 Already Defined
@ -87,6 +88,7 @@ SYM.NewGlobal.RTS
*---------------------------------------
SYM.GetGlobal >PUSHB.G SYM.hList Pass #2: should be already defined...
>PUSHW ZPLinePtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs SYM.NewGlobal.RTS
@ -143,6 +145,7 @@ SYM.GetGlobal >PUSHB.G SYM.hList Pass #2: should be already defined...
SYM.LookupGlobal
>PUSHB.G SYM.hList
>PUSHW ZPLinePtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .4

View File

@ -89,9 +89,8 @@ CS.RUN jsr CS.RUN.GetInfo
sec
.9 rts
*--------------------------------------
CS.RUN.USAGE >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
CS.RUN.USAGE >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
@ -326,16 +325,16 @@ CS.QUIT lda hReplyBuf
rts
*--------------------------------------
CS.END
MSG.USAGE .AZ "Usage : ATMOUNT [VOLUME]"
MSG.NOATK .AZ "AppleTalk Not Loaded."
MSG.NOSESSION .AZ "No Active AppleTalk Session."
MSG.ATKERR .AZ "AppleTalk Call %h, ERR:%H\r\n"
MSG.GETINFO .AS "Network/Node:%H/%h\r\n"
.AS "Bridge : %h\r\n"
.AZ "HWID/ROMVER :%H/%h\r\n"
MSG.VOLLIST .AZ "Flags Volume Name"
MSG.VOL .AZ "%b %S\r\n"
MSG.MOUNTED .AZ "Volume %S Mounted as s%dd%d\r\n"
MSG.USAGE .CZ "Usage : ATMOUNT [VOLUME]"
MSG.NOATK .CZ "AppleTalk Not Loaded."
MSG.NOSESSION .CZ "No Active AppleTalk Session."
MSG.ATKERR .CZ "AppleTalk Call %h, ERR:%H\r\n"
MSG.GETINFO .CS "Network/Node:%H/%h\r\n"
.CS "Bridge : %h\r\n"
.CZ "HWID/ROMVER :%H/%h\r\n"
MSG.VOLLIST .CZ "Flags Volume Name"
MSG.VOL .CZ "%b %S\r\n"
MSG.MOUNTED .CZ "Volume %S Mounted as s%dd%d\r\n"
*--------------------------------------
FPGetSrvrParms .DA #16
FPGetSrvrParms.Len .EQ *-FPGetSrvrParms

View File

@ -83,9 +83,8 @@ CS.RUN dec AttrAND set mask = $ff
.1 jsr CS.RUN.CheckSwitch
bcc CS.RUN
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -406,10 +405,14 @@ CS.QUIT jsr LeaveSubDir
bcc CS.QUIT
>LDA.G hFilter
beq .1
>SYSCALL FreeMem
.1 >LDA.G hSrcFullPath
beq .8
>SYSCALL FreeMem
.8 clc
rts
*--------------------------------------
@ -425,22 +428,22 @@ AttrMask .DA #S.FI.A.D,#S.FI.A.RN,#S.FI.A.B,#S.FI.A.I,#S.FI.A.W,#S.FI.A.R
*--------------------------------------
ATTRS .AS "DeReBn----InWrRd"
*--------------------------------------
MSG.USAGE .AS "Usage : ATTR File(s) (*,? wildcards allowed)\r\n"
.AS " -C : Continue on error\r\n"
.AS " -R : Recurse subdirectories\r\n"
.AS "+|-De : Destroy enable\r\n"
.AS "+|-Re : Rename enable\r\n"
.AS "+|-Bn : Backup needed\r\n"
.AS "+|-In : Invisible\r\n"
.AS "+|-Wr : Write enable\r\n"
.AZ "+|-Rd : Read enable\r\n"
MSG.USAGE .CS "Usage : ATTR File(s) (*,? wildcards allowed)\r\n"
.CS " -C : Continue on error\r\n"
.CS " -R : Recurse subdirectories\r\n"
.CS "+|-De : Destroy enable\r\n"
.CS "+|-Re : Rename enable\r\n"
.CS "+|-Bn : Backup needed\r\n"
.CS "+|-In : Invisible\r\n"
.CS "+|-Wr : Write enable\r\n"
.CZ "+|-Rd : Read enable\r\n"
*--------------------------------------
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.DIRDUMP .AZ "%s %s/\r\n"
MSG.FILEDUMP .AZ "%s %s\r\n"
MSG.DIR .AZ "Dir :%s..."
MSG.FILE .AZ "File:%s..."
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.DIRDUMP .CZ "%s %s/\r\n"
MSG.FILEDUMP .CZ "%s %s\r\n"
MSG.DIR .CZ "Dir :%s..."
MSG.FILE .CZ "File:%s..."
*--------------------------------------
.DUMMY
.OR 0

View File

@ -163,9 +163,8 @@ CS.RUN.ARGS inc ArgIndex
clc
.9 rts
.90 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.90 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec QUIT Process
@ -494,13 +493,13 @@ CS.END
*--------------------------------------
* Initialized DATA
*--------------------------------------
MSG.GREETINGS .AZ "\r\nBrainFuck-Shell %d.%d\r\n\r\n"
MSG.USAGE .AS "Usage : BF <option> file\r\n"
.AS " -D : Debug Mode\r\n"
.AS " -T : Trace On"
MSG.ECHOCRLF .AZ "\r\n"
MSG.DEBUG .AZ "pCode=%H, pData=%H(%h), pStack=%H\r\n"
MSG.ERR .AZ "-^\r\nLine #%D:"
MSG.GREETINGS .CZ "\r\nBrainFuck-Shell %d.%d\r\n\r\n"
MSG.USAGE .CS "Usage : BF <option> file\r\n"
.CS " -D : Debug Mode\r\n"
.CS " -T : Trace On"
MSG.ECHOCRLF .CZ "\r\n"
MSG.DEBUG .CZ "pCode=%H, pData=%H(%h), pStack=%H\r\n"
MSG.ERR .CZ "-^\r\nLine #%D:"
*--------------------------------------
OptionList .AS "DdTt"
OptionVars .DA #bDebug,#bDebug,#bTrace,#bTrace

View File

@ -516,9 +516,9 @@ CS.RUN.OpenInput
rts
*--------------------------------------
CS.RUN.ReadInput
>PUSHW ZPInputRowBytes
>PUSHB.G hInputFile
>PUSHW ZPInputBuf
>LDA.G hInputFile
>PUSHW ZPInputRowBytes
>SYSCALL FRead
bcs .9
@ -584,15 +584,15 @@ CS.RUN.WriteOutput
>LDA.G bNoHeader
bmi .1
>PUSHWI S.BM
>PUSHB.G hOutputFile
>PUSHEA.G PIX.Header
>LDA.G hOutputFile
>PUSHWI S.BM
>SYSCALL FWrite
bcs .9
.1 >PUSHW.G OutputDataLen
.1 >PUSHB.G hOutputFile
>PUSHW ZPOutputBuf
>LDA.G hOutputFile
>PUSHW.G OutputDataLen
>SYSCALL FWrite
.9 rts
*--------------------------------------
@ -701,11 +701,11 @@ CS.END
*--------------------------------------
OptionList .AS "VvHh"
OptionVars .DA #bVerbose,#bVerbose,#bNoHeader,#bNoHeader
MSG.USAGE .AS "Usage : BMP2PIX BMP-File \r\n"
.AZ " -V : Verbose Mode\r\n"
MSG.HEADER.OK .AZ "BMP Size : %D x %D pixels, %d bit(s)/pixel\r\n"
MSG.HEADER.KO .AZ "Invalid Input File Format"
MSG.DONE .AZ "All Done!!!"
MSG.USAGE .CS "Usage : BMP2PIX BMP-File\r\n"
.CZ " -V : Verbose Mode\r\n"
MSG.HEADER.OK .CZ "BMP Size : %D x %D pixels, %d bit(s)/pixel\r\n"
MSG.HEADER.KO .CZ "Invalid Input File Format"
MSG.DONE .CZ "All Done!!!"
*--------------------------------------
* LOWRES Patette : https://comp.sys.apple2.narkive.com/lTSrj2ZI/apple-ii-colour-rgb
*--------------------------------------

View File

@ -319,6 +319,7 @@ CC.GetDefine >LDA.G CC.hDefines
CC.SListLookup >PUSHA hSList
>PUSHA ...for SListGetData
>PUSHW ZPLineBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .99

View File

@ -166,9 +166,23 @@ CC.Link.Update ldy #SYM.Addr
>SYSCALL SListSetData
rts
*--------------------------------------
CC.Link.Dump >PUSHW L.MSG.LINKING2
CC.Link.Dump ldy #$ff
.1 iny
lda (pData),y
bne .1
iny
lda (pData),y
sta ZPPtr3
iny
lda (pData),y
sta ZPPtr3+1
>PUSHW L.MSG.LINKING2
>PUSHW ZPPtr1 ID
>PUSHW ZPPtr3 Scope
>PUSHW pData Name
@ -193,13 +207,14 @@ CC.Link.Dump >PUSHW L.MSG.LINKING2
dey
>PUSHB (ZPSymBufPtr),y
>PUSHBI 12
>PUSHBI 14
>SYSCALL PrintF
rts
*--------------------------------------
CC.Link.CheckMain
>PUSHB.G CC.hScopes
>PUSHW L.CC.MAIN
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .9

View File

@ -17,7 +17,7 @@ SYM.New >STYA ZPPtr2 T/Q
>PUSHB.G CC.hScopes Global Scope
>PUSHW ZPLineBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs SYM.New.9
@ -360,6 +360,7 @@ SYM.GetAddr2 ldy #SYM.SC
*--------------------------------------
SYM.NewKey >PUSHA
>PUSHW ZPLineBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .9
@ -467,7 +468,7 @@ SYM.NewA bit bPass2
>PUSHB.G CC.hScopes Global Scope
>PUSHEA.G CC.CPSPFX
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .99
@ -626,6 +627,7 @@ SYM.LookupA bit bPass2
>PUSHB.G CC.hScopes Global Scope
>PUSHEA.G CC.CPSPFX
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .99

View File

@ -258,7 +258,7 @@ TYPE.NewTag >LDA.G CC.hTags
*--------------------------------------
TYPE.GetTag >PUSHB.G CC.hTags
>PUSHW ZPLineBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .9

View File

@ -659,7 +659,7 @@ MSG.USAGE .CS "Usage : CC <option> srcfile.c dstfile\r\n"
.CZ " -L Libname1 -L Libname2 ...\r\n"
MSG.READING .CZ "*** Reading file: %s\r\n"
MSG.LINKING .CZ "*** Linking..."
MSG.LINKING2 .CZ "*** %H:%18s T/Q=%h/%h, SC=%h, Def=%h, SizeOf=%H, @=%H\r\n"
MSG.LINKING2 .CZ "*** %H:%H:%18s T/Q=%h/%h, SC=%h, Def=%h, SizeOf=%H, @=%H\r\n"
MSG.GENERATING .CZ "*** Generating: %s\r\n"
MSG.DEBUG .CS "*** pCode=%H, pConst=%H, pData=%H, pStack=%H\r\n"
.CZ " LSP=%h, CSP=%H:%h>%h:%h, ScopeIdx=%h\r\n"

View File

@ -91,9 +91,8 @@ CS.RUN inc ArgIndex
dex
bne .2
.99 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -341,15 +340,15 @@ CS.END
OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse,#bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : CHAUX auxtype [File *,? wildcards allowed]\r\n"
.AS " auxtype : 12345 (Decimal word) ,xABCD (Hexadecimal word)\r\n"
.AS " -C : Continue on error\r\n"
.AZ " -R : Recurse subdirectories\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.FILE .AZ "CHAUX File:%S..."
SSCANF.D .AZ "%D"
SSCANF.H .AZ "%H"
MSG.USAGE .CS "Usage : CHAUX auxtype [File *,? wildcards allowed]\r\n"
.CS " auxtype : 12345 (Decimal word) ,xABCD (Hexadecimal word)\r\n"
.CS " -C : Continue on error\r\n"
.CZ " -R : Recurse subdirectories\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.FILE .CZ "CHAUX File:%S..."
SSCANF.D .CZ "%D"
SSCANF.H .CZ "%H"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -73,9 +73,8 @@ CS.RUN >INC.G ArgIndex
dex
bpl .2
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -237,6 +236,7 @@ CS.RUN.GetGID >SYSCALL ArgV
.9 rts
*--------------------------------------
CS.RUN.CheckErr bcs .1
>LDYA L.MSG.OK
>SYSCALL PutS
rts
@ -287,13 +287,13 @@ CS.END
OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse,#bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : CHGRP groupname [File *,? wildcards allowed]\r\n"
.AS " -C : Continue on error\r\n"
.AZ " -R : Recurse subdirectories\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.DIR .AZ "Dir :%s..."
MSG.FILE .AZ "File:%s..."
MSG.USAGE .CS "Usage : CHGRP groupname [File *,? wildcards allowed]\r\n"
.CS " -C : Continue on error\r\n"
.CZ " -R : Recurse subdirectories\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.DIR .CZ "Dir :%s..."
MSG.FILE .CZ "File:%s..."
*--------------------------------------
.DUMMY
.OR 0

View File

@ -76,9 +76,8 @@ CS.RUN inc ArgIndex
dex
bpl .2
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts

View File

@ -73,9 +73,8 @@ CS.RUN >INC.G ArgIndex
dex
bpl .2
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -289,13 +288,13 @@ CS.END
OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse,#bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : CHOWN username [File *,? wildcards allowed]\r\n"
.AS " -C : Continue on error\r\n"
.AZ " -R : Recurse subdirectories\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.DIR .AZ "Dir :%s..."
MSG.FILE .AZ "File:%s..."
MSG.USAGE .CS "Usage : CHOWN username [File *,? wildcards allowed]\r\n"
.CS " -C : Continue on error\r\n"
.CZ " -R : Recurse subdirectories\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.DIR .CZ "Dir :%s..."
MSG.FILE .CZ "File:%s..."
*--------------------------------------
.DUMMY
.OR 0

View File

@ -89,9 +89,8 @@ CS.RUN inc ArgIndex
dex
bne .2
.99 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -403,13 +402,13 @@ CS.END
OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse,#bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : CHTYP type [File *,? wildcards allowed]\r\n"
.AS " type : 0xx (Hexadecimal byte),SYS,TXT...\r\n"
.AS " -C : Continue on error\r\n"
.AZ " -R : Recurse subdirectories\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.FILE .AZ "CHTYP File:%S..."
MSG.USAGE .CS "Usage : CHTYP type [File *,? wildcards allowed]\r\n"
.CS " type : 0xx (Hexadecimal byte),SYS,TXT...\r\n"
.CS " -C : Continue on error\r\n"
.CZ " -R : Recurse subdirectories\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.FILE .CZ "CHTYP File:%S..."
*--------------------------------------
PRODOS.FT.HEX .HS 0406FAFCFDCBCCCFFF
PRODOS.FT.TXT .AS "TXT"

View File

@ -77,9 +77,8 @@ CS.RUN
jsr CS.RUN.CheckOpt
bcc .1
.99 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.9 rts
@ -333,10 +332,10 @@ CS.END
OptionList .AS "AaVv"
OptionVars .DA #bAll,#bAll,#bVerbose,#bVerbose
*--------------------------------------
MSG.USAGE .AS "Usage : CMP File1 File2 [SKIP1 [SKIP2]]\r\n"
.AS " -A : Shows All differences\r\n"
.AZ " -V : Verbose Mode\r\n"
MSG.DIFF .AZ "%H%h:%h %h\r\n"
MSG.USAGE .CS "Usage : CMP File1 File2 [SKIP1 [SKIP2]]\r\n"
.CS " -A : Shows All differences\r\n"
.CZ " -V : Verbose Mode\r\n"
MSG.DIFF .CZ "%H%h:%h %h\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -780,6 +780,7 @@ CSH.tDecl >ENTER 2
*--------------------------------------
CSH.NewKey >PUSHA
>PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .9
@ -855,6 +856,7 @@ CSH.GetDefine >PUSHB.G CSH.hDefines
CSH.GetVar >PUSHB.G CSH.hSymbols
CSH.Get >PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .9

View File

@ -259,6 +259,7 @@ CSH.GetNumOnStack
CSH.VarLookup >PUSHB.G CSH.hSymbols
>PUSHW ZPInputBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs .9

View File

@ -75,9 +75,8 @@ CS.RUN.IPOK ldy #S.PS.ARGC
.1 cmp #2
beq CS.RUN.ADD
>PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
>LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
@ -188,15 +187,16 @@ CS.QUIT lda hLIBTCPIP
CS.END
LIBTCPIP .AZ "libtcpip"
hLIBTCPIP .BS 1
MSG.IPKO .AZ "TCP/IP Not Loaded/Configured."
SSCANF.IP .AZ "%d.%d.%d.%d"
MSG0 .AZ "Status TR.ID Hostname IP Address TTL"
MSG1 .AZ "%7s $%H %32s %03d.%03d.%03d.%03d %u\r\n"
MSG1.S .AZ "Static"
MSG1.P .AZ "Pending"
MSG1.D .AZ "Dynamic"
MSG.USAGE .AS "Usage : Add a static entry, DNSINFO <host> <IP>\r\n"
.AZ " Dump DNS Cache, DNSINFO\r\n"
*--------------------------------------
MSG.IPKO .CZ "TCP/IP Not Loaded/Configured."
MSG0 .CZ "Status TR.ID Hostname IP Address TTL"
MSG1 .CZ "%7s $%H %32s %03d.%03d.%03d.%03d %u\r\n"
MSG1.S .CZ "Static"
MSG1.P .CZ "Pending"
MSG1.D .CZ "Dynamic"
MSG.USAGE .CS "Usage : Add a static entry, DNSINFO <host> <IP>\r\n"
.CZ " Dump DNS Cache, DNSINFO\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -71,8 +71,7 @@ J.CS.RUN.PRINT .DA CS.RUN.PRINT.REG
CS.INIT clc
rts
*--------------------------------------
CS.RUN
stz bIsTTY
CS.RUN stz bIsTTY
jsr CS.RUN.ISATTY
.1 stz bDirLevel
@ -132,8 +131,7 @@ CS.RUN
>STYA ZPLineBuf
stx hLineBuf
*--------------------------------------
CS.RUN.LOOP
stz bPass2
CS.RUN.LOOP stz bPass2
.1 ldy #S.PS.hStdIn
lda (pPS),y
@ -221,7 +219,8 @@ CS.RUN.LOOP
CS.RUN.PRINT.JMP
jmp (J.CS.RUN.PRINT,x)
*--------------------------------------
CS.RUN.PRINT.REG bit bPass2
CS.RUN.PRINT.REG
bit bPass2
bmi .1
clc
rts
@ -290,7 +289,8 @@ CS.RUN.PRINT.REG bit bPass2
.8 clc
.9 rts
*--------------------------------------
CS.RUN.PRINT.DIR bit bPass2
CS.RUN.PRINT.DIR
bit bPass2
bmi .8
lda (ZPFileName)
@ -304,10 +304,12 @@ CS.RUN.PRINT.DIR bit bPass2
.8 clc
.9 rts
*--------------------------------------
CS.RUN.PRINT.CDEV clc
CS.RUN.PRINT.CDEV
clc
rts
*--------------------------------------
CS.RUN.PRINT.BDEV bit bPass2
CS.RUN.PRINT.BDEV
bit bPass2
bmi .8
>PUSHW L.MSG.BDEVEXT
@ -342,7 +344,8 @@ CS.RUN.PRINT.BDEV bit bPass2
.8 clc
.9 rts
*--------------------------------------
CS.RUN.PrintDirSumm >LEA.G BlkCounters
CS.RUN.PrintDirSumm
>LEA.G BlkCounters
>STYA ZPPtr1
lda bDirLevel
asl
@ -426,7 +429,6 @@ CS.QUIT jsr LeaveSubDir
.8 clc
rts
*--------------------------------------
.INB usr/src/shared/x.fileenum.s
*--------------------------------------
@ -435,15 +437,15 @@ CS.END
OptionList .AS "SAsa"
OptionVars .DA #bSummary,#bAllFiles,#bSummary,#bAllFiles
*--------------------------------------
MSG.USAGE .AS "Usage : DU [-A] [-S] [filespec]\r\n"
.AS " -A : Show all files (not only directories)\r\n"
.AZ " -S : Show only summary\r\n"
MSG.REG1 .AZ "%5u "
MSG.REG2 .AZ "%s"
MSG.CWD .AZ "%s"
MSG.DIRSUMM .AZ "%5u "
MSG.BDEVEXT .AZ "/%15s s%dd%d Blocks Used:%5D Total:%5D"
MSG.BDEV .AZ "\e[32m%s/\e[0m"
MSG.USAGE .CS "Usage : DU [-A] [-S] [filespec]\r\n"
.CS " -A : Show all files (not only directories)\r\n"
.CZ " -S : Show only summary\r\n"
MSG.REG1 .CZ "%5u "
MSG.REG2 .CZ "%s"
MSG.CWD .CZ "%s"
MSG.DIRSUMM .CZ "%5u "
MSG.BDEVEXT .CZ "/%15s s%dd%d Blocks Used:%5D Total:%5D"
MSG.BDEV .CZ "\e[32m%s/\e[0m"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -133,12 +133,10 @@ CS.RUN ldy #S.PS.ARGC
>STYA BlkCnt
bra .1
.99 >PUSHW L.MSG.USAGE1
>PUSHBI 0
>SYSCALL PrintF
>PUSHW L.MSG.USAGE2
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE1
>SYSCALL PutS
>LDYA L.MSG.USAGE2
>SYSCALL Puts
lda #E.SYN
sec
.9 rts
@ -654,9 +652,8 @@ CS.RUN.BuildCat jsr .7
>PUSHB AltBB
rts
*--------------------------------------
CS.RUN.WriteCat >PUSHW L.MSG.WRITECAT
>PUSHBI 0
>SYSCALL PrintF
CS.RUN.WriteCat >LDYA L.MSG.WRITECAT
>SYSCALL PutS
>STZ.G IOCTL+S.IOCTL.BLKNUM
iny
@ -772,27 +769,27 @@ CS.END
LIBBLKDEV .AZ "libblkdev"
hLIBBLKDEV .BS 1
*--------------------------------------
MSG.USAGE1 .AS "Usage : FORMAT <BLOCKDEV> [VOL.NAME]\r\n"
.AS " -L : Low-Level Format\r\n"
.AS "-L -V : Verify After LLF\r\n"
.AS " -B xxxx : Smrtprt, Override Device block size\r\n"
.AZ " -1-9 : Catalog Size (Blocks)\r\n"
MSG.USAGE2 .AS "------- ProDOS.FX only ------\r\n"
.AS " -H : 35trk drives, High Density: 48 tracks, 384 Blocks\r\n"
.AS " -X : 40trk drives, 320 Blocks\r\n"
.AS "-H -X : 40trk drives, 432 Blocks\r\n"
.AS " -D : Rana Elite II 640 Blocks, 2 Sides\r\n"
.AZ "-H -D : Rana Elite III 1280 Blocks, 2 Sides\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AS "[%h]"
MSG.CRLF .AZ "\r\n"
MSG.NOSIZE .AZ "Unable to get media size."
MSG.INIT .AZ "Formatting %s, Volname:%s\r\n"
MSG.LL .AZ "Low Level Format %D Blks\r\n"
MSG.LLDISK2 .AZ "\rWriting Head %d/Track %02d (%02d/%02d)..."
MSG.VERIFY .AZ "\rVerifying Head %d/Track %02d/Block %d (%05D)..."
MSG.WRITECAT .AZ "Writing Catalog..."
FMT.BLANK .AZ "BLANK%H%H"
MSG.USAGE1 .CS "Usage : FORMAT <BLOCKDEV> [VOL.NAME]\r\n"
.CS " -L : Low-Level Format\r\n"
.CS "-L -V : Verify After LLF\r\n"
.CS " -B xxxx : Smrtprt, Override Device block size\r\n"
.CZ " -1-9 : Catalog Size (Blocks)\r\n"
MSG.USAGE2 .CS "------- ProDOS.FX only ------\r\n"
.CS " -H : 35trk drives, High Density: 48 tracks, 384 Blocks\r\n"
.CS " -X : 40trk drives, 320 Blocks\r\n"
.CS "-H -X : 40trk drives, 432 Blocks\r\n"
.CS " -D : Rana Elite II 640 Blocks, 2 Sides\r\n"
.CZ "-H -D : Rana Elite III 1280 Blocks, 2 Sides\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CS "[%h]"
MSG.CRLF .CZ "\r\n"
MSG.NOSIZE .CZ "Unable to get media size."
MSG.INIT .CZ "Formatting %s, Volname:%s\r\n"
MSG.LL .CZ "Low Level Format %D Blks\r\n"
MSG.LLDISK2 .CZ "\rWriting Head %d/Track %02d (%02d/%02d)..."
MSG.VERIFY .CZ "\rVerifying Head %d/Track %02d/Block %d (%05D)..."
MSG.WRITECAT .CZ "Writing Catalog..."
FMT.BLANK .CZ "BLANK%H%H"
*--------------------------------------
OptionList .AS "LlBbHhXxDdVv"
OptionVars .DA #bLL,#bLL,#bCustomBlkSize,#bCustomBlkSize

View File

@ -1081,7 +1081,7 @@ KM.VC sta ZPType
>PUSHB.G hSList
>PUSHW ZPCLBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .9
@ -1124,7 +1124,7 @@ KM.VC sta ZPType
*--------------------------------------
KW.BCOLON >PUSHB.G hSList
>PUSHW ZPCLBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListNewKey
bcs .9

View File

@ -644,6 +644,7 @@ CS.RUN.FOpen.RTS
CS.RUN.GetSymbol
>PUSHB.G hSList
>PUSHW ZPCLBufPtr
>PUSHWI 0 ScopeID
>SYSCALL SListLookup
bcs CS.RUN.FOpen.RTS
@ -910,27 +911,27 @@ CheckStackPop4 lda pStack
CS.END
*--------------------------------------
DEV.GFX .AZ "/dev/gfx"
MSG.GREETINGS .AZ "\e[?7h\r\nA2osX-FORTH %d.%d (FORTH-79)\r\n"
MSG.HIS .AZ "\r\n%3d : %s"
MSG.HISPROMPT .AZ "\r\n\r\n? "
MSG.HISROMPTCLR .DA #C.BS,#C.BS,#0
MSG.USAGE .AS "Usage : FORTH <option> file\r\n"
.AS " -D : Debug Mode\r\n"
.AS " -T : Trace On"
MSG.ECHOCRLF .AZ "\r\n"
MSG.DEBUG .AZ "(CODE:%H, DATA=%H, SP=%H, RP=%h)\r\n"
MSG.TRACE .AZ "[%5D]%s\r\n"
MSG.PROMPT .AZ "\e[?7h\r\n> " Enable Line Wrap
MSG.PROMPTCRLF .AZ "\e[?7l\r\n" Disable Line Wrap
MSG.OK .AZ "OK\r\n"
MSG.DUMP2 .AZ "%s %s%D "
MSG.CONST .AZ "Const V="
MSG.VAR .AZ "Var @="
MSG.CODE .AZ "Code @="
FMT.Byte .AZ "%d "
FMT.int16 .AZ "%I "
FMT.uint16 .AZ "%D "
FMT.int32 .AZ "%L "
MSG.GREETINGS .CZ "\e[?7h\r\nA2osX-FORTH %d.%d (FORTH-79)\r\n"
MSG.HIS .CZ "\r\n%3d : %s"
MSG.HISPROMPT .CZ "\r\n\r\n? "
MSG.HISROMPTCLR .CZ "\b \b"
MSG.USAGE .CS "Usage : FORTH <option> file\r\n"
.CS " -D : Debug Mode\r\n"
.CS " -T : Trace On"
MSG.ECHOCRLF .CZ "\r\n"
MSG.DEBUG .CZ "(CODE:%H, DATA=%H, SP=%H, RP=%h)\r\n"
MSG.TRACE .CZ "[%5D]%s\r\n"
MSG.PROMPT .CZ "\e[?7h\r\n> " Enable Line Wrap
MSG.PROMPTCRLF .CZ "\e[?7l\r\n" Disable Line Wrap
MSG.OK .CZ "OK\r\n"
MSG.DUMP2 .CZ "%s %s%D "
MSG.CONST .CZ "Const V="
MSG.VAR .CZ "Var @="
MSG.CODE .CZ "Code @="
FMT.Byte .CZ "%d "
FMT.int16 .CZ "%I "
FMT.uint16 .CZ "%D "
FMT.int32 .CZ "%L "
*--------------------------------------
OptionList .AS "DdTt"
OptionVars .DA #bDebug,#bDebug,#bTrace,#bTrace

View File

@ -132,6 +132,7 @@ CS.RUN jsr GFX.Open
jsr GFX.Write.YA
jsr CS.RUN.LOGO.SHOW
bcs .9
lda #0
sec
@ -144,9 +145,11 @@ CS.RUN.LOGO.SHOW
>LDYA L.CB.LOGO
jsr GFX.Write.YA
bcs CS.RUN.RTS
>SYSCALL NewStkObj
bcs CS.RUN.RTS
stx CB.LOGO+S.CB.DstPtr
lda #S.CB.CMD.BITBLT
@ -345,11 +348,11 @@ GFX.Write.YA pha
*--------------------------------------
CS.END
DEVNAME.GFX .AZ "/dev/gfx"
FONTFILE .AZ "${ROOT}sbin/sysx7"
FONTFILEB .AZ "${ROOT}sbin/sysx7b"
FONTFILE .AZ "${ROOT}opt/gui/fonts/sysx7"
FONTFILEB .AZ "${ROOT}opt/gui/fonts/sysx7b"
MARILYNFILE .AZ "${ROOT}root/bmp/MARILYN"
*LOGOFILE .AZ "${ROOT}A2osX.logo"
LOGOFILE .AZ "${ROOT}root/bmp/A2OSX.LOGO"
LOGOFILE .AZ "${ROOT}A2osX.logo"
*LOGOFILE .AZ "${ROOT}root/bmp/A2OSX.LOGO"
PALETTEFILE .AZ "${ROOT}root/bmp/PALETTE"
MESSAGEB .AZ " DHGR Driver & OSD 'Off-Screen Driver' Test (SYSX7B Font, Inverse) "
MESSAGE .AZ " 1234567890 abcdefghijklmnopqrstuvwxyz { + - * / } (SYSX7 Font, Normal) "

View File

@ -11,6 +11,7 @@ NEW
.INB inc/mli.e.i
.INB inc/eth.i
.INB inc/libtcpip.i
.INB inc/net.tcpip.i
.INB inc/net.http.i
*--------------------------------------
TIMEOUT.MAX .EQ 250 25 sec.
@ -743,20 +744,20 @@ Init.TimeOut lda #TIMEOUT.MAX
CS.END
LIBTCPIP .AZ "libtcpip"
hLIBTCPIP .BS 1
MSG.IPKO .AZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .AS "Usage : HTTPGET <ip|host> [port]\r\n"
.AS " -U : Url\r\n"
.AS " -F : UrlFile\r\n"
.AS " -O : OutputFile"
MSG.CRLF .AZ "\r\n"
MSG.UNKNOWN .AZ "%s: Unknown host\r\n"
MSG.CONNECT .AZ "Connecting to %d.%d.%d.%d:%D (%s)..."
MSG.SKTKO .AZ "Failed to Open Socket."
MSG.CONNECTED .AZ "Connected."
MSG.SKTERR .AZ "Socket Error : $%h\r\n"
MSG.IOERR .AZ "I/O Error : $%h\r\n"
MSG.FileLength .AZ "File Length : %10u Bytes\r\n"
MSG.Progress .AZ "\rReceived : %10u"
MSG.IPKO .CZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .CS "Usage : HTTPGET <ip|host> [port]\r\n"
.CS " -U : Url\r\n"
.CS " -F : UrlFile\r\n"
.CS " -O : OutputFile"
MSG.CRLF .CZ "\r\n"
MSG.UNKNOWN .CZ "%s: Unknown host\r\n"
MSG.CONNECT .CZ "Connecting to %d.%d.%d.%d:%D (%s)..."
MSG.SKTKO .CZ "Failed to Open Socket."
MSG.CONNECTED .CZ "Connected."
MSG.SKTERR .CZ "Socket Error : $%h\r\n"
MSG.IOERR .CZ "I/O Error : $%h\r\n"
MSG.FileLength .CZ "File Length : %10u Bytes\r\n"
MSG.Progress .CZ "\rReceived : %10u"
*--------------------------------------
SA.LOCAL .DA #AF.INET S.SOCKADDR.AF
.BS 1

View File

@ -1033,22 +1033,22 @@ CS.QUIT ldy #hOutputBuf
CS.END
LIBTCPIP .AZ "libtcpip"
hLIBTCPIP .BS 1
MSG.IPKO .AZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .AZ "Usage : IRC <ip|host> <port> <nickname> <#channel> [key]"
MSG.UNKNOWN .AZ "%s: Unknown host\r\n"
MSG.HOSTOK .AZ "Connecting to %d.%d.%d.%d:%D (%s)..."
MSG.SKTKO .AZ "Failed to Open Socket."
MSG.SKTOK .AZ "Connected\r\n(Exit key is Ctrl-T)\r\n"
MSG.SKTERR .AZ "Socket Error : $%h\r\n"
MSG.IPKO .CZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .CZ "Usage : IRC <ip|host> <port> <nickname> <#channel> [key]"
MSG.UNKNOWN .CZ "%s: Unknown host\r\n"
MSG.HOSTOK .CZ "Connecting to %d.%d.%d.%d:%D (%s)..."
MSG.SKTKO .CZ "Failed to Open Socket."
MSG.SKTOK .CZ "Connected\r\n(Exit key is Ctrl-T)\r\n"
MSG.SKTERR .CZ "Socket Error : $%h\r\n"
.DO TLS=1
MSG.TLS .AZ "TLS:Negociation..."
MSG.TLS.HDR .AZ "TLS:Received %D bytes, Message Type:%h.\r\n"
MSG.TLSKO .AZ "TLS:Negotiation failed."
MSG.TLS .CZ "TLS:Negociation..."
MSG.TLS.HDR .CZ "TLS:Received %D bytes, Message Type:%h.\r\n"
MSG.TLSKO .CZ "TLS:Negotiation failed."
.FIN
MSG.REGISTER .AZ "Registering User..."
MSG.JOIN .AZ "Joining Channel..."
MSG.TOPBAR .AZ "A2osX IRC %d.%d Server:%s:%s Nick:%s"
MSG.STATUSBAR .AZ "%s:%s"
MSG.REGISTER .CZ "Registering User..."
MSG.JOIN .CZ "Joining Channel..."
MSG.TOPBAR .CZ "A2osX IRC %d.%d Server:%s:%s Nick:%s"
MSG.STATUSBAR .CZ "%s:%s"
MSG.STATUSBARMSG .AS "STATUS:%s"
MSG.NULL .HS 00
*--------------------------------------
@ -1072,23 +1072,23 @@ IRC.CMDS .AZ "PING"
.AZ "376"
.DA #0
*--------------------------------------
IRC.REGISTER .AS "NICK %s\r\n"
.AZ "USER %s %s %s :A2osX IRC\r\n"
IRC.JOIN .AZ "JOIN %s\r\n"
IRC.JOINKEY .AZ "JOIN %s %s\r\n"
IRC.PONG .AZ "PONG :%s\r\n"
IRC.PART .AS "PART %s\r\n"
.AZ "QUIT :Pfff\r\n"
IRC.NAMES .AZ "NAMES %s\r\n"
IRC.PRIVMSG .AZ "PRIVMSG %s :%s\r\n"
IRC.REGISTER .CS "NICK %s\r\n"
.CZ "USER %s %s %s :A2osX IRC\r\n"
IRC.JOIN .CZ "JOIN %s\r\n"
IRC.JOINKEY .CZ "JOIN %s %s\r\n"
IRC.PONG .CZ "PONG :%s\r\n"
IRC.PART .CS "PART %s\r\n"
.CZ "QUIT :Pfff\r\n"
IRC.NAMES .CZ "NAMES %s\r\n"
IRC.PRIVMSG .CZ "PRIVMSG %s :%s\r\n"
*--------------------------------------
SEQ.INIT .AZ "\ec\e(B\e)0\e[?7l\e[2;20r\e[22;1H\e[?7h"
SEQ.BAR .AZ "\e[?7l\e7\e[%d;1H\e[7m\e[37;40m%80s\e[0m\e8\e[?7h"
SEQ.TXTCLR .AZ "\e[22;1H\e[97;41m\e[K\r\n\e[K\r\n\e[K\e[22;1H"
SEQ.PRIVMSG .AZ "\e7\e[20;1H\r\n\e[93;44m\e[7m%s:\e[0m\e[93;44m%s\e[K\e8"
SEQ.DUMPMSG .AZ "\e7\e[20;1H\r\n\e[7m%s \e[0m%s %s %s\e8"
SEQ.INFOMSG .AZ "\e7\e[20;1H\e[92;44m%s\r\n\e8"
SEQ.RESET .AZ "\ec"
SEQ.INIT .CZ "\ec\e(B\e)0\e[?7l\e[2;20r\e[22;1H\e[?7h"
SEQ.BAR .CZ "\e[?7l\e7\e[%d;1H\e[7m\e[37;40m%80s\e[0m\e8\e[?7h"
SEQ.TXTCLR .CZ "\e[22;1H\e[97;41m\e[K\r\n\e[K\r\n\e[K\e[22;1H"
SEQ.PRIVMSG .CZ "\e7\e[20;1H\r\n\e[93;44m\e[7m%s:\e[0m\e[93;44m%s\e[K\e8"
SEQ.DUMPMSG .CZ "\e7\e[20;1H\r\n\e[7m%s \e[0m%s %s %s\e8"
SEQ.INFOMSG .CZ "\e7\e[20;1H\e[92;44m%s\r\n\e8"
SEQ.RESET .CZ "\ec"
*--------------------------------------
SA.LOCAL .DA #AF.INET S.SOCKADDR.AF
.BS 1

View File

@ -68,9 +68,8 @@ CS.RUN ldy #S.PS.ARGC
>STA.G Signal
bra .1
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
@ -98,11 +97,11 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG.USAGE .AS "Usage : KILL <signal> PID\r\n"
.AS " -0 : No Signal\r\n"
.AS " -1 : SIGQUIT\r\n"
.AZ " -2 : SIGKILL\r\n"
SSCANF.PID .AZ "%d"
MSG.USAGE .CS "Usage : KILL <signal> PID\r\n"
.CS " -0 : No Signal\r\n"
.CS " -1 : SIGQUIT\r\n"
.CZ " -2 : SIGKILL\r\n"
SSCANF.PID .CZ "%d"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -78,9 +78,8 @@ CS.RUN inc ArgIndex
jsr CS.RUN.CheckOpt
bcc CS.RUN
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -327,13 +326,13 @@ OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse
.DA #bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : LC File(s) (*,? wildcards allowed)\r\n"
.AS " -C : Continue on error\r\n"
.AS " -R : Recurse subdirectories\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.DIR .AZ "Dir :%s..."
MSG.FILE .AZ "File:%s..."
MSG.USAGE .CS "Usage : LC File(s) (*,? wildcards allowed)\r\n"
.CS " -C : Continue on error\r\n"
.CZ " -R : Recurse subdirectories\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.DIR .CZ "Dir :%s..."
MSG.FILE .CZ "File:%s..."
*--------------------------------------
.DUMMY
.OR 0

View File

@ -112,17 +112,17 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG0 .AZ "hFILE hFD Cnt Type Filepath"
MSG1 .AZ "%3d %3d %3d %5s %s\r\n"
MSG.NA .AZ "n/a"
FD.T.REG .AZ "REG"
FD.T.DIR .AZ "DIR"
FD.T.CDEV .AZ "CDEV"
FD.T.BDEV .AZ "BDEV"
FD.T.LNK .AZ "LNK"
FD.T.DSOCK .AZ "DSOCK"
FD.T.SSOCK .AZ "SSOCK"
FD.T.PIPE .AZ "PIPE"
MSG0 .CZ "hFILE hFD Cnt Type Filepath"
MSG1 .CZ "%3d %3d %3d %5s %s\r\n"
MSG.NA .CZ "n/a"
FD.T.REG .CZ "REG"
FD.T.DIR .CZ "DIR"
FD.T.CDEV .CZ "CDEV"
FD.T.BDEV .CZ "BDEV"
FD.T.LNK .CZ "LNK"
FD.T.DSOCK .CZ "DSOCK"
FD.T.SSOCK .CZ "SSOCK"
FD.T.PIPE .CZ "PIPE"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -117,14 +117,14 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG.Main .AZ "--- Main Memory ----------------"
MSG.Aux .AZ "--- Aux Memory -----------------"
MSG.Kernel .AZ "--- Kernel (Drivers) Memory ----"
MSG.Stat .AS " Low : %5D (%H)\r\n"
.AS " Free Ptr : %5D (%H)\r\n"
.AS " High : %5D (%H)\r\n"
.AZ " Available Memory : %5D Bytes\r\n"
MSG.End .AZ "--------------------------------"
MSG.Main .CZ "--- Main Memory ----------------"
MSG.Aux .CZ "--- Aux Memory -----------------"
MSG.Kernel .CZ "--- Kernel (Drivers) Memory ----"
MSG.Stat .CS " Low : %5D (%H)\r\n"
.CS " Free Ptr : %5D (%H)\r\n"
.CS " High : %5D (%H)\r\n"
.CZ " Available Memory : %5D Bytes\r\n"
MSG.End .CZ "--------------------------------"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -460,21 +460,21 @@ ZPCode sta SETREADAUX
rts
ZPCodeLen .EQ *-ZPCode
*--------------------------------------
MSG0 .AZ "hMem Flags PID REF PTR LEN BINPATH/DATA\r\n"
MSG1.INV .AZ "\e[7m"
MSG1 .AZ "$%h %s %3d %3d $%H %5D "
MSG1.BIN .AZ "\e[7m%s\e[0m\r\n"
MSG1.STR .AZ "[%03d:%s]\e[0m\r\n"
MSG1.HEX .AZ "?HEX:%h%h.%h%h.%h%h.%h%h.%h%h.%h%h.%h%h.%h%h\e[0m\r\n"
MSG1X .AZ "$%h %s %3d %3d $%H %5D\e[0m\r\n"
MSG2 .AZ "Allocated hMem:%d, Total:%d\r\n"
MSG3 .AS "High Memory: $%H, "
.AS "Free ULimit: $%H, "
.AS "Low : $%H, "
.AS "Free : %5D Bytes."
MSG.CRLF .AZ "\r\n"
MSG.FLAGS .AS "UZXAfcds"
MSG.FLAGSX .AS "UZXAidep"
MSG0 .CZ "hMem Flags PID REF PTR LEN BINPATH/DATA\r\n"
MSG1.INV .CZ "\e[7m"
MSG1 .CZ "$%h %s %3d %3d $%H %5D "
MSG1.BIN .CZ "\e[7m%s\e[0m\r\n"
MSG1.STR .CZ "[%03d:%s]\e[0m\r\n"
MSG1.HEX .CZ "?HEX:%h%h.%h%h.%h%h.%h%h.%h%h.%h%h.%h%h.%h%h\e[0m\r\n"
MSG1X .CZ "$%h %s %3d %3d $%H %5D\e[0m\r\n"
MSG2 .CZ "Allocated hMem:%d, Total:%d\r\n"
MSG3 .CS "High Memory: $%H, "
.CS "Free ULimit: $%H, "
.CS "Low : $%H, "
.CS "Free : %5D Bytes."
MSG.CRLF .CZ "\r\n"
MSG.FLAGS .CS "UZXAfcds"
MSG.FLAGSX .CS "UZXAidep"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -9,6 +9,7 @@ NEW
.INB inc/a2osx.i
.INB inc/mli.i
.INB inc/eth.i
.INB inc/net.tcpip.i
.INB inc/libtcpip.i
*--------------------------------------
TIMEOUT.MAX .EQ 250 25 sec.
@ -190,9 +191,8 @@ CheckArgs inc iArg
clc
rts
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -399,15 +399,15 @@ hLIBTCPIP .BS 1
OptionList .AS "AaSsDd"
OptionCnt .EQ *-OptionList
*--------------------------------------
MSG.USAGE .AS "Usage : NTPDATE <ip|host>\r\n"
.AS " -A (-)nn : TZ offset\r\n"
.AS " -S : Set ProDOS date\r\n"
.AZ " -D : Run as Daemon\r\n"
MSG.IPKO .AZ "TCP/IP Not Loaded/Configured."
MSG.UNKNOWN .AZ "%s: Unknown host\r\n"
MSG.SOCKET .AZ "Failed to open socket\r\n"
MSG.TIMEOUT .AZ "No response from %s\r\n"
MSG.TIME .AS "NTPDATE:%02d%02d/%02d/%02d %02d:%02d:%02d\r\n"
MSG.USAGE .CS "Usage : NTPDATE <ip|host>\r\n"
.CS " -A (-)nn : TZ offset\r\n"
.CS " -S : Set ProDOS date\r\n"
.CZ " -D : Run as Daemon\r\n"
MSG.IPKO .CZ "TCP/IP Not Loaded/Configured."
MSG.UNKNOWN .CZ "%s: Unknown host\r\n"
MSG.SOCKET .CZ "Failed to open socket\r\n"
MSG.TIMEOUT .CZ "No response from %s\r\n"
MSG.TIME .CS "NTPDATE:%02d%02d/%02d/%02d %02d:%02d:%02d\r\n"
*--------------------------------------
SA.LOCAL .DA #AF.INET S.SOCKADDR.AF
.BS 1

View File

@ -98,9 +98,8 @@ CS.RUN >INC.G ArgIndex
>STA.G hExclude
bra CS.RUN
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -644,16 +643,16 @@ CS.END
OptionList .AS "AaRrXx"
OptionVars .DA #bAppend,#bAppend,#bRecurse,#bRecurse,#0,#0
*--------------------------------------
MSG.USAGE .AS "Usage : PAK Archive [File *,? wildcards allowed]\r\n"
.AS " -A : Append to archive\r\n"
.AS " -R : Recurse subdirectories\r\n"
.AZ " -X <*,? wildcards allowed> : exclude files \r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.E.IARC .AZ "Invalid/corrupt archive"
MSG.DIR .AZ "Reading Dir:%s..."
MSG.FILE .AZ "Adding File:%s..."
ARC.Header .AZ "PAK"
MSG.USAGE .CS "Usage : PAK Archive [File *,? wildcards allowed]\r\n"
.CS " -A : Append to archive\r\n"
.CS " -R : Recurse subdirectories\r\n"
.CZ " -X <*,? wildcards allowed> : exclude files \r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.E.IARC .CZ "Invalid/corrupt archive"
MSG.DIR .CZ "Reading Dir:%s..."
MSG.FILE .CZ "Adding File:%s..."
ARC.Header .CZ "PAK"
*--------------------------------------
LIBPAK .AZ "libpak"
hLIB .BS 1

View File

@ -100,9 +100,8 @@ CS.RUN ldy #S.PS.ARGC
bra CS.RUN.START
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -546,13 +545,13 @@ CS.QUIT.BUF lda hDstBuf
*--------------------------------------
CS.END
*--------------------------------------
MSG.USAGE .AZ "Usage : PAKME SourceBIN PackedBIN\r\n"
MSG.SRCFILE .AZ "Source File : %s, Size=%5D, Org=$%H, %d Chunks at $%H.\r\n"
MSG.CHUNK .AZ " Chunk #%02d : Ofs=$%H, Len=%5D ... "
MSG.PAKED .AZ "PAKed : %5D Bytes, New Ofs=$%H\r\n"
MSG.STORE .AZ "Store : %5D Bytes, New Ofs=$%H\r\n"
MSG.E.IARC .AZ "Invalid/corrupt archive"
TAG .AZ "PAKME"
MSG.USAGE .CZ "Usage : PAKME SourceBIN PackedBIN\r\n"
MSG.SRCFILE .CZ "Source File : %s, Size=%5D, Org=$%H, %d Chunks at $%H.\r\n"
MSG.CHUNK .CZ " Chunk #%02d : Ofs=$%H, Len=%5D ... "
MSG.PAKED .CZ "PAKed : %5D Bytes, New Ofs=$%H\r\n"
MSG.STORE .CZ "Store : %5D Bytes, New Ofs=$%H\r\n"
MSG.E.IARC .CZ "Invalid/corrupt archive"
TAG .CZ "PAKME"
*--------------------------------------
LIBPAK .AZ "libpak"
hLIB .BS 1

View File

@ -8,6 +8,7 @@ NEW
.INB inc/macros.i
.INB inc/a2osx.i
.INB inc/eth.i
.INB inc/net.tcpip.i
.INB inc/libtcpip.i
*--------------------------------------
TIMEOUT.MAX .EQ 40 4 sec.
@ -399,14 +400,14 @@ CS.FrameDiscard lda hFrame
*--------------------------------------
CS.END
LIBTCPIP .AZ "libtcpip"
MSG.IPKO .AZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .AS "Usage : PING <ip|host>\r\n"
.AZ " -1-9 : Ping Count\r\n"
MSG.UNKNOWN .AZ "%s: Unknown host\r\n"
MSG.HOSTOK .AZ "PING %d.%d.%d.%d (%s)\r\n"
MSG.SKTKO .AZ "Failed to Open Socket."
MSG.UNREACH .AZ "%d.%d.%d.%d: TimeOut/Host unreachable\r\n"
MSG.REPLY .AZ "32 bytes from %d.%d.%d.%d, icmp_seq=%D, ttl=%d, time=%D ms\r\n"
MSG.IPKO .CZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .CS "Usage : PING <ip|host>\r\n"
.CZ " -1-9 : Ping Count\r\n"
MSG.UNKNOWN .CZ "%s: Unknown host\r\n"
MSG.HOSTOK .CZ "PING %d.%d.%d.%d (%s)\r\n"
MSG.SKTKO .CZ "Failed to Open Socket."
MSG.UNREACH .CZ "%d.%d.%d.%d: TimeOut/Host unreachable\r\n"
MSG.REPLY .CZ "32 bytes from %d.%d.%d.%d, icmp_seq=%D, ttl=%d, time=%D ms\r\n"
hLIBTCPIP .BS 1
*--------------------------------------
ICMP.Request .DA #S.ICMP.TYPE.ECHOREQ

View File

@ -218,9 +218,8 @@ CS.RUN
*--- Display usage and error out ------
.9
>PUSHW L.MSG.USAGE ; push address for usage text
>PUSHBI 0
>SYSCALL PrintF ; print usage message
>LDYA L.MSG.USAGE ; push address for usage text
>SYSCALL PutS ; print usage message
lda #E.SYN ; set OS return code as Syntax Error
sec ; indicate we don't want CS.RUN called again
rts ; return to OS
@ -390,11 +389,11 @@ CS.CmpFirstLast >PUSHW wFirst ; using FPU macro, so push first,
*--------------------------------------
CS.END
*--------------------------------------
MSG.USAGE .AS "Usage : SEQ [first [incr]] last\r\n"
.AS " -F numeric format\r\n"
.AS " -S string separator\r\n"
.AZ " -T terminating string\r\n"
MSG.MSG.NEWLINE .AZ "\r\n"
MSG.USAGE .CS "Usage : SEQ [first [incr]] last\r\n"
.CS " -F numeric format\r\n"
.CS " -S string separator\r\n"
.CZ " -T terminating string\r\n"
MSG.MSG.NEWLINE .CZ "\r\n"
*--------------------------------------
FMT.FORMAT .AZ "%I"
FMT.STRING .AZ "\r\n"

View File

@ -68,7 +68,7 @@ CMD.ALIAS.ADD >LDYA ZPArgVBufPtr
.1 >PUSHA
>PUSHW ZPVarNamePtr
>PUSHWZ ScopeID
>SYSCALL SListNewKey
bcs .99
@ -621,7 +621,7 @@ CMD.FUNCTION lda (ZPArgVBufPtr)
.1 >PUSHA
>PUSHW ZPArgVBufPtr
>PUSHWZ ScopeID
>SYSCALL SListNewKey
bcs .99
@ -721,6 +721,7 @@ CMD.CALL.GETFUNC
>PUSHB.G hFunctions
>PUSHW ZPArgVBufPtr
>PUSHWZ ScopeID
>SYSCALL SListLookup
bcc CMD.CALL.RTS

View File

@ -171,6 +171,7 @@ CORE.Run.3 >LDA.G hAliases
>PUSHA
>PUSHW ZPInputBufPtr
>PUSHWZ ScopeID
>SYSCALL SListLookup
bcs CORE.Run.4

View File

@ -80,9 +80,8 @@ CS.RUN dec bAll
jsr CS.RUN.CheckOpt
bcc .1
.99 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -405,29 +404,29 @@ ACCESS .AS "xwrxwrxwr"
MSG.NODATE .AZ "<No-Date>"
FMT.DateTime .AZ "%d-%b-%y %H:%M:%S"
*--------------------------------------
MSG.USAGE .AS "Usage : STAT File\r\n"
.AS " -A : Access Flags\r\n"
.AS " -D : Mod Flags\r\n"
.AS " -U : UID\r\n"
.AS " -G : GID\r\n"
.AS " -S : Size in bytes\r\n"
.AS " -B : Size in blocks\r\n"
.AS " -C : Creation date/time\r\n"
.AS " -M : Modification date/time\r\n"
.AZ " -L : Last access date/time\r\n"
MSG.USAGE .CS "Usage : STAT File\r\n"
.CS " -A : Access Flags\r\n"
.CS " -D : Mod Flags\r\n"
.CS " -U : UID\r\n"
.CS " -G : GID\r\n"
.CS " -S : Size in bytes\r\n"
.CS " -B : Size in blocks\r\n"
.CS " -C : Creation date/time\r\n"
.CS " -M : Modification date/time\r\n"
.CZ " -L : Last access date/time\r\n"
*--------------------------------------
MSG.Filename .AZ "Filename : %s\r\n"
MSG.Access .AZ "Access : %s\r\n"
MSG.Mod .AZ "Mod : %s\r\n"
MSG.UIDGIDSIZE .AS "UID : %10D\r\n"
.AS "GID : %10D\r\n"
.AS "Size : %10u\r\n"
.AZ "Blocks : %10u (%D)\r\n"
MSG.CMATimes .AS "Created : %s\r\n"
.AS "Modified : %s\r\n"
.AZ "Accessed : %s\r\n"
MSG.D .AZ "%D\r\n"
MSG.U .AZ "%u\r\n"
MSG.Filename .CZ "Filename : %s\r\n"
MSG.Access .CZ "Access : %s\r\n"
MSG.Mod .CZ "Mod : %s\r\n"
MSG.UIDGIDSIZE .CS "UID : %10D\r\n"
.CS "GID : %10D\r\n"
.CS "Size : %10u\r\n"
.CZ "Blocks : %10u (%D)\r\n"
MSG.CMATimes .CS "Created : %s\r\n"
.CS "Modified : %s\r\n"
.CZ "Accessed : %s\r\n"
MSG.D .CZ "%D\r\n"
MSG.U .CZ "%u\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -298,16 +298,15 @@ CS.QUIT lda hSocket
CS.END
LIBTCPIP .AZ "libtcpip"
hLIBTCPIP .BS 1
MSG.IPKO .AZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .AZ "Usage : TELNET <ip|host> [port]"
MSG.UNKNOWN .AZ "%s: Unknown host\r\n"
MSG.HOSTOK .AZ "Connecting to %d.%d.%d.%d:%D (%s)..."
MSG.SKTOK .AS "Connected"
.DA #C.CR,#C.LF
.AZ "(Exit key is Ctrl-T)"
MSG.SKTERR .AZ "Socket Error : $%h\r\n"
MSG.IOERR .AZ "I/O Error : $%h\r\n"
MSG.USER .AZ "User interrupt."
MSG.IPKO .CZ "TCP/IP Not Loaded/Configured."
MSG.USAGE .CZ "Usage : TELNET <ip|host> [port]"
MSG.UNKNOWN .CZ "%s: Unknown host\r\n"
MSG.HOSTOK .CZ "Connecting to %d.%d.%d.%d:%D (%s)..."
MSG.SKTOK .CS "Connected\r\n"
.CZ "(Exit key is Ctrl-T)"
MSG.SKTERR .CZ "Socket Error : $%h\r\n"
MSG.IOERR .CZ "I/O Error : $%h\r\n"
MSG.USER .CZ "User interrupt."
*--------------------------------------
SA.LOCAL .DA #AF.INET S.SOCKADDR.AF
.BS 1

View File

@ -329,13 +329,13 @@ OptionList .AS "CRcr"
OptionVars .DA #bContinue,#bRecurse
.DA #bContinue,#bRecurse
*--------------------------------------
MSG.USAGE .AS "Usage : UC File(s) (*,? wildcards allowed)\r\n"
.AS " -C : Continue on error\r\n"
.AS " -R : Recurse subdirectories\r\n"
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.DIR .AZ "Dir :%s..."
MSG.FILE .AZ "File:%s..."
MSG.USAGE .CS "Usage : UC File(s) (*,? wildcards allowed)\r\n"
.CS " -C : Continue on error\r\n"
.CZ " -R : Recurse subdirectories\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
MSG.DIR .CZ "Dir :%s..."
MSG.FILE .CZ "File:%s..."
*--------------------------------------
.DUMMY
.OR 0

View File

@ -97,9 +97,8 @@ CS.RUN ldy #S.PS.ARGC
jsr CS.RUN.CheckOpt
bcc .1
.99 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
@ -345,17 +344,17 @@ OptionVars .DA #bHostName,#bHostName
.DA #bKernelMode,#bKernelMode
.DA #bKernelClk,#bKernelClk
*--------------------------------------
MSG.USAGE .AS "Usage : UNAME\r\n"
.AS " -H : Hostname\r\n"
.AS " -M : Machine Type/SubType\r\n"
.AS " -C : CPU Type\r\n"
.AS " -S : CPU Speed\r\n"
.AS " -A : Alternate CPU\r\n"
.AS " -V : Kernel Version\r\n"
.AS " -B : Kernel Build\r\n"
.AS " -K : Kernel Mode\r\n"
.AS " -Z : Kernel Timing\r\n"
MSG.CRLF .AZ "\r\n"
MSG.USAGE .CS "Usage : UNAME\r\n"
.CS " -H : Hostname\r\n"
.CS " -M : Machine Type/SubType\r\n"
.CS " -C : CPU Type\r\n"
.CS " -S : CPU Speed\r\n"
.CS " -A : Alternate CPU\r\n"
.CS " -V : Kernel Version\r\n"
.CS " -B : Kernel Build\r\n"
.CS " -K : Kernel Mode\r\n"
.CS " -Z : Kernel Timing\r\n"
MSG.CRLF .CZ "\r\n"
*--------------------------------------
ETCHOSTNAME .AZ "${ROOT}etc/hostname"
ETCVERSION .AZ "${ROOT}etc/version"

View File

@ -139,9 +139,8 @@ s1
sec
.9 rts
.99 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -458,14 +457,14 @@ CS.QUIT >LDA.G hFile
.INB usr/src/shared/x.unpak.s
*--------------------------------------
CS.END
MSG.USAGE .AS "Usage : UNPAK [-p] Archive [DstDir]\r\n"
.AZ " -p: Show progress spinner\r\n"
MSG.DIR .AZ "Creating Dir:%s..."
MSG.FILE .AZ "Extracting File:%s..."
MSG.OK .AZ "[OK]"
MSG.E.IARC .AZ "\r\nInvalid/corrupt archive"
MSG.PAK .AS "PAK"
MSG.SPINNER .AS "|/-\"
MSG.USAGE .CS "Usage : UNPAK [-p] Archive [DstDir]\r\n"
.CZ " -p: Show progress spinner\r\n"
MSG.DIR .CZ "Creating Dir:%s..."
MSG.FILE .CZ "Extracting File:%s..."
MSG.OK .CZ "[OK]"
MSG.E.IARC .CZ "\r\nInvalid/corrupt archive"
MSG.PAK .CS "PAK"
MSG.SPINNER .CS "|/-\"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -115,9 +115,8 @@ CS.RUN >LDYAI S.PW
sec
rts
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -174,9 +173,8 @@ CS.RUN.ROOT ldy #0
sec
.9 rts
.99 >PUSHW L.MSG.MISMATCH
>PUSHBI 0
>SYSCALL PrintF
.99 >LDYA L.MSG.MISMATCH
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -407,16 +405,16 @@ OptionCnt .EQ *-OptionList
*--------------------------------------
* Initialized DATA
*--------------------------------------
MSG.USAGE .AS "Usage : USERADD username\r\n"
.AS " -c : Comment (GECOS)\r\n"
.AS " -d : Home Directory\r\n"
.AS " -p : Password\r\n"
.AS " -s : Shell"
MSG.CRLF .AZ "\r\n"
MSG.BS .DA #C.BS,#C.SPACE,#C.BS,#0
MSG.ROOTPWD1 .AZ "\r\nPlease enter ROOT password : "
MSG.ROOTPWD2 .AZ "\r\nPlease retype ROOT password : "
MSG.MISMATCH .AZ "\r\nPasswords mismatch...\r\n"
MSG.USAGE .CS "Usage : USERADD username\r\n"
.CS " -c : Comment (GECOS)\r\n"
.CS " -d : Home Directory\r\n"
.CS " -p : Password\r\n"
.CS " -s : Shell"
MSG.CRLF .CZ "\r\n"
MSG.BS .CZ "\b \b"
MSG.ROOTPWD1 .CZ "\r\nPlease enter ROOT password : "
MSG.ROOTPWD2 .CZ "\r\nPlease retype ROOT password : "
MSG.MISMATCH .CZ "\r\nPasswords mismatch...\r\n"
*--------------------------------------
PW.ROOT .AS "root"
.BS 17-4

View File

@ -43,8 +43,6 @@ CS.START cld
.DA CS.DOEVENT
.DA CS.QUIT
L.MSG.USAGE .DA MSG.USAGE
L.MSG.CRLF .DA MSG.CRLF
L.MSG.BS .DA MSG.BS
J.CS.RUN.CheckArg
.DA CS.RUN.CheckArg.C
.DA CS.RUN.CheckArg.D
@ -76,9 +74,8 @@ CS.RUN ldy #S.PS.ARGC
sec
rts
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
.99 rts
@ -226,13 +223,11 @@ OptionCnt .EQ *-OptionList
*--------------------------------------
* Initialized DATA
*--------------------------------------
MSG.USAGE .AS "Usage : USERMOD username\r\n"
.AS " -c : Comment (GECOS)\r\n"
.AS " -d : Home Directory\r\n"
.AS " -p : Password\r\n"
.AS " -s : Shell"
MSG.CRLF .AZ "\r\n"
MSG.BS .DA #C.BS,#C.SPACE,#C.BS,#0
MSG.USAGE .CS "Usage : USERMOD username\r\n"
.CS " -c : Comment (GECOS)\r\n"
.CS " -d : Home Directory\r\n"
.CS " -p : Password\r\n"
.CZ " -s : Shell\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -87,9 +87,8 @@ CS.RUN inc ArgIndex
jsr CS.RUN.CheckOpt
bcc CS.RUN
.9 >PUSHW L.MSG.USAGE
>PUSHBI 0
>SYSCALL PrintF
.9 >LDYA L.MSG.USAGE
>SYSCALL PutS
lda #E.SYN
sec
rts
@ -602,16 +601,16 @@ OptionList .AS "CRMLWcrmlw"
OptionVars .DA #bContinue,#bRecurse,#bChar,#bLine,#bWord
.DA #bContinue,#bRecurse,#bChar,#bLine,#bWord
*--------------------------------------
MSG.USAGE .AS "Usage : WC File(s) (*,? wildcards allowed)\r\n"
.AS " -C : Continue on error\r\n"
.AS " -R : Recurse subdirectories\r\n"
.AS " -M : Print the CHAR counts\r\n"
.AS " -L : Print the LINE counts\r\n"
.AZ " -W : Print the WORD counts\r\n"
MSG.ERR .AZ "[%h]\r\n"
MSG.LONG .AZ "%L"
MSG.LONGTAB .AZ "%10L "
MSG.TOTAL .AZ "(total)"
MSG.USAGE .CS "Usage : WC File(s) (*,? wildcards allowed)\r\n"
.CS " -C : Continue on error\r\n"
.CS " -R : Recurse subdirectories\r\n"
.CS " -M : Print the CHAR counts\r\n"
.CS " -L : Print the LINE counts\r\n"
.CZ " -W : Print the WORD counts\r\n"
MSG.ERR .CZ "[%h]\r\n"
MSG.LONG .CZ "%L"
MSG.LONGTAB .CZ "%10L "
MSG.TOTAL .CZ "(total)"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -133,8 +133,8 @@ CS.QUIT clc
rts
*--------------------------------------
CS.END
MSG0 .AZ "SID hSD Privilege UID GID Name Dev"
MSG1 .AZ "%3d $%0h %b %3d %3d %16s %s\r\n"
MSG0 .CZ "SID hSD Privilege UID GID Name Dev"
MSG1 .CZ "%3d $%0h %b %3d %3d %16s %s\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -187,9 +187,9 @@ CS.RUN.Newline >PUSHW L.MSG.NEWLINE
*--------------------------------------
CS.END
*--------------------------------------
MSG.USAGE .AS "Usage : XMASTREE <size>\r\n"
.AZ " size : height of the tree to generate\r\n"
MSG.MSG.NEWLINE .AZ "\r\n"
MSG.USAGE .CS "Usage : XMASTREE <size>\r\n"
.CZ " size : height of the tree to generate\r\n"
MSG.MSG.NEWLINE .CZ "\r\n"
*--------------------------------------
* Per Process DATA segment (0 filled before INIT)
*--------------------------------------

View File

@ -111,9 +111,9 @@ CS.END
DEVSIG.Offset .HS 05070B0C
DEVSIG.Value .HS 38180114
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT .AZ "Orange Grappler Series // Boards"
MSG.DETECT.OK .AZ "Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "No HW Found."
MSG.DETECT .CZ "Orange Grappler Series // Boards"
MSG.DETECT.OK .CZ "Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "No HW Found."
ARGS .BS 2
*--------------------------------------
FD.DEV .DA #S.FD.T.CDEV
@ -291,10 +291,10 @@ DEVSLOTn0 .BS 1
*--------------------------------------
DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
.DA #0,#0,#0
>PSTR "Grappler // Card"
.PS "Grappler // Card"
.DA #S.DIB.T.CHAR
.DA #0
.DA K.VER
.DA 0094
*--------------------------------------
DCB .DA #S.DCB.T.COM
.DA #0 FLAGS

View File

@ -111,9 +111,9 @@ CS.END
DEVSIG.Offset .HS 05070B0C
DEVSIG.Value .HS 38180114
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT .AZ "Orange Grappler Series // Boards"
MSG.DETECT.OK .AZ "Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "No HW Found."
MSG.DETECT .CZ "Orange Grappler Series // Boards"
MSG.DETECT.OK .CZ "Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "No HW Found."
ARGS .BS 2
*--------------------------------------
FD.DEV .DA #S.FD.T.CDEV
@ -288,10 +288,10 @@ DEVSLOTn0 .BS 1
*--------------------------------------
DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
.DA #0,#0,#0
>PSTR "Grappler+ // Crd"
.PS "Grappler+ // Crd"
.DA #S.DIB.T.CHAR
.DA #0
.DA K.VER
.DA 00
*--------------------------------------
DCB .DA #S.DCB.T.COM
.DA #0 FLAGS

View File

@ -7,9 +7,9 @@ NEW
*--------------------------------------
S.DCB.SND .EQ 16
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I
.INB INC/MLI.E.I
.INB inc/macros.i
.INB inc/a2osx.i
.INB inc/mli.e.i
*--------------------------------------
ZPArgPtr .EQ ZPBIN
*--------------------------------------
@ -120,8 +120,8 @@ Dev.ParseArgs >LDYA ARGS
rts
*--------------------------------------
CS.END
MSG.DETECT.OK .AZ "MockingBoard Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "HW Not Found."
MSG.DETECT.OK .CZ "MockingBoard Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "HW Not Found."
ARGS .BS 2
*--------------------------------------
FD.DEV .DA #S.FD.T.CDEV
@ -321,10 +321,10 @@ DEVSLOTn08F .BS 1
*--------------------------------------
DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ+S.DIB.S.IRQ
.DA #0,#0,#0
>PSTR "MockingBoard "
.PS "MockingBoard "
.DA #S.DIB.T.CHAR
.DA #0
.DA K.VER
.DA #0,#94
*--------------------------------------
DCB .DA #S.DCB.T.SND
.DA #0 FLAGS
@ -339,5 +339,5 @@ DCB .DA #S.DCB.T.SND
*--------------------------------------
DRV.END
MAN
SAVE USR/SRC/DRV/MKBOARD.DRV.S
SAVE usr/src/drv/mkboard.drv.s
ASM

View File

@ -111,9 +111,9 @@ CS.END
DEVSIG.Offset .HS 0507
DEVSIG.Value .HS 4848
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT .AZ "Apple PIC (Parallel Interface Card)"
MSG.DETECT.OK .AZ "PIC Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "No PIC Found."
MSG.DETECT .CZ "Apple PIC (Parallel Interface Card)"
MSG.DETECT.OK .CZ "PIC Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "No PIC Found."
ARGS .BS 2
*--------------------------------------
FD.DEV .DA #S.FD.T.CDEV
@ -289,10 +289,10 @@ DEVSLOTn0 .BS 1
*--------------------------------------
DIB .DA #S.DIB.S.WRITE+S.DIB.S.READ
.DA #0,#0,#0
>PSTR "Apple // Int Crd"
.PS "Apple // Int Crd"
.DA #S.DIB.T.CHAR
.DA #0
.DA K.VER
.DA #0,#94
*--------------------------------------
DCB .DA #S.DCB.T.COM
.DA #0 FLAGS

View File

@ -843,7 +843,7 @@ INBUF.MidFrame .BS 1
*--------------------------------------
DIB .DA #0
.DA #0,#0,#0 size
>PSTR "SSC/PPP Driver "
.PS "SSC/PPP Driver "
.DA #S.DIB.T.NIC
.DA #0
.DA K.VER

View File

@ -18,6 +18,7 @@ INBUF.SIZE .EQ 2048
.INB inc/com.6551.i
.INB inc/nic.i
.INB inc/eth.i
.INB inc/net.tcpip.i
.INB inc/libtcpip.i
*--------------------------------------
.DUMMY
@ -990,23 +991,23 @@ CS.END
DEVSIG.Offset .HS 05070B0C
DEVSIG.Value .HS 38180131
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT .AZ "PPP Driver For Apple SSC."
MSG.DETECT.OK .AZ "PPP Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "No SSC Found."
MSG.DETECT .CZ "PPP Driver For Apple SSC."
MSG.DETECT.OK .CZ "PPP Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "No SSC Found."
ETCFILE .AZ "${ROOT}etc/ppp.conf"
*--------------------------------------
MSG.ETCFILE .AZ "Executing %s File...\r\n"
MSG.UNEXPECTED .AZ "\r\nERR:Unexpected reply From Modem\r\n{%s}\r\n"
MSG.SYNTAX .AZ "\r\nERR:Bad Syntax In ppp.conf\r\n{%s}\r\n"
MSG.SSCInit .AZ "Connecting..."
MSG.LCPInit .AZ "LCP Negotiation..."
MSG.IPCPInit .AZ "IPCP Negotiation..."
MSG.LocalIP .AZ "Local IP is %d.%d.%d.%d\r\n"
MSG.RemoteIP .AZ "Remote IP is %d.%d.%d.%d\r\n"
MSG.ETCFILE .CZ "Executing %s File...\r\n"
MSG.UNEXPECTED .CZ "\r\nERR:Unexpected reply From Modem\r\n{%s}\r\n"
MSG.SYNTAX .CZ "\r\nERR:Bad Syntax In ppp.conf\r\n{%s}\r\n"
MSG.SSCInit .CZ "Connecting..."
MSG.LCPInit .CZ "LCP Negotiation..."
MSG.IPCPInit .CZ "IPCP Negotiation..."
MSG.LocalIP .CZ "Local IP is %d.%d.%d.%d\r\n"
MSG.RemoteIP .CZ "Remote IP is %d.%d.%d.%d\r\n"
.DO DBG=1
MSG.DUMPBUFS .AZ ">>Send:%H\r\n"
MSG.DUMPBUFR .AZ "Recv<<:%H\r\n"
MSG.HEXDUMP .AZ "%H:%h %h %h %h %h %h %h %h:%h %h %h %h %h %h %h %h\r\n"
MSG.DUMPBUFS .CZ ">>Send:%H\r\n"
MSG.DUMPBUFR .CZ "Recv<<:%H\r\n"
MSG.HEXDUMP .CZ "%H:%h %h %h %h %h %h %h %h:%h %h %h %h %h %h %h %h\r\n"
.FIN
*--------------------------------------
FD.DEV .DA #S.FD.T.CDEV

View File

@ -159,9 +159,9 @@ SP.Call stx SP.Params+S.IOCTL.UNITNUM
*--------------------------------------
CS.END
*--------------------------------------
MSG.DETECT .AZ "A2osX SmartPort Tape Driver"
MSG.DETECT.OK .AZ "Tape Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "No Device Found."
MSG.DETECT .CZ "A2osX SmartPort Tape Driver"
MSG.DETECT.OK .CZ "Tape Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "No Device Found."
ARGS .BS 2
*--------------------------------------
SmartPort.OFS .HS 01030507

View File

@ -6,17 +6,19 @@ LIBGUI.PTR.SetPos .EQ 6
LIBGUI.PTR.Hide .EQ 8
LIBGUI.PTR.Show .EQ 10
LIBGUI.PTR.Update .EQ 12
*LIBGUI.ReadMouse .EQ 14
LIBGUI.DRAW.Line .EQ 16
LIBGUI.OBJ.SetProp .EQ 18
LIBGUI.OBJ.GetProp .EQ 20
LIBGUI.WND.New .EQ 22
LIBGUI.WND.Destroy .EQ 24
LIBGUI.WND.Show .EQ 26
LIBGUI.WND.Paint .EQ 28
LIBGUI.WND.SetMBar .EQ 30
LIBGUI.MSG.Get .EQ 32
*LIBGUI.MBAR.New .EQ 34
LIBGUI.DRAW.Line .EQ 14
LIBGUI.DRAW.Fill .EQ 16
LIBGUI.DRAW.BitMap .EQ 18
LIBGUI.DRAW.Text .EQ 20
LIBGUI.OBJ.SetProp .EQ 22
LIBGUI.OBJ.GetProp .EQ 24
LIBGUI.WND.New .EQ 26
LIBGUI.WND.Destroy .EQ 28
LIBGUI.WND.Show .EQ 30
LIBGUI.WND.Paint .EQ 32
LIBGUI.WND.SetMBar .EQ 34
LIBGUI.MSG.Get .EQ 36
LIBGUI.MBOX.MsgBox .EQ 38
*--------------------------------------
C.BLACK .EQ 0
C16.D.BLUE .EQ 1
@ -111,13 +113,14 @@ S.OBJ.T .EQ 0
S.OBJ.T.WND .EQ 0
S.OBJ.T.MBAR .EQ 2
S.OBJ.T.MENU .EQ 4
S.OBJ.T.MITEM .EQ 6
S.OBJ.T.BUT .EQ 8
S.OBJ.T.TEXT .EQ 10
S.OBJ.T.BUT .EQ 6
S.OBJ.T.TEXT .EQ 8
S.OBJ.F .EQ 1
S.OBJ.F.BORDER .EQ %10000000
S.OBJ.S .EQ 2
S.OBJ.S.VISIBLE .EQ %10000000
S.OBJ.ID .EQ 3
S.OBJ.hOWNER .EQ 4
S.OBJ.hPARENT .EQ 6
@ -128,17 +131,18 @@ S.OBJ.X2 .EQ 12
S.OBJ.Y2 .EQ 14
S.OBJ.W .EQ 16
S.OBJ.H .EQ 18
S.OBJ.pNEXT .EQ 20
*
S.OBJ .EQ 20
*
S.OBJ .EQ 24
*--------------------------------------
S.WND.F.RESIZE .EQ %00000001
S.WND.F.MOVE .EQ %00000010
S.WND.F.CLOSE .EQ %00000100
S.WND.F.MIN .EQ %00001000
S.WND.F.MAX .EQ %00010000
S.WND.F.BORDER .EQ %00100000
S.WND.F.MODAL .EQ %01000000
S.WND.F.SYSMODAL .EQ %10000000
S.WND.F.MODAL .EQ %00100000
*
S.WND.S.HASTBAR .EQ %00000001
S.WND.S.HASMBAR .EQ %00000010
@ -155,30 +159,30 @@ S.WND.pSTATUS .EQ S.OBJ+8
S.WND.ICON .EQ S.OBJ+10
S.WND.BGCOLOR .EQ S.OBJ+12
S.WND.BGBM .EQ S.OBJ+14
S.WND.hCUR .EQ S.OBJ+16
S.WND.hPTR .EQ S.OBJ+16
*
* private
*
S.WND.TitleX1 .EQ S.OBJ+18
S.WND.TitleX2 .EQ S.OBJ+20
*
S.WND.TBarY1 .EQ S.OBJ+20
* S.WND.TBarY1 .EQ S.OBJ.X1
S.WND.TBarY2 .EQ S.OBJ+22
S.WND.MBarY1 .EQ S.OBJ+22
S.WND.MBarY2 .EQ S.OBJ+24
S.WND.InnerY1 .EQ S.OBJ+26
S.WND.InnerY2 .EQ S.OBJ+28
S.WND.SBarY1 .EQ S.OBJ+28
S.WND.InnerW .EQ S.OBJ+32
S.WND.InnerH .EQ S.OBJ+34
S.WND.DocW .EQ S.OBJ+36
S.WND.DocH .EQ S.OBJ+38
S.WND.DocX .EQ S.OBJ+40
S.WND.DocY .EQ S.OBJ+42
S.WND.fPaint .EQ S.OBJ+44
S.WND.MBarY1 .EQ S.OBJ+24
S.WND.MBarY2 .EQ S.OBJ+26
S.WND.InnerY1 .EQ S.OBJ+28
S.WND.InnerY2 .EQ S.OBJ+30
S.WND.SBarY1 .EQ S.OBJ+32
S.WND.InnerX2 .EQ S.OBJ+34
S.WND.InnerW .EQ S.OBJ+36
S.WND.InnerH .EQ S.OBJ+38
S.WND.DocW .EQ S.OBJ+40
S.WND.DocH .EQ S.OBJ+42
S.WND.DocX .EQ S.OBJ+44
S.WND.DocY .EQ S.OBJ+46
S.WND.fPaint .EQ S.OBJ+48
S.WND.pChilds .EQ S.OBJ+50
*
S.WND .EQ S.OBJ+46
S.WND .EQ S.OBJ+52
*--------------------------------------
S.MBAR.Items .EQ S.OBJ
*
@ -217,13 +221,18 @@ S.MITEM.ID .EQ 10
*
S.MITEM .EQ 12
*--------------------------------------
S.BUT.F.DISABLED .EQ %10000000
S.BUT.F.DISABLED .EQ %00000010
S.BUT.F.NOSPACE .EQ %00000001
*
S.BUT.S.PUSHED .EQ %10000000
*
S.BUT.hBM .EQ S.OBJ
S.BUT.TEXT .EQ S.OBJ+2
* ...
S.BUT.pICON .EQ S.OBJ
S.BUT.pTEXT .EQ S.OBJ+2
S.BUT.KEYMOD .EQ S.OBJ+4
S.BUT.KEY .EQ S.OBJ+5
S.BUT.ID .EQ S.OBJ+6
*
S.BUT .EQ S.OBJ+8
*--------------------------------------
S.TEXT.F.DISABLED .EQ %10000000
*

View File

@ -15,14 +15,14 @@ NEW
#define PTR_T_TEXT 14
#define PTR_T_WAIT 16
#define OBJ_F_BORDER 128
#define WND_F_RESIZE 1
#define WND_F_MOVE 2
#define WND_F_CLOSE 4
#define WND_F_MIN 8
#define WND_F_MAX 16
#define WND_F_BORDER 32
#define WND_F_MODAL 64
#define WND_F_SYSMODAL 128
#define WND_F_MODAL 32
#define WND_S_HASTBAR 1
#define WND_S_HASMBAR 2
@ -31,14 +31,14 @@ NEW
#define WND_S_MINIMIZED 16
#define WND_S_ACTIVE 64
#define WND_P_pTITLE 24
#define WND_P_pMBAR 26
#define WND_P_pSTATUS 28
#define WND_P_pICON 30
#define WND_P_pTITLE 28
#define WND_P_pMBAR 30
#define WND_P_pSTATUS 32
#define WND_P_pICON 34
#define WND_P_BGCOLOR 32
#define WND_P_pBGBM 34
#define WND_P_pPTR 36
#define WND_P_BGCOLOR 36
#define WND_P_pBGBM 38
#define WND_P_pPTR 40
#define MSG_T_KEY 0
#define MSG_T_XY 2
@ -68,7 +68,14 @@ void guiShowWnd(HWND);
void* guiSetProp(HWND,short int,void*);
void* guiGetProp(HWND,short int);
void guiDrawLine(HWND, short int, short int, int, int, int, int);
void guiFill(HWND, short int, short int, int, int, int, int);
void guiDrawBitMap(HWND, short int, short int, void*, int, int);
void guiDrawText(HWND, short int, short int, short int, int, int, char*);
int fastcall guiGetMsg(MSG*);
int guiMsgBox(HWND, void*, void*, void*, int);
MAN
TEXT include/libgui.h

View File

@ -183,35 +183,35 @@ BM.Info .DA #S.BM.F.BBP4
.DA 14 H
.DA BM.INFO.AND-BM.INFO
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS FFFFFFF0
.HS 00000000
.HS 00000000
.HS 00000000
.HS 00000000
.HS 0BBBBB00
.HS 0BBBBB00
.HS 0BBBBB00
.HS 0BBBBB00
.HS 0BBBBB00
.HS 0BBBBB00
.HS 00000000
.HS 00000000
.HS 00000000
.HS 00000000
BM.Info.AND .HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
.HS FFFFFFFF
BM.Info.AND .HS FFF0FFF0
.HS FF000FF0
.HS FF000FF0
.HS F00000F0
.HS F00000F0
.HS 00000000
.HS 00000000
.HS 00000000
.HS 00000000
.HS F00000F0
.HS F00000F0
.HS FF0000F0
.HS FF000FF0
.HS FFF0FFF0
*--------------------------------------
MAN
SAVE usr/src/lib/libgui.g.bm

View File

@ -6,6 +6,15 @@ NEW
*--------------------------------------
.INB inc/libgui.i
*--------------------------------------
.PS "guiDrawLine"
.DA #LIBGUI.DRAW.Line
.PS "guiFill"
.DA #LIBGUI.DRAW.Fill
.PS "guiDrawBitMap"
.DA #LIBGUI.DRAW.BitMap
.PS "guiDrawText"
.DA #LIBGUI.DRAW.Text
.PS "guiSetProp"
.DA #LIBGUI.OBJ.SetProp
.PS "guiGetProp"
@ -21,6 +30,9 @@ NEW
.PS "guiGetMsg"
.DA #LIBGUI.MSG.Get
.PS "guiMsgBox"
.DA #LIBGUI.MBOX.MsgBox
.DA #0
*--------------------------------------
MAN

View File

@ -1,33 +1,103 @@
NEW
AUTO 3,1
*--------------------------------------
BUT.New >STYA ZPPtr1
* NewBut(HWND, bFlags, wW, pICON, pTEXT, bKEYMOD, bKEY, wID, wX, wY)
*--------------------------------------
BUT.New lda #S.OBJ.T.BUT
jsr OBJ.New
bcs .9
* >STYA ZPObjPtr
ldy #S.OBJ.Y1
jsr OBJ.PullWordAtY
ldy #S.OBJ.X1
jsr OBJ.PullWordAtY
ldy #S.BUT.KEYMOD
jsr OBJ.PullWordAtY
ldy #S.BUT.pTEXT
jsr OBJ.PullWordAtY
ldy #S.BUT.pICON
jsr OBJ.PullWordAtY
ldy #S.OBJ.W
lda (ZPPtr1),y
iny
ora (ZPPtr1),y
bne .1 W in !NULL, static size
jsr OBJ.PullWordAtY
ldy #S.BUT.hBM
lda (ZPPtr1),y
beq .1
ldy #S.BM.W
* >SYSCALL2 GetStkObjProp
ldy #S.OBJ.F
jsr OBJ.PullByteAtY
phy
ldy #S.OBJ.W+1
sta (ZPPtr1),y
dey
pla
sta (ZPPtr1),y
jsr OBJ.PullHWND
.1
ldy #S.OBJ.W
jsr OBJ.GetPropAtY
bcc .5 W in !NULL, static size
stz DX
stz DX+1
ldy #S.BUT.pICON
jsr OBJ.GetPropAtY
bcs .1 no icon
lda #16 IconW
sta DX
.1 ldy #S.BUT.pTEXT
jsr OBJ.GetPropAtY
bcs .3 no text
ldx hSYSFON
jsr FON.GetTextSize
ldy #S.OBJ.F
lda (ZPObjPtr),y
and #S.BUT.F.NOSPACE
bne .2
lda DX
beq .2
clc
adc PREFS.XSeparator
sta DX
.2 clc
lda CB.CACHE+S.CB.SrcW
adc DX
sta DX
lda CB.CACHE+S.CB.SrcW+1
adc DX+1
sta DX+1
.3 lda #PREFS.XSeparator
asl
* clc
adc DX
ldy #S.OBJ.W
sta (ZPObjPtr),y
lda #0
adc DX+1
iny
sta (ZPObjPtr),y
.5
.8 clc
rts
.9 >POP 14
rts
*--------------------------------------
BUT.Paint
BUT.Enter
*--------------------------------------
BUT.Draw
*--------------------------------------
BUT.Close

View File

@ -2,8 +2,8 @@ NEW
AUTO 3,1
*--------------------------------------
CB.InitCacheA sta CB.Cache+S.CB.CMD
*--------------------------------------
CB.ClearCache ldx #S.CB-1
ldx #S.CB-1
.1 stz CB.Cache,x
dex
@ -97,7 +97,7 @@ CB.FlushBufToYA ldx hCBBuf
bit PTR.bVisible
bpl .1
jsr PTR.Hide.I
jsr PTR.Disable
.1 lda #0
sta (ZPCBBufPtr)
@ -155,10 +155,7 @@ CB.FlushBufToYA ldx hCBBuf
stz hCBBuf
>SYSCALL2 FreeMem
bit PTR.bVisible
bpl .8
jmp PTR.Show.I
jmp PTR.Enable
.8 clc
.9 rts

View File

@ -228,6 +228,7 @@ CLIP.Line.BOTTOM .EQ 4
CLIP.Line.TOP .EQ 8
*--------------------------------------
CLIP.Line jsr CLIP.Line.EncodeP1
>DEBUG
jsr CLIP.Line.EncodeP2
.1 lda CLIP.Line.P1
@ -273,7 +274,6 @@ CLIP.Line jsr CLIP.Line.EncodeP1
* P2
.5 lda CLIP.Line.P2
bit #CLIP.Line.TOP
beq .6
@ -315,11 +315,12 @@ CLIP.Line.EncodeP1
lda CB.Cache+S.CB.X1
ldx CB.Cache+S.CB.X1+1
jsr CLIP.Line.EncodeX.AX
tay
lda CB.Cache+S.CB.Y1
ldx CB.Cache+S.CB.Y1+1
jsr CLIP.Line.EncodeY.AX
sta CLIP.Line.P1
sty CLIP.Line.P1
rts
*--------------------------------------
CLIP.Line.EncodeP2
@ -328,11 +329,12 @@ CLIP.Line.EncodeP2
lda CB.Cache+S.CB.X2
ldx CB.Cache+S.CB.X2+1
jsr CLIP.Line.EncodeX.AX
tay
lda CB.Cache+S.CB.Y2
ldx CB.Cache+S.CB.Y2+1
jsr CLIP.Line.EncodeY.AX
sta CLIP.Line.P2
sty CLIP.Line.P2
rts
*--------------------------------------
CLIP.Line.EncodeX.AX
@ -340,9 +342,12 @@ CLIP.Line.EncodeX.AX
>SCMPAX OBJ.Cache+S.OBJ.X1
bpl .1
pla
tya
ora #CLIP.Line.LEFT
plx
tay
rts
.1 pla
@ -351,19 +356,20 @@ CLIP.Line.EncodeX.AX
tya
ora #CLIP.Line.RIGHT
rts
tay
.8 tya
rts
.8 rts
*--------------------------------------
CLIP.Line.EncodeY.AX
pha
>SCMPAX OBJ.Cache+S.OBJ.Y1
bpl .1
pla
tya
ora #CLIP.Line.TOP
plx
tya
rts
.1 pla
@ -372,10 +378,9 @@ CLIP.Line.EncodeY.AX
tya
ora #CLIP.Line.BOTTOM
rts
tay
.8 tya
rts
.8 rts
*--------------------------------------
CB.Cache.SetX2Y2
lda CB.Cache+S.CB.SrcW

View File

@ -8,7 +8,7 @@ DRAW.Line jsr DRAW.PullY2X2Y1X1
>PULLB CB.Cache+S.CB.COLOR
>PULLB CB.Cache+S.CB.OP
jsr DRAW.PullWND
jsr DRAW.PullInnerWND
lda CB.Cache+S.CB.X2
sec
@ -19,6 +19,7 @@ DRAW.Line jsr DRAW.PullY2X2Y1X1
sta DX+1 DX = X2 - X1
bmi .1 DX < 0....
ora DX
bne .2 DX > 0...
@ -54,14 +55,17 @@ DRAW.Line jsr DRAW.PullY2X2Y1X1
bcs .8
jmp CB.GFXWrite
.8 rts
.8 clc
rts
*--------------------------------------
.3 >NOT16 DY set DY=-DY
lda #$ff
sta IY set IY=-1
.4 jsr CLIP.Line
bcs .8
.4
* jsr CLIP.Line
* bcs .8
lda #S.CB.CMD.SETPIXEL
sta CB.Cache+S.CB.CMD
@ -96,6 +100,7 @@ DRAW.Line.IncXY lda DX DX=DY
bne .3
inc CB.Cache+S.CB.X1+1
.3 lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
@ -103,7 +108,8 @@ DRAW.Line.IncXY lda DX DX=DY
jsr CB.GFXWrite
bra .1
.8 rts
.8 clc
rts
*--------------------------------------
DRAW.Line.IncY lda DY
eor #$ff
@ -179,7 +185,8 @@ DRAW.Line.IncY lda DY
jsr CB.GFXWrite
bra .1
.8 rts
.8 clc
rts
*--------------------------------------
DRAW.Line.IncX lda DX
eor #$ff
@ -187,6 +194,7 @@ DRAW.Line.IncX lda DX
lda DX+1
eor #$ff
sta Counter+1
lda DY IE=2*DY
asl
sta IE
@ -256,16 +264,17 @@ DRAW.Line.IncX lda DX
.6 jsr CB.GFXWrite
bra .1
.8 rts
.8 clc
rts
*--------------------------------------
* fillrectangle (short int hWND, short int OP, short int COLOR, int X1, int Y1, int X2, int Y2)
* fill (short int hWND, short int OP, short int COLOR, int X1, int Y1, int X2, int Y2)
*--------------------------------------
FillRectangle jsr DRAW.PullY2X2Y1X1
DRAW.Fill jsr DRAW.PullY2X2Y1X1
>PULLB CB.Cache+S.CB.COLOR
>PULLB CB.Cache+S.CB.OP
jsr DRAW.PullWND
jsr DRAW.PullInnerWND
lda #S.CB.CMD.FILLRECT
sta CB.Cache+S.CB.CMD
@ -275,11 +284,12 @@ FillRectangle jsr DRAW.PullY2X2Y1X1
jmp CB.GFXWrite
.8 rts
.8 clc
rts
*--------------------------------------
* drawbitmap (short int hWND, short int OP, short int M, S.BM *bitmap, int X1, int Y1)
*--------------------------------------
DrawBitMap lda #S.CB.CMD.BITBLT
DRAW.BitMap lda #S.CB.CMD.BITBLT
jsr CB.InitCacheA
jsr DRAW.PullY1X1
@ -289,28 +299,18 @@ DrawBitMap lda #S.CB.CMD.BITBLT
>PULLB CB.Cache+S.CB.M
>PULLB CB.Cache+S.CB.OP
jsr DRAW.PullWND
jsr DRAW.PullInnerWND
jsr CLIP.CB.Cache
bcs .8
jmp CB.GFXWrite
.8 rts
.8 clc
rts
*--------------------------------------
DRAW.xBM >LDYA L.BMs,x
DRAW.yaBM >STYA ZPBMPtr
bra DRAW.BM
DRAW.xBMAtDXDY >LDYA L.BMs,x
DRAW.yaBMAtDXDY >STYA ZPBMPtr Src BM
ldx #3
.1 lda DX,x
sta CB.Cache+S.CB.X1,x
dex
bpl .1
DRAW.BM lda #S.CB.CMD.BITBLT
sta CB.Cache+S.CB.CMD
@ -341,7 +341,7 @@ DRAW.BM lda #S.CB.CMD.BITBLT
*--------------------------------------
* drawtext (short int hWND, short int OP, short int hFONT, int X1, int Y1, char *str)
*--------------------------------------
DrawText lda #S.CB.CMD.DRAWTEXT2
DRAW.Text lda #S.CB.CMD.DRAWTEXT2
jsr CB.InitCacheA
>PULLW CB.Cache+S.CB.TxtPtr
@ -351,31 +351,20 @@ DrawText lda #S.CB.CMD.DRAWTEXT2
>PULLB CB.Cache+S.CB.hFont
>PULLB CB.Cache+S.CB.OP
jsr DRAW.PullWND
jsr DRAW.PullInnerWND
jsr CLIP.CB.Cache
bcs .8
jmp CB.GFXWrite
.8 rts
.8 clc
rts
*--------------------------------------
DRAW.YAText >STYA CB.Cache+S.CB.TxtPtr
stx CB.Cache+S.CB.hFont
bra DRAW.Text
*--------------------------------------
DRAW.YATextAtDXDY
>STYA CB.Cache+S.CB.TxtPtr
stx CB.Cache+S.CB.hFont
ldx #3
.1 lda DX,x DX,DY -> S.CB.X1,S.CB.Y1
sta CB.Cache+S.CB.X1,x
dex
bpl .1
DRAW.Text lda #S.CB.CMD.DRAWTEXT2
lda #S.CB.CMD.DRAWTEXT2
sta CB.Cache+S.CB.CMD
lda #0
@ -398,17 +387,21 @@ DRAW.PullY2X2Y1X1
DRAW.PullY1X1 ldx #3
DRAW.PullX >PULLA
sta CB.Cache+S.CB.X1-1,x
>PULLA
sta CB.Cache+S.CB.X1,x
dex
dex
bpl DRAW.PullX
rts
*--------------------------------------
DRAW.PullWND >PULLA hWND
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
DRAW.PullInnerWND
jsr OBJ.PullHWND get dest window at ZPWNDPtr
jsr DRAW.ToGlobal set CB.Cache to global coord.
jsr DRAW.GetInnerWND get inners in OBJ.Cache
jmp DRAW.ToGlobal set CB.Cache to global coord.
*--------------------------------------
DRAW.GetInnerWND
ldy #S.OBJ.X1
@ -435,7 +428,7 @@ DRAW.GetInnerWND
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.W+1
iny #S.WND.InnerH
ldy #S.WND.InnerH
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.H
iny
@ -443,26 +436,26 @@ DRAW.GetInnerWND
sta OBJ.Cache+S.OBJ.H+1
>LDYA L.OBJ.Cache
jmp OBJ.SetX2Y2
jmp OBJ.SetX2Y2 set X2 = X1 + W - 1...
*--------------------------------------
DRAW.ToGlobal >LDYA ZPWNDPtr
>STYA ZPPtr1
.1 ldy #S.OBJ.X1
ldx #S.CB.X1
jsr DRAW.AddP1YtoCBX
jsr DRAW.AddPtr1YtoCBX
ldy #S.WND.InnerY1
ldx #S.CB.Y1
jsr DRAW.AddP1YtoCBX
jsr DRAW.AddPtr1YtoCBX
ldy #S.OBJ.X1
ldx #S.CB.X2
jsr DRAW.AddP1YtoCBX
jsr DRAW.AddPtr1YtoCBX
ldy #S.WND.InnerY1
ldx #S.CB.Y2
jsr DRAW.AddP1YtoCBX
jsr DRAW.AddPtr1YtoCBX
ldy #S.OBJ.hPARENT+1
lda (ZPPtr1),y
@ -479,7 +472,7 @@ DRAW.ToGlobal >LDYA ZPWNDPtr
.8 clc
rts
*--------------------------------------
DRAW.AddP1YtoCBX
DRAW.AddPtr1YtoCBX
lda (ZPPtr1),y
clc
adc CB.Cache,x

View File

@ -1,9 +1,102 @@
NEW
AUTO 3,1
*--------------------------------------
* idButton MsgBox(hWND, pTITLE, pTEXT, pBM, idButtons)
*--------------------------------------
* idButton MsgBox(pTITLE, pTEXT, pBM, idButtons)
* guiNewWnd(sFlags, iX1, iY1, iW, iH)
*--------------------------------------
MBOX.MsgBox >LDYAI 360
>STYA IE
>LDYAI 80
>STYA INE
lda WND.Desktop+S.OBJ.W
sec
sbc IE
sta DX
lda WND.Desktop+S.OBJ.W+1
sbc IE+1
lsr
sta DX+1
ror DX
lda WND.Desktop+S.OBJ.H
sec
sbc INE
sta DY
lda WND.Desktop+S.OBJ.H+1
sbc INE+1
lsr
sta DY+1
ror DY
>PUSHBI S.OBJ.F.BORDER+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MODAL
>PUSHW DX
>PUSHW DY
>PUSHW IE
>PUSHW INE
jsr WND.New
bcs .9
pha
ldy #S.WND.BGCOLOR
lda #C.WHITE
sta (ZPObjPtr),y
ldy #6
lda (pStack),y
tax
dey
lda (pStack),y
ldy #S.WND.pTITLE
jsr OBJ.SetAXAtY
pla
jsr WND.Show
bcs .9
ldy #2 pBM
lda (pStack),y
tax
dey
lda (pStack),y
jsr MBOX.DrawBM
.9 >POP 7
rts
*--------------------------------------
MBOX.DrawBM cpx #0
bne .1
tax
>LDYA L.BMs,x
.1 >STYA ZPBMPtr
jsr CB.GetBuf
bcs .9
lda #28
sta CB.Cache+S.CB.X1
stz CB.Cache+S.CB.X1+1
sta CB.Cache+S.CB.Y1
stz CB.Cache+S.CB.Y1+1
jsr DRAW.BM
* >DEBUG
* >LDYA ZPWNDPtr
>LDYA L.WND.Desktop
jmp CB.FlushBufToYA
.9 rts
*--------------------------------------
*--------------------------------------
MAN
SAVE usr/src/lib/libgui.s.mbox

View File

@ -319,9 +319,7 @@ MENU.SetMenuSizePos
sta (ZPMENUPtr),y
.5 >LDYA ZPMENUPtr
jsr OBJ.SetX2Y2
rts
jmp OBJ.SetX2Y2
*--------------------------------------
MENU.GetMItemW ldy #S.MITEM.pICON
lda (ZPPtr1),y
@ -347,7 +345,7 @@ MENU.GetMItemW ldy #S.MITEM.pICON
sta IE+1
.2 jsr MENU.GetKeyString
bcs .8
beq .8
ldx hSYSFON
jsr FON.GetTextSize
@ -462,11 +460,9 @@ MENU.Enter jsr MENU.GetDXDY
eor #S.MITEM.S.SELECTED
sta (ZPPtr1),y was selected before...
jsr CB.GetBuf
jsr MENU.DrawMItemBuf
bcs .9
jsr MENU.DrawMItem
.2 jsr MENU.NextMItemDY
bra .1
*--------------------------------------
@ -477,11 +473,9 @@ MENU.Enter jsr MENU.GetDXDY
eor #S.MITEM.S.SELECTED
sta (ZPPtr1),y
jsr CB.GetBuf
jsr MENU.DrawMItemBuf
bcs .9
jsr MENU.DrawMItem
.30 ldx MENU.Stack.Idx
inx
cpx MENU.Stack.Cnt
@ -576,6 +570,18 @@ MENU.Draw >SYSCALL2 GetMemPtr
.8 >LDYA L.WND.Screen
jmp CB.FlushBufToYA
.9 rts
*--------------------------------------
MENU.DrawMItemBuf
jsr CB.GetBuf
bcs .9
jsr MENU.DrawMItem
bcs .9
>LDYA L.WND.Screen
jmp CB.FlushBufToYA
.9 rts
*--------------------------------------
MENU.DrawMItem jsr MENU.ResetX1Y1X2
@ -588,22 +594,14 @@ MENU.DrawMItem jsr MENU.ResetX1Y1X2
jmp CB.Cache2CBBuf
*--------------------------------------
MENU.DrawMItem1 lda #S.CB.CMD.FILLRECT
sta CB.Cache+S.CB.CMD
lda #S.CB.OP.SET
sta CB.Cache+S.CB.OP
lda #S.CB.M.MONO
sta CB.Cache+S.CB.M
MENU.DrawMItem1 jsr MENU.IsSelected
ldx PREFS.MenuColor
jsr MENU.IsSelected
lda PREFS.MenuColor
bcc .15
txa
eor #C.WHITE
tax
eor #$ff
.15 stx CB.Cache+S.CB.COLOR
.15 jsr CB.FillRectMonoA
lda CB.Cache+S.CB.Y1
sec
@ -642,9 +640,8 @@ MENU.DrawMItem1 lda #S.CB.CMD.FILLRECT
inc CB.Cache+S.CB.X1+1
.21 jsr MENU.GetText
jsr MENU.IsSelected
.21 jsr MENU.IsSelected
jsr MENU.GetText
ldx hSYSFON
jsr DRAW.YAText
@ -662,10 +659,10 @@ MENU.DrawMItem1 lda #S.CB.CMD.FILLRECT
cmp #S.MITEM.T.ITEM
bne .3
jsr MENU.GetKeyString
bcs .3
jsr MENU.IsSelected
jsr MENU.GetKeyString C untouched
beq .3
ldx hSYSFON
jsr DRAW.YAText
@ -711,15 +708,9 @@ MENU.GetIcon ldy #S.MITEM.pICON+1
rts
*--------------------------------------
MENU.IsSelected phy
pha
ldy #S.MITEM.S
MENU.IsSelected ldy #S.MITEM.S
lda (ZPPtr1),y
asl
.9 pla
ply
rts
*--------------------------------------
MENU.GetText ldy #S.MITEM.pTEXT
@ -768,8 +759,8 @@ MENU.GetKeyString
sta TEXTBUF,x
stz TEXTBUF+1,x
>LDYA L.TEXTBUF
clc
>LDYA L.TEXTBUF NZ
rts
*--------------------------------------
.4 pha
@ -784,12 +775,11 @@ MENU.GetKeyString
.6 pla
rts
.9 sec
rts
.9 rts
*--------------------------------------
MENU.Save lda #S.CB.CMD.GETRECTBUFSIZE
MENU.Save jsr PTR.Disable
lda #S.CB.CMD.GETRECTBUFSIZE
jsr CB.InitCacheA
ldy #S.OBJ.X1
@ -831,7 +821,7 @@ MENU.Save lda #S.CB.CMD.GETRECTBUFSIZE
jsr CB.GFXWrite
clc
jmp PTR.Enable
.9 rts
*--------------------------------------
@ -885,34 +875,6 @@ MENU.ResetX1Y1X2
rts
*--------------------------------------
MENU.FindSelected
>LDYA ZPPtr1
>STYA D
jsr MENU.GetMItems
.1 lda (ZPPtr1)
beq .9
cmp #S.MITEM.T.SEP
beq .2
ldy #S.MITEM.S
lda (ZPPtr1),y
bmi .8
.2 jsr MENU.NextMItem
bra .1
.8 clc
rts
.9 >LDYA D
>STYA ZPPtr1
sec
rts
*--------------------------------------
MENU.GetMItems lda ZPMENUPtr
clc
adc #S.MENU.Items
@ -953,7 +915,7 @@ MENU.Destroy clc
bit PTR.bVisible
bpl .1
jsr PTR.Hide.I
jsr PTR.Disable
.1 lda #S.CB.CMD.BITBLT
jsr CB.InitCacheA
@ -1010,10 +972,7 @@ MENU.Destroy clc
bne .2
.7 bit PTR.bVisible
bpl .8
jmp PTR.Show.I
.7 jmp PTR.Enable
.8 clc
rts

View File

@ -109,12 +109,11 @@ MOU.CheckOverWND
.1 stx WND.Stack.Idx
lda WND.Stack-1,x
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
jsr OBJ.GetHWNDA
ldy #S.OBJ.F
lda (ZPWNDPtr),y
and #S.WND.F.BORDER
and #S.OBJ.F.BORDER
beq .2
jsr MOU.ChkWNDBorders

View File

@ -16,10 +16,9 @@ OBJ.New pha
pla
sta (ZPObjPtr)
phx hObj
tax
ldy OBJ.SizeOf,x
tay
lda OBJ.SizeOf,y
tay
dey
lda #0
@ -27,11 +26,9 @@ OBJ.New pha
dey
bne .1
>LDYA ZPObjPtr
* clc
.9 plx
rts
.9 rts
*--------------------------------------
* hOBJ, Prop8, Value16
*--------------------------------------
@ -74,10 +71,16 @@ OBJ.GetProp >PULLA
ply
lda (ZPObjPtr),y
OBJ.GetPropAtY lda (ZPObjPtr),y
pha
iny
lda (ZPObjPtr),y
ora (ZPObjPtr),y
clc
bne .1
sec
.1 lda (ZPObjPtr),y
ply
rts
@ -135,6 +138,27 @@ OBJ.SetX2Y2 >STYA ZPPtr1
rts
*--------------------------------------
OBJ.SetAXAtY sta (ZPObjPtr),y
iny
txa
sta (ZPObjPtr),y
rts
*--------------------------------------
OBJ.PullWordAtY >PULLA
sta (ZPObjPtr),y
iny
OBJ.PullByteAtY >PULLA
sta (ZPObjPtr),y
rts
*--------------------------------------
OBJ.PullHWND >PULLA
OBJ.GetHWNDA >SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
rts
*--------------------------------------
OBJ.GetInCache >STYA .1+1
ldx #S.OBJ-1

View File

@ -99,22 +99,37 @@ PTR.SetPos >PULLW ZPPtr1
clc
rts
*--------------------------------------
PTR.Hide lda PTR.bVisible
bpl .9
PTR.Disable bit PTR.bVisible
bmi PTR.Hide.I
clc
rts
*--------------------------------------
PTR.Enable bit PTR.bVisible
bmi PTR.Show.I
clc
rts
*--------------------------------------
PTR.Hide lda PTR.bVisible
bpl .8
jsr PTR.Hide.I
stz PTR.bVisible
.9 clc
bra PTR.Hide.I
.8 clc
rts
*--------------------------------------
PTR.Show lda PTR.bVisible
bmi .9
bmi .8
jsr PTR.Show.I
dec PTR.bVisible
.9 rts
bra PTR.Show.I
.8 clc
rts
*--------------------------------------
PTR.Hide.I lda #S.CB.OP.RESTORE
bra PTR.Draw.I

View File

@ -59,22 +59,13 @@ SYSBAR.Show jsr CB.GetBuf
.9 rts
*--------------------------------------
SYSBAR.ShowSysBut
lda #S.CB.CMD.FILLRECT
jsr CB.InitCacheA
lda #S.CB.OP.SET
sta CB.Cache+S.CB.OP
lda #S.CB.M.MONO
sta CB.Cache+S.CB.M
lda PREFS.SYSBARCOLOR
lda PREFS.SysBarColor
bit WND.SysBar.bSysBut
bpl .1
eor #$ff
.1 sta CB.Cache+S.CB.COLOR
.1 jsr CB.FillRectMonoA
ldx #S.RECT-1
@ -85,57 +76,45 @@ SYSBAR.ShowSysBut
jsr CB.Cache2CBBuf
lda RECT.SysBut+S.RECT.X1
lda CB.Cache+S.CB.X1
clc
adc #4
sta DX
lda RECT.SysBut+S.RECT.X1+1
sta CB.Cache+S.CB.X1
lda CB.Cache+S.CB.X1+1
adc #0
sta DX+1
sta CB.Cache+S.CB.X1+1
lda RECT.SysBut+S.RECT.Y1
inc CB.Cache+S.CB.Y1
bne .30
inc CB.Cache+S.CB.Y1+1
.30 ldx #BM.ID.APPLE
jsr DRAW.xBM
lda CB.Cache+S.CB.X1
clc
adc #1
sta DY
lda RECT.SysBut+S.RECT.Y1+1
adc #20
sta CB.Cache+S.CB.X1
lda CB.Cache+S.CB.X1+1
adc #0
sta DY+1
sta CB.Cache+S.CB.X1+1
ldx #BM.ID.APPLE
jsr DRAW.xBMAtDXDY
inc CB.Cache+S.CB.Y1
bne .31
lda RECT.SysBut+S.RECT.X1
clc
adc #21
sta DX
lda RECT.SysBut+S.RECT.X1+1
adc #0
sta DX+1
inc CB.Cache+S.CB.Y1+1
inc DY
bne .3
inc DY+1
.3 lda WND.SysBar.bSysBut
.31 lda WND.SysBar.bSysBut
asl
>LDYA L.WND.SysBar.2osX
ldx hSYSFON
jmp DRAW.YATextAtDXDY
jmp DRAW.YAText
*--------------------------------------
SYSBAR.ShowSysWNDs
lda #S.CB.CMD.FILLRECT
jsr CB.InitCacheA
lda #S.CB.OP.SET
sta CB.Cache+S.CB.OP
lda #S.CB.M.MONO
sta CB.Cache+S.CB.M
lda PREFS.SYSBARCOLOR
sta CB.Cache+S.CB.COLOR
lda PREFS.SysBarColor
jsr CB.FillRectMonoA
ldx #S.RECT-1
@ -147,17 +126,8 @@ SYSBAR.ShowSysWNDs
jmp CB.Cache2CBBuf
*--------------------------------------
SYSBAR.ShowSysClk
lda #S.CB.CMD.FILLRECT
jsr CB.InitCacheA
lda #S.CB.OP.SET
sta CB.Cache+S.CB.OP
lda #S.CB.M.MONO
sta CB.Cache+S.CB.M
lda PREFS.SYSBARCOLOR
sta CB.Cache+S.CB.COLOR
lda PREFS.SysBarColor
jsr CB.FillRectMonoA
ldx #S.RECT-1

View File

@ -118,100 +118,67 @@ WND.Quit.RTS rts
*--------------------------------------
WND.New ldy WND.Stack.Top
cpy #WND.MAX
bcc .10
bcs .98
lda #E.OOH
.9 >POP 9
rts
.10 lda #S.OBJ.T.WND
lda #S.OBJ.T.WND
jsr OBJ.New
bcs .9
bcs .99
>STYA ZPWNDPtr
* >STYA ZPObjPtr
phx
ldy #S.WND.fPaint
lda L.WND.fPaint
sta (ZPWNDPtr),y
iny
lda L.WND.fPaint+1
sta (ZPWNDPtr),y
>PULLA
ldy #S.OBJ.H
sta (ZPWNDPtr),y
pha
>PULLA
iny
sta (ZPWNDPtr),y
ldy #S.WND.InnerH+1
sta (ZPWNDPtr),y
pla
dey
sta (ZPWNDPtr),y
jsr OBJ.PullWordAtY
>PULLA
ldy #S.OBJ.W
sta (ZPWNDPtr),y
pha
>PULLA
iny
sta (ZPWNDPtr),y
ldy #S.WND.InnerW+1
sta (ZPWNDPtr),y
pla
dey
sta (ZPWNDPtr),y
jsr OBJ.PullWordAtY
>PULLA
ldy #S.OBJ.Y1
sta (ZPWNDPtr),y
>PULLA
iny
sta (ZPWNDPtr),y
jsr OBJ.PullWordAtY
>PULLA
ldy #S.OBJ.X1
and PREFS.BestViewedX
sta (ZPWNDPtr),y
>PULLA
iny
sta (ZPWNDPtr),y
jsr OBJ.PullWordAtY
>PULLA
bit #S.WND.F.RESIZE
beq .2
ora #S.WND.F.BORDER
ora #S.OBJ.F.BORDER
.2 ldy #S.OBJ.F
sta (ZPWNDPtr),y
sta (ZPObjPtr),y
ldy #S.PS.PID
lda (pPs),y
ldy #S.OBJ.hOWNER
sta (ZPWNDPtr),y
sta (ZPObjPtr),y
lda L.WND.Desktop
ldx L.WND.Desktop+1
ldy #S.OBJ.hPARENT
sta (ZPWNDPtr),y
iny
lda L.WND.Desktop+1
sta (ZPWNDPtr),y
jsr OBJ.SetAXAtY
txa ID
lda L.WND.fPaint
ldx L.WND.fPaint+1
ldy #S.WND.fPaint
jsr OBJ.SetAXAtY
pla ID
* clc
rts
.98 lda #E.OOH
.99 >POP 9
rts
*--------------------------------------
WND.Destroy clc
rts
*--------------------------------------
WND.Activate >SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
WND.Activate jsr OBJ.GetHWNDA
clc
@ -240,11 +207,10 @@ WND.Bring2Front ldx WND.Stack.Idx
WND.Show sta WND.hWND
ldx WND.Stack.Top
beq WND.Show2
beq .1
lda WND.Stack-1,x
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
jsr OBJ.GetHWNDA
lda #S.WND.S.ACTIVE
jsr WND.ClrStatus
@ -259,20 +225,15 @@ WND.Show sta WND.hWND
lda WND.hWND
ldx WND.Stack.Top
*--------------------------------------
WND.Show2 sta WND.Stack,x
inc WND.Stack.Top
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
.1 sta WND.Stack,x
inc WND.Stack.Top
*--------------------------------------
WND.Draw jsr OBJ.GetHWNDA Y,A = ZPWNDPtr
jsr OBJ.SetX2Y2
ldy #S.WND.InnerY2
sta (ZPWNDPtr),y
txa
iny
sta (ZPWNDPtr),y
jsr WND.ResetInnerW
jsr CB.GetBuf
bcs WND.Activate.RTS
@ -282,7 +243,7 @@ WND.Show2 sta WND.Stack,x
ldy #S.OBJ.F
lda (ZPWNDPtr),y
and #S.WND.F.BORDER
and #S.OBJ.F.BORDER
beq .1
>LDYA ZPWNDPtr
@ -309,10 +270,7 @@ WND.Show2 sta WND.Stack,x
jsr WND.Add2Counter
ldy #S.WND.TBarY2
sta (ZPWNDPtr),y
iny
txa
sta (ZPWNDPtr),y
jsr WND.SetAXAtY
lda #S.WND.S.HASTBAR
jsr WND.SetStatus
@ -324,14 +282,14 @@ WND.Show2 sta WND.Stack,x
lda (ZPWNDPtr),y
beq .4
ldy #S.WND.MBarY1
jsr WND.SetCounterAtY
lda SYSFON.Hp1
jsr WND.Add2Counter
ldy #S.WND.MBarY2
sta (ZPWNDPtr),y
iny
txa
sta (ZPWNDPtr),y
jsr WND.SetAXAtY
lda #S.WND.S.HASMBAR
jsr WND.SetStatus
@ -340,30 +298,38 @@ WND.Show2 sta WND.Stack,x
lda (ZPWNDPtr),y
jsr MBAR.Draw
*--------------------------------------
.4 lda Counter
ldy #S.WND.InnerY1
sta (ZPWNDPtr),y
iny
lda Counter+1
sta (ZPWNDPtr),y
.4 ldy #S.WND.InnerY1
jsr WND.SetCounterAtY
ldy #S.WND.pSTATUS+1
lda (ZPWNDPtr),y
beq .8
lda SYSFON.Hp1
lda SYSFON.H
jsr WND.Add2Counter
ldy #S.WND.InnerY2
lda (ZPWNDPtr),y
sec
clc +1
sbc SYSFON.H
sta (ZPWNDPtr),y
tax
iny
lda (ZPWNDPtr),y
sbc #0
sta (ZPWNDPtr),y
inx
bne .5
inc
.5 ldy #S.WND.SBarY1+1
sta (ZPWNDPtr),y
dey
txa
sta (ZPWNDPtr),y
lda #S.WND.S.HASSBAR
jsr WND.SetStatus
@ -385,15 +351,277 @@ WND.Show2 sta WND.Stack,x
lda WND.hWND
pha
bra WND.Paint1
jmp WND.Paint1
.9
WND.Show.RTS rts
.9 rts
*--------------------------------------
WND.ResetInnerW ldy #S.OBJ.W
ldx #S.WND.InnerW
jsr .1
ldy #S.OBJ.H
ldx #S.WND.InnerH
jsr .1
ldy #S.OBJ.X2
ldx #S.WND.InnerX2
jsr .1
ldy #S.OBJ.Y2
ldx #S.WND.InnerY2
.1 lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
phx
ply
iny
sta (ZPWNDPtr),y
dey
pla
sta (ZPWNDPtr),y
rts
*--------------------------------------
WND.Add2Counter clc
adc Counter
sta Counter
bcc .8
inc Counter+1
.8 ldx Counter+1
rts
*--------------------------------------
WND.SetCounterAtY
lda Counter
ldx Counter+1
*--------------------------------------
WND.SetAXAtY sta (ZPWNDPtr),y
iny
txa
sta (ZPWNDPtr),y
rts
*--------------------------------------
WND.DrawTitleBar
lda #S.CB.CMD.FILLRECT
sta CB.Cache+S.CB.CMD
lda #S.CB.OP.SET
sta CB.Cache+S.CB.OP
lda #S.CB.M.C16
sta CB.Cache+S.CB.M
ldx PREFS.TBarColorI
ldy #S.OBJ.S
lda (ZPWNDPtr),y
and #S.WND.S.ACTIVE
beq .10
ldx PREFS.TBarColorA
.10 stx CB.Cache+S.CB.COLOR
ldy #S.OBJ.X1+5 X1,Y1,X2
ldx #5
.11 lda (ZPWNDPtr),y
sta CB.Cache+S.CB.X1,x
dey
dex
bpl .11
ldy #S.OBJ.Y1
lda (ZPWNDPtr),y
sta CB.Cache+S.CB.Y1
sec
adc SYSFON.H
sta CB.Cache+S.CB.Y2
iny
lda (ZPWNDPtr),y
sta CB.Cache+S.CB.Y1+1
adc #0
sta CB.Cache+S.CB.Y2+1
jsr CB.Cache2CBBuf
inc CB.Cache+S.CB.Y1
bne .12
inc CB.Cache+S.CB.Y1+1
* TOP LEFT ICON
.12 ldy #S.WND.ICON+1
lda (ZPWNDPtr),y
tax
dey
ora (ZPWNDPtr),y
bne .1
>LDYA L.BM.Apple
bra .2
.1 lda (ZPWNDPtr),y
tay
txa
.2 jsr DRAW.yaBM
jsr WND.DrawTitleBarText
bcs .9
* TOP RIGHT ICONS
ldy #S.OBJ.X2
lda (ZPWNDPtr),y
sec
sbc #48
sta CB.Cache+S.CB.X1
iny
lda (ZPWNDPtr),y
sbc #0
sta CB.Cache+S.CB.X1+1
ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.MIN
beq .3
ldx #BM.ID.MIN
jsr DRAW.xBM
.3 lda CB.Cache+S.CB.X1
clc
adc #16
sta CB.Cache+S.CB.X1
bcc .31
inc CB.Cache+S.CB.X1+1
.31 ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.MAX
beq .4
ldx #BM.ID.MAX
jsr DRAW.xBM
.4 lda CB.Cache+S.CB.X1
clc
adc #16
sta CB.Cache+S.CB.X1
bcc .41
inc CB.Cache+S.CB.X1+1
.41 ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.CLOSE
beq .8
ldx #BM.ID.CLOSE
jsr DRAW.xBM
.8 clc
.9 rts
*--------------------------------------
WND.DrawTitleBarText
ldy #S.WND.pTITLE
lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
ply
ldx hSYSFON
jsr FON.GetTextSize
ldy #S.OBJ.W
lda (ZPWNDPtr),y
sec
sbc CB.Cache+S.CB.SrcW
sta DX
iny
lda (ZPWNDPtr),y
sbc CB.Cache+S.CB.SrcW+1
lsr
ror DX
sta DX+1
ldy #S.OBJ.X1
lda (ZPWNDPtr),y
clc
adc DX
and PREFS.BestViewedX
sta CB.Cache+S.CB.X1
iny
lda (ZPWNDPtr),y
adc DX+1
sta CB.Cache+S.CB.X1+1
ldy #S.WND.pTITLE
lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
ply
ldx hSYSFON
clc
jmp DRAW.YAText
*--------------------------------------
WND.DrawStatusBar
jsr CB.BorderLineH
ldy #S.OBJ.X1
ldx #S.CB.X1
jsr CB.GetWndYCacheX
ldy #S.OBJ.X2
ldx #S.CB.X2
jsr CB.GetWndYCacheX
ldy #S.WND.SBarY1
ldx #S.CB.Y1
jsr CB.GetWndYCacheX
jsr CB.Cache2CBBuf
inc CB.Cache+S.CB.Y1
bne .1
inc CB.Cache+S.CB.Y1+1
.1 lda PREFS.SBarColor
jsr CB.FillRectMonoA
ldy #S.OBJ.Y2
ldx #S.CB.Y2
jsr CB.GetWndYCacheX
jsr CB.Cache2CBBuf
ldy #S.WND.pSTATUS
lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
ply
ldx hSYSFON
clc
jmp DRAW.YAText
*--------------------------------------
WND.Paint pha hWND
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
jsr OBJ.GetHWNDA
WND.Paint1 ldy #S.WND.fPaint
lda (ZPWNDPtr),y
@ -406,11 +634,12 @@ WND.Paint1 ldy #S.WND.fPaint
jmp (ZPPtr1)
*--------------------------------------
WND.fPaint >SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
WND.fPaint.RTS rts
WND.fPaint jsr OBJ.GetHWNDA
jsr CB.GetBuf
bcs WND.Show.RTS
bcs WND.fPaint.RTS
lda #S.CB.CMD.FILLRECT
sta CB.Cache+S.CB.CMD
@ -434,15 +663,12 @@ WND.fPaint >SYSCALL2 GetMemPtr
ldy #S.WND.InnerY1
lda (ZPWNDPtr),y
clc
adc #1
sta CB.Cache+S.CB.Y1
iny
lda (ZPWNDPtr),y
adc #0
sta CB.Cache+S.CB.Y1+1
ldy #S.OBJ.X2
ldy #S.WND.InnerX2
lda (ZPWNDPtr),y
sta CB.Cache+S.CB.X2
iny
@ -451,16 +677,13 @@ WND.fPaint >SYSCALL2 GetMemPtr
ldy #S.WND.InnerY2
lda (ZPWNDPtr),y
sec
sbc #1
sta CB.Cache+S.CB.Y2
iny
lda (ZPWNDPtr),y
sbc #0
sta CB.Cache+S.CB.Y2+1
jsr CB.Cache2CBBuf
*--------------------------------------
ldy #S.WND.BGBM
lda (ZPWNDPtr),y
sta CB.Cache+S.CB.SrcPtr
@ -495,227 +718,9 @@ WND.fPaint >SYSCALL2 GetMemPtr
jmp CB.FlushBufToYA
*--------------------------------------
WND.DrawTitleBar
lda #S.CB.CMD.FILLRECT
jsr CB.InitCacheA
lda #S.CB.OP.SET
sta CB.Cache+S.CB.OP
lda #S.CB.M.C16
sta CB.Cache+S.CB.M
ldx PREFS.TBARCOLORI
ldy #S.OBJ.S
lda (ZPWNDPtr),y
and #S.WND.S.ACTIVE
beq .10
ldx PREFS.TBARCOLORA
.10 stx CB.Cache+S.CB.COLOR
ldy #S.OBJ.X1+5 X1,Y1,X2
ldx #5
.11 lda (ZPWNDPtr),y
sta CB.Cache+S.CB.X1,x
dey
dex
bpl .11
>LDYA CB.Cache+S.CB.X1
>STYA DX
ldy #S.OBJ.Y1
lda (ZPWNDPtr),y
sta DY
sec
adc SYSFON.H
sta CB.Cache+S.CB.Y2
iny
lda (ZPWNDPtr),y
sta DY+1
adc #0
sta CB.Cache+S.CB.Y2+1
jsr CB.Cache2CBBuf
inc DY
bne .12
inc DY+1
* TOP LEFT ICON
.12 ldy #S.WND.ICON+1
lda (ZPWNDPtr),y
tax
dey
ora (ZPWNDPtr),y
bne .1
>LDYA L.BM.Apple
bra .2
.1 lda (ZPWNDPtr),y
tay
txa
.2 jsr DRAW.yaBMAtDXDY
jsr WND.DrawTitleBarText
bcs .9
* TOP RIGHT ICONS
ldy #S.OBJ.X2
lda (ZPWNDPtr),y
sec
sbc #48
sta DX
iny
lda (ZPWNDPtr),y
sbc #0
sta DX+1
ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.MIN
beq .3
ldx #BM.ID.MIN
jsr DRAW.xBMAtDXDY
.3 lda DX
clc
adc #16
sta DX
bcc .31
inc DX+1
.31 ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.MAX
beq .4
ldx #BM.ID.MAX
jsr DRAW.xBMAtDXDY
.4 lda DX
clc
adc #16
sta DX
bcc .41
inc DX+1
.41 ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.CLOSE
beq .8
ldx #BM.ID.CLOSE
jsr DRAW.xBMAtDXDY
.8 clc
.9 rts
*--------------------------------------
WND.DrawTitleBarText
ldy #S.WND.pTITLE
lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
ply
ldx hSYSFON
jsr FON.GetTextSize
ldy #S.OBJ.W
lda (ZPWNDPtr),y
sec
sbc CB.Cache+S.CB.SrcW
sta DX
iny
lda (ZPWNDPtr),y
sbc CB.Cache+S.CB.SrcW+1
lsr
ror DX
sta DX+1
ldy #S.OBJ.X1
lda (ZPWNDPtr),y
clc
adc DX
and PREFS.BestViewedX
sta DX
iny
lda (ZPWNDPtr),y
adc DX+1
sta DX+1
ldy #S.WND.pTITLE
lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
ply
ldx hSYSFON
clc
jmp DRAW.YATextAtDXDY
*--------------------------------------
WND.DrawStatusBar
jsr CB.BorderLineH
ldy #S.OBJ.X1
ldx #S.CB.X1
jsr CB.GetWndYCacheX
ldy #S.WND.SBarY1
ldx #S.CB.Y1
jsr CB.GetWndYCacheX
ldy #S.OBJ.X2
ldx #S.CB.X2
jsr CB.GetWndYCacheX
jsr CB.Cache2CBBuf
lda PREFS.SBarColor
jsr CB.FillRectMonoA
inc CB.Cache+S.CB.Y1
bne .1
inc CB.Cache+S.CB.Y1+1
.1 ldy #S.OBJ.Y2
ldx #S.CB.Y2
jsr CB.GetWndYCacheX
jsr CB.Cache2CBBuf
ldy #S.WND.pSTATUS
lda (ZPWNDPtr),y
pha
iny
lda (ZPWNDPtr),y
ply
ldx hSYSFON
clc
jmp DRAW.YAText
*--------------------------------------
WND.SetMBar >PULLW ZPPtr1
>PULLA
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
jsr OBJ.PullHWND
>LDYA ZPPtr1
jsr MBAR.New
@ -739,16 +744,6 @@ WND.SetStatus ldy #S.OBJ.S
sta (ZPWNDPtr),y
rts
*--------------------------------------
WND.Add2Counter clc
adc Counter
sta Counter
bcc .8
inc Counter+1
.8 ldx Counter+1
rts
*--------------------------------------
MAN
SAVE usr/src/lib/libgui.s.wnd
LOAD usr/src/lib/libgui.s

View File

@ -126,8 +126,10 @@ CS.START cld
.DA PTR.Hide
.DA PTR.Show
.DA PTR.Update
.DA $ffff MOU.ReadMouse
.DA DRAW.Line
.DA DRAW.Fill
.DA DRAW.BitMap
.DA DRAW.Text
.DA OBJ.SetProp
.DA OBJ.GetProp
.DA WND.New
@ -136,7 +138,7 @@ CS.START cld
.DA WND.Paint
.DA WND.SetMBar
.DA MSG.Get
.DA MBAR.New
.DA MBOX.MsgBox
*--------------------------------------
L.WND.fPaint .DA WND.fPaint
*--------------------------------------
@ -307,6 +309,10 @@ LibCount .BS 1
hDevMouse .BS 1
*--------------------------------------
OBJ.SizeOf .DA S.WND
.DA 0
.DA 0
.DA S.BUT
* .DA S.TEXT
*--------------------------------------
CB.CmdLen .DA #S.CB.Y1+1 SETPIXEL
.DA #S.CB.Y1+1 GETPIXEL
@ -342,6 +348,7 @@ CB.PTR .DA #S.CB.CMD.BITBLT
CB.Cache .BS S.CB
OBJ.Cache .BS S.OBJ
*--------------------------------------
MENU.Stack.Owner .BS 1
MENU.Stack.Idx .BS 1
MENU.Stack.Cnt .BS 1
MENU.Stack .BS MENU.MAX
@ -445,14 +452,15 @@ TEXTBUF .BS 16 for composing HotKey strings
*--------------------------------------
PREFS.BestViewedX .DA #$FC
PREFS.MBarXMargin .DA #5
PREFS.XSeparator .DA #6
*
PREFS.MenuColor .DA #C.WHITE
PREFS.SYSBARCOLOR .DA #C.WHITE
PREFS.SysBarColor .DA #C.WHITE
PREFS.BorderColor .DA #C.BLACK
PREFS.TBARCOLORA .DA #C16.D.BLUE
PREFS.TBARCOLORI .DA #C16.L.BLUE
PREFS.TBarColorA .DA #C16.D.BLUE
PREFS.TBarColorI .DA #C16.L.BLUE
PREFS.MBarColor .DA #C.WHITE
PREFS.SBARCOLOR .DA #C.WHITE
PREFS.SBarColor .DA #C.WHITE
PREFS.DESKTOPCOLOR .DA #C16.D.BLUE
*--------------------------------------
MAN

View File

@ -663,17 +663,17 @@ Pak.PrintStats lda Pak.BL.OfsBitsL
CS.END
*--------------------------------------
.DO STATS=1
MSG.Stats .AS "\r\nLength : %5D\r\n"
.AS "Pass 1 : %5D\r\n"
.AS "Pass 2 : %5D\r\n"
.AS "Top 8 : %5D\r\n"
.AS "Top 16 : %5D\r\n"
.AS "Top 24 : %5D\r\n"
.AS "Top 32 : %5D\r\n"
.AS "Byte 8 : %5D\r\n"
.AZ "BL : %5D, Longest : %d (%d bits), Farest : %D (%d bits)\r\n"
MSG.TopBytes .AS "Top : (%2d) %h.%h.%h.%h.%h.%h.%h.%h %h.%h.%h.%h.%h.%h.%h.%h\r\n"
.AZ " %h.%h.%h.%h.%h.%h.%h.%h %h.%h.%h.%h.%h.%h.%h.%h\r\n"
MSG.Stats .CS "\r\nLength : %5D\r\n"
.CS "Pass 1 : %5D\r\n"
.CS "Pass 2 : %5D\r\n"
.CS "Top 8 : %5D\r\n"
.CS "Top 16 : %5D\r\n"
.CS "Top 24 : %5D\r\n"
.CS "Top 32 : %5D\r\n"
.CS "Byte 8 : %5D\r\n"
.CZ "BL : %5D, Longest : %d (%d bits), Farest : %D (%d bits)\r\n"
MSG.TopBytes .CS "Top : (%2d) %h.%h.%h.%h.%h.%h.%h.%h %h.%h.%h.%h.%h.%h.%h.%h\r\n"
.CZ " %h.%h.%h.%h.%h.%h.%h.%h %h.%h.%h.%h.%h.%h.%h.%h\r\n"
.FIN
TOP.Bits .DA #PAK.B.TOP8,#PAK.B.TOP16,#PAK.B.TOP24,#PAK.B.TOP32
TOP.BitCnt .DA #PAK.B.TOP8.W,#PAK.B.TOP16.W,#PAK.B.TOP24.W,#PAK.B.TOP32.W

View File

@ -8,6 +8,7 @@ NEW
.INB inc/macros.i
.INB inc/a2osx.i
.INB inc/mli.i
.INB inc/gfx.i
.INB inc/libgui.i
*--------------------------------------
.DUMMY
@ -16,6 +17,7 @@ ZS.START
hLogo .BS 2 00xx
hWND .BS 1
hMBAR .BS 1
TmpWord .BS 2
ZS.END .ED
*--------------------------------------
* File Header (16 Bytes)
@ -92,10 +94,10 @@ CS.QUIT.RTS rts
*--------------------------------------
WND.Test >PUSHBI S.WND.F.RESIZE+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MAX+S.WND.F.MIN
>PUSHWI 80
>PUSHWI 40
>PUSHWI 360
>PUSHWI 96
>PUSHWI 40
>PUSHWI 400
>PUSHWI 120
>LIBCALL hLIBGUI,LIBGUI.WND.New
bcs CS.QUIT.RTS
sta hWND
@ -105,10 +107,10 @@ WND.Test >PUSHBI S.WND.F.RESIZE+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MAX+S.WND.F.
>PUSHWI C.WHITE
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
>PUSHB hWND
>PUSHBI S.WND.BGBM
>PUSHW hLogo
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
* >PUSHB hWND
* >PUSHBI S.WND.BGBM
* >PUSHW hLogo
* >LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
>PUSHB hWND
>PUSHBI S.WND.pTITLE
@ -151,17 +153,79 @@ WND.Test.fPaint sta hWND
WND.Test.fPaint1
jsr $ffff Default WND.fPaint
* >PUSHB hWND
* >PUSHBI S.CB.OP.SET
* >PUSHBI C.BLACK
* >PUSHWI 10
* >PUSHWI 10
* >PUSHWI 200
* >PUSHWI 60
* >LIBCALL hLIBGUI,LIBGUI.DrawLine
.1 jsr WND.Test.1
>PUSHW TmpWord
>PUSHWI 0
jsr WND.Test.2
jsr WND.Test.1
>PUSHW TmpWord
>PUSHWI 94
jsr WND.Test.2
jsr WND.Test.3
lda TmpWord
cmp #400
lda TmpWord+1
sbc /400
bcc .1
stz TmpWord
stz TmpWord+1
.3
jsr WND.Test.1
>PUSHWI 0
>PUSHW TmpWord
jsr WND.Test.2
jsr WND.Test.1
>PUSHWI 399
>PUSHW TmpWord
jsr WND.Test.2
jsr WND.Test.4
lda TmpWord
cmp #94
lda TmpWord+1
sbc /94
bcc .3
clc
rts
*--------------------------------------
WND.Test.1 >PUSHB hWND
>PUSHBI S.CB.OP.SET +S.CB.OP.COLOR
>PUSHBI C.BLACK C16.D.GREEN
rts
WND.Test.2 >PUSHWI 250
>PUSHWI 60
>LIBCALL hLIBGUI,LIBGUI.DRAW.Line
rts
WND.Test.3 lda TmpWord
clc
adc #4
sta TmpWord
bcc .1
inc TmpWord+1
.1 rts
WND.Test.4 lda TmpWord
clc
adc #10
sta TmpWord
bcc .1
inc TmpWord+1
.1 rts
*--------------------------------------
CS.END
LIBGUI .AZ "libgui"
hLIBGUI .BS 1

View File

@ -399,7 +399,7 @@ MSG.TCPWAIT .AZ "BBSD:Waiting for TCP/IP initializing..."
MSG.INITOK .AZ "BBSD:Init Ok, Listening."
MSG.TCPIPERR .AZ "BBSD:TCP/IP Not initialized properly."
MSG.SKTERR .AZ "BBSD:Listen Error."
MSG.INCOMING .AZ "BBSD:Incoming Connection [SKT=%h] From : %d.%d.%d.%d\r\n"
MSG.INCOMING .CZ "BBSD:Incoming Connection [SKT=%h] From : %d.%d.%d.%d\r\n"
*--------------------------------------
NOD.Template .AZ "/dev/tty%h"
CMD.Template .AZ "${ROOT}sbin/getty -E %s %s"

View File

@ -350,11 +350,11 @@ hLIBCRYPT .BS 1
.FIN
*--------------------------------------
MSG.USAGE .AZ "Usage : CIFSD <ip|host> sharename mountpoint [[domain\]user]"
MSG.TCPIPERR .AZ "CIFSD:TCP/IP Not initialized properly."
MSG.UNKNOWN .AZ "CIFSD:%s: Unknown host\r\n"
MSG.NOCONN .AZ "CIFSD:No Connection To %s\r\n"
MSG.CONNECTED .AZ "CIFSD:Connected To %s\r\n"
MSG.MOUNTED .AZ "CIFSD:%s Mounted As %s\r\n"
MSG.TCPIPERR .CZ "CIFSD:TCP/IP Not initialized properly."
MSG.UNKNOWN .CZ "CIFSD:%s: Unknown host\r\n"
MSG.NOCONN .CZ "CIFSD:No Connection To %s\r\n"
MSG.CONNECTED .CZ "CIFSD:Connected To %s\r\n"
MSG.MOUNTED .CZ "CIFSD:%s Mounted As %s\r\n"
*--------------------------------------
.DUMMY
.OR 0

View File

@ -40,6 +40,8 @@ CS.START cld
.DA CS.DOEVENT
.DA CS.QUIT
L.LIBGUI .DA LIBGUI
L.ABOUT.T .DA ABOUT.T
L.ABOUT.M .DA ABOUT.M
L.GUITEST1 .DA GUITEST1
L.GUITEST2 .DA GUITEST2
L.MSG .DA MSG
@ -69,26 +71,38 @@ CS.RUN >SLEEP
cmp #2
bne .1
jsr CS.RUN.MsgBox
bra CS.RUN
.1 cmp #42
bne .2
>PUSHW L.GUITEST1
>PUSHBI 0
>SYSCALL ExecL
>LDYA L.GUITEST1
jsr CS.RUN.Exec
bra CS.RUN
.2 cmp #44
bne CS.RUN
>PUSHW L.GUITEST2
>PUSHBI 0
>SYSCALL ExecL
>LDYA L.GUITEST2
jsr CS.RUN.Exec
bra CS.RUN
clc
rts
*--------------------------------------
CS.RUN.MsgBox >PUSHW L.ABOUT.T
>PUSHW L.ABOUT.M
>PUSHWI BM.ID.INFO
>PUSHBI BUT.ID.OK
>LIBCALL hLIBGUI,LIBGUI.MBOX.MsgBox
rts
*--------------------------------------
CS.RUN.Exec >PUSHYA
>PUSHBI 0
>SYSCALL ExecL
rts
*--------------------------------------
CS.DOEVENT lda (pEvent)
bpl .9
@ -103,6 +117,8 @@ CS.QUIT.RTS rts
CS.END
LIBGUI .AZ "libgui"
hLIBGUI .BS 1
ABOUT.T .AZ "About GUI"
ABOUT.M .AZ "MsgBox message."
GUITEST1 .AZ "${ROOT}root/asmtest/testgui"
GUITEST2 .AZ "${ROOT}root/ctest/testgui"
*--------------------------------------

View File

@ -380,21 +380,21 @@ CS.QUIT ldx #0
*--------------------------------------
CS.END
*--------------------------------------
MSG.RUNNING .AZ "NETWORKD:Already loaded, exiting."
MSG.DEV.KO .AZ "NETWORKD:No Device Found, exiting."
MSG.DEV.OK .AZ "NETWORKD:Bound To Device : %s\r\n"
MSG.LIB .AZ "NETWORKD:Loading %s..."
MSG.EXEC .AZ "NETWORKD:Running %s..."
MSG.RUNNING .CZ "NETWORKD:Already loaded, exiting."
MSG.DEV.KO .CZ "NETWORKD:No Device Found, exiting."
MSG.DEV.OK .CZ "NETWORKD:Bound To Device : %s\r\n"
MSG.LIB .CZ "NETWORKD:Loading %s..."
MSG.EXEC .CZ "NETWORKD:Running %s..."
*--------------------------------------
MSG.OK .AZ "[OK]"
MSG.ERR .AZ "[%h]\r\n"
MSG.OK .CZ "[OK]"
MSG.ERR .CZ "[%h]\r\n"
*--------------------------------------
ETCNETWORK .AZ "${BOOT}etc/network"
.DO DBG=1
MSG.DBG .AS "FRM ETH:%h%h%h%h%h%h.%h%h%h%h%h%h.%h%h\r\n"
.AS " IP :%h%h.%h%h.%h%h.%h%h.%h [%d] (%h%h) %d.%d.%d.%d>%d.%d.%d.%d\r\n"
.AZ " TCP:%D>%D %h%h%h%h %h%h%h%h %h %b [%h%h] (%h%h) %h%h\r\n"
MSG.DBG.REJECT .AZ "Rejected"
MSG.DBG .CS "FRM ETH:%h%h%h%h%h%h.%h%h%h%h%h%h.%h%h\r\n"
.CS " IP :%h%h.%h%h.%h%h.%h%h.%h [%d] (%h%h) %d.%d.%d.%d>%d.%d.%d.%d\r\n"
.CZ " TCP:%D>%D %h%h%h%h %h%h%h%h %h %b [%h%h] (%h%h) %h%h\r\n"
MSG.DBG.REJECT .CZ "Rejected"
.FIN
*--------------------------------------
DevID .BS 1

View File

@ -331,13 +331,13 @@ CS.END
DEVSIG.Offset .HS 05070B0C
DEVSIG.Value .HS 38180131
DEVSIG.Length .EQ DEVSIG.Value-DEVSIG.Offset
MSG.DETECT .AS "Apple SSC (Super Serial Card,//c Serial Port) Driver"
MSG.DETECT .CS "Apple SSC (Super Serial Card,//c Serial Port) Driver"
.DO SSCIRQ=1
.AS " (IRQ Enabled)"
.CS " (IRQ Enabled)"
.FIN
.AZ "."
MSG.DETECT.OK .AZ "SSC Installed As Device : %s\r\n"
MSG.DETECT.KO .AZ "No SSC Found."
.CZ "."
MSG.DETECT.OK .CZ "SSC Installed As Device : %s\r\n"
MSG.DETECT.KO .CZ "No SSC Found."
*--------------------------------------
P1 .DA >115200 Baud
.DA >50

View File

@ -8,7 +8,7 @@ KeyID .EQ *
iByte .BS 1
iBlk .BS 1
*--------------------------------------
BLISTX.New sta SLIST.Opt
BLISTX.New sta SLISTX.Opt
>LDYAI 128 32k Max before out of memory!!!
ldx #S.MEM.F.INIT0+8 index
@ -28,7 +28,7 @@ BLISTX.New sta SLIST.Opt
lda #0
sta (DBlkPtr)
lda SLIST.Opt
lda SLISTX.Opt
sta (IBlkPtr)
txa

View File

@ -48,29 +48,39 @@ K.SListSetData >PULLW ZPSListDataLen
* Y,A = Next KeyID
*\--------------------------------------
K.SListGetByID .EQ K.SYSCALL.JMPX2A
* >PULLW FORPNT
* >PULLW TXTPTR
* >PULLA
*/--------------------------------------
* # SListNewKey
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyPtr`
* `>PUSHW ScopeID`
* `>SYSCALL SListNewKey`
* ## RETURN VALUE
* Y,A = KeyID
* X = KeyLen
*\--------------------------------------
K.SListNewKey
K.SListNewKey .EQ K.SYSCALL.JMPX2A
* >PULLW FORPNT
* >PULLW TXTPTR
* >PULLA
*/--------------------------------------
* # SListLookup
* ## ASM
* `>PUSHB hSList`
* `>PUSHW KeyPtr`
* `>PUSHW ScopeID`
* `>SYSCALL SListLookup`
* ## RETURN VALUE
* Y,A = KeyID
* X = Key Length
*\--------------------------------------
K.SListLookup >PULLW TXTPTR
>PULLA
K.SListLookup .EQ K.SYSCALL.JMPX2A
* >PULLW FORPNT
* >PULLW TXTPTR
* >PULLA
*/--------------------------------------
* # SListFree
* ## ASM
@ -78,7 +88,7 @@ K.SListLookup >PULLW TXTPTR
* `>SYSCALL SListFree`
* ## RETURN VALUE
*\--------------------------------------
K.SListFree
K.SListFree .EQ K.SYSCALL.JMPX
*/--------------------------------------
* # SListNew
* ## ASM
@ -87,7 +97,7 @@ K.SListFree
* ## RETURN VALUE
* A=hSList
*\--------------------------------------
K.SListNew jmp K.SYSCALL.JMPX
K.SListNew .EQ K.SYSCALL.JMPX
*--------------------------------------
MAN
SAVE usr/src/sys/kernel.s.slist

View File

@ -4,55 +4,58 @@ NEW
ZPSListDataOfs .EQ ZPMEMMGR+8
ZPSListDataLen .EQ ZPMEMMGR+10
*--------------------------------------
SLIST.Opt .BS 1
SLIST.KeyLen .BS 1
SLIST.DataLen .BS 2
SLIST.nDataCnt .BS 2
SLIST.nBufCnt .BS 2
SLIST.bStr .BS 1
SLIST.b0 .BS 1
SLIST.KeyID .BS 2
SLISTX.Opt .BS 1
SLISTX.KeyLen .BS 1
SLISTX.DataLen .BS 2
SLISTX.nDataCnt .BS 2
SLISTX.nBufCnt .BS 2
SLISTX.bStr .BS 1
SLISTX.b0 .BS 1
SLISTX.KeyID .BS 2
*--------------------------------------
SLISTX.GetData jsr SLIST.Select
SLISTX.GetData jsr SLISTX.Select
jsr SLIST.SkipKey
jsr SLIST.GetDataLen
jsr SLISTX.SkipKey
lda SLIST.DataLen
jsr SLISTX.GetDataLen
lda SLISTX.DataLen
sec
sbc ZPSListDataOfs Offset
eor #$ff
sta SLIST.nDataCnt
sta SLISTX.nDataCnt
lda SLIST.DataLen+1
lda SLISTX.DataLen+1
sbc ZPSListDataOfs+1
eor #$ff
sta SLIST.nDataCnt+1 Data remaining
sta SLISTX.nDataCnt+1 Data remaining
bcc .99 Offset Beyond DataLen
lda ZPSListDataOfs Skip to Offset
ldx ZPSListDataOfs+1
jsr SLIST.SkipDataAX
jsr SLISTX.SkipDataAX
stz SLIST.b0
stz SLISTX.b0
lda FORPNT
ora FORPNT+1
bne .12 buffer provided
>LDYA SLIST.DataLen
>LDYA SLISTX.DataLen
iny
bne .11
inc +1 for ending 0
sec
ror SLIST.b0
ror SLISTX.b0
.11 ldx #SYS.GetMem
jsr K.SYSCALL2.MAIN !!! Get a buffer In MAIN Mem !!!
bcs .9
stx .88+1
>STYA FORPNT
@ -63,32 +66,33 @@ SLISTX.GetData jsr SLIST.Select
lda ZPSListDataLen
eor #$ff
sta SLIST.nBufCnt
sta SLISTX.nBufCnt
lda ZPSListDataLen+1
eor #$ff
sta SLIST.nBufCnt+1
sta SLISTX.nBufCnt+1
clc
.1 ror SLIST.bStr
.1 ror SLISTX.bStr
stz ZPSListDataLen
stz ZPSListDataLen+1
.2 inc SLIST.nDataCnt
.2 inc SLISTX.nDataCnt
bne .3
inc SLIST.nDataCnt+1
inc SLISTX.nDataCnt+1
beq .80
.3 bit SLIST.bStr
.3 bit SLISTX.bStr
bmi .4 String mode : until CR
inc SLIST.nBufCnt
inc SLISTX.nBufCnt
bne .4
inc SLIST.nBufCnt+1
inc SLISTX.nBufCnt+1
beq .80 not string mode : until end of buffer
.4 jsr BLISTX.GetNByte
bit SLIST.bStr
bit SLISTX.bStr
bpl .5
cmp #C.CR
@ -105,8 +109,8 @@ SLISTX.GetData jsr SLIST.Select
sec
.9 rts
.80 lda SLIST.bStr
ora SLIST.b0
.80 lda SLISTX.bStr
ora SLISTX.b0
bpl .82
.81 lda #0
@ -117,9 +121,9 @@ SLISTX.GetData jsr SLIST.Select
clc
rts
*--------------------------------------
SLISTX.AddData jsr SLIST.Select
SLISTX.AddData jsr SLISTX.Select
jsr SLIST.SkipKey
jsr SLISTX.SkipKey
jsr SLISTX.CheckLen
@ -142,7 +146,7 @@ SLISTX.AddData jsr SLIST.Select
plx
pla
jsr SLIST.SkipDataAX
jsr SLISTX.SkipDataAX
lda ZPSListDataLen
eor #$ff
sta ZPSListDataLen
@ -173,31 +177,32 @@ SLISTX.AddData jsr SLIST.Select
.8 lda #0
jmp BLISTX.AddByte Add an extra 0 to stop Search here
*--------------------------------------
SLISTX.SetData jsr SLIST.Select
SLISTX.SetData jsr SLISTX.Select
jsr SLIST.SkipKey
jsr SLISTX.SkipKey
jsr SLISTX.CheckLen
jsr SLIST.GetDataLen
jsr SLISTX.GetDataLen
lda SLIST.DataLen
lda SLISTX.DataLen
cmp ZPSListDataLen
bne .9
ldx SLIST.DataLen+1
ldx SLISTX.DataLen+1
cpx ZPSListDataLen+1
bne .9
eor #$ff
sta SLIST.nDataCnt
sta SLISTX.nDataCnt
txa
eor #$ff
sta SLIST.nDataCnt+1
sta SLISTX.nDataCnt+1
.1 inc SLIST.nDataCnt
.1 inc SLISTX.nDataCnt
bne .2
inc SLIST.nDataCnt+1
inc SLISTX.nDataCnt+1
beq .8
.2 jsr SHARED.FORPNTgn
@ -215,8 +220,8 @@ SLISTX.CheckLen lda ZPSListDataLen
ora ZPSListDataLen+1
bne .8
ldx #0
ldy #0
tax ldx #0
tay ldy #0
lda FORPNT+1
pha
@ -243,7 +248,7 @@ SLISTX.CheckLen lda ZPSListDataLen
.8 rts
*--------------------------------------
SLISTX.GetByID jsr SLIST.Select
SLISTX.GetByID jsr SLISTX.Select
jsr BLISTX.GetNByte
tax
@ -263,9 +268,15 @@ SLISTX.GetByID jsr SLIST.Select
txa lda #0
jsr SHARED.FORPNTpn ending \0
jsr BLISTX.GetNByte ScopeID lo
jsr SHARED.FORPNTpn
jsr SLIST.SkipData
jsr BLISTX.GetNByte ScopeID hi
jsr SHARED.FORPNTpn
jsr SLISTX.SkipData
>LDYA KeyID
clc
rts
@ -274,13 +285,13 @@ SLISTX.GetByID jsr SLIST.Select
sec
rts
*--------------------------------------
SLISTX.NewKey jsr SLIST.Search
SLISTX.NewKey jsr SLISTX.Lookup
bcc .99
>LDYA KeyID
>STYA SLIST.KeyID End of list
>STYA SLISTX.KeyID End of list
lda SLIST.KeyLen
lda SLISTX.KeyLen
jsr BLISTX.SetBlkByte override ending 0, already allocated
ldy #0
@ -290,9 +301,17 @@ SLISTX.NewKey jsr SLIST.Search
bcs .9
iny
cpy SLIST.KeyLen
cpy SLISTX.KeyLen
bne .1
lda FORPNT
jsr BLISTX.AddByte ScopeID lo
bcs .9
lda FORPNT+1 ScopeID hi
jsr BLISTX.AddByte
bcs .9
lda #0 Data Len lo = 0
jsr BLISTX.AddByte
bcs .9
@ -303,30 +322,24 @@ SLISTX.NewKey jsr SLIST.Search
lda #0 Ending Len = 0
jsr BLISTX.AddByte
bcs .9
bcc SLISTX.8
>LDYA SLIST.KeyID
ldx SLIST.KeyLen
* clc
rts
.99 lda #E.DUPKEY
sec
.9 rts
*--------------------------------------
SLISTX.Lookup jsr SLIST.Search
bcs .9
ldx SLIST.KeyLen
.9 rts
SLISTX.8 >LDYA SLISTX.KeyID
ldx SLISTX.KeyLen
clc
rts
*--------------------------------------
* PRIVATE
*--------------------------------------
SLIST.Search jsr K.GetMemPtr
SLISTX.Lookup jsr K.GetMemPtr
>STYA IBlkPtr
lda (IBlkPtr)
sta SLIST.Opt
sta SLISTX.Opt
stz iByte
@ -343,19 +356,19 @@ SLIST.Search jsr K.GetMemPtr
jsr SHARED.TXTPTRgY
beq .2
jsr SLIST.IsIDValid
jsr SLISTX.IsIDValid
bcc .1
.2 sty SLIST.KeyLen
.2 sty SLISTX.KeyLen
.3 >LDYA KeyID
>STYA SLIST.KeyID
>STYA SLISTX.KeyID
ldy iByte
lda (DBlkPtr),y
beq .9
cmp SLIST.KeyLen
cmp SLISTX.KeyLen
bne .6
jsr BLISTX.GetNByte Skip Len
@ -373,29 +386,36 @@ SLIST.Search jsr K.GetMemPtr
bne .6
iny
cpy SLIST.KeyLen
cpy SLISTX.KeyLen
bne .4
>LDYA SLIST.KeyID
clc
rts
jsr SLISTX.GetDataLen Get Scope
cmp FORPNT+1
bne .6
.6 >LDYA SLIST.KeyID
lda FORPNT
cmp SLISTX.DataLen
beq SLISTX.8
jsr SLIST.Select.I move back...
jsr SLIST.Next
.6 >LDYA SLISTX.KeyID
jsr SLISTX.Select.I move back...
jsr SLISTX.SkipKey
jsr SLISTX.SkipData
bra .3
.9 lda #E.NOKEY
sec
rts
*--------------------------------------
SLIST.Select jsr K.GetMemPtr
* PRIVATE
*--------------------------------------
SLISTX.Select jsr K.GetMemPtr
>STYA IBlkPtr
>LDYA TXTPTR
SLIST.Select.I >STYA KeyID
SLISTX.Select.I >STYA KeyID
ldy iBlk
@ -405,13 +425,24 @@ SLIST.Select.I >STYA KeyID
rts
*--------------------------------------
SLIST.Next jsr SLIST.SkipKey
SLISTX.SkipKey ldy iByte
lda (DBlkPtr),y Get KeyLen
sec len
inc
inc Skip ScopeID
adc iByte
sta iByte
bcc .8
SLIST.SkipData jsr SLIST.GetDataLen
jmp BLISTX.2NBlk
lda SLIST.DataLen
ldx SLIST.DataLen+1
SLIST.SkipDataAX
.8 rts
*--------------------------------------
SLISTX.SkipData jsr SLISTX.GetDataLen
lda SLISTX.DataLen
ldx SLISTX.DataLen+1
SLISTX.SkipDataAX
clc
adc iByte
sta iByte
@ -425,31 +456,21 @@ SLIST.SkipDataAX
rts
*--------------------------------------
SLIST.SkipKey ldy iByte
lda (DBlkPtr),y Get KeyLen
sec
adc iByte
sta iByte
bcc .8
jmp BLISTX.2NBlk
.8 rts
*--------------------------------------
SLIST.GetDataLen
SLISTX.GetDataLen
jsr BLISTX.GetNByte Get DataLenLo
sta SLIST.DataLen
sta SLISTX.DataLen
jsr BLISTX.GetNByte Get DataLenHI
sta SLIST.DataLen+1
sta SLISTX.DataLen+1
rts
*--------------------------------------
SLIST.IsIDValid bit SLIST.Opt
SLISTX.IsIDValid
bit SLISTX.Opt
bpl .2
cmp #'.'
beq .8
.1 bit SLIST.Opt
.1 bit SLISTX.Opt
.2 bvc .3
cmp #'_'