Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-10-06 08:27:35 +02:00
parent 3a3d82f7e6
commit 2fc1034a9d
24 changed files with 490 additions and 295 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,16 +1,15 @@
NEW NEW
PREFIX AUTO 3,1
AUTO 4,1
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
.TF ROOT/FNT2FON .TF bin/fnt2fon
*-------------------------------------- *--------------------------------------
.INB INC/MACROS.I .INB inc/macros.i
.INB INC/A2OSX.I .INB inc/a2osx.i
.INB INC/GUI.I .INB inc/gfx.i
.INB INC/LIBGUI.I .INB inc/libgui.i
.INB ROOT/X.FNT.I .INB inc/fnt.i
*-------------------------------------- *--------------------------------------
ZPPTR1 .EQ ZPBIN ZPPTR1 .EQ ZPBIN
ZPInputBufPtr .EQ ZPBIN+2 ZPInputBufPtr .EQ ZPBIN+2
@ -684,7 +683,7 @@ CS.QUIT >LDA.G hOutPutBuf
*-------------------------------------- *--------------------------------------
CS.END CS.END
*-------------------------------------- *--------------------------------------
.INB ROOT/X.TWIST.G .INB usr/src/shared/x.twist.g
*-------------------------------------- *--------------------------------------
OptionList >PSTR "NnVv" OptionList >PSTR "NnVv"
OptionVars .DA #bNoShrink,#bNoShrink,#bVerbose,#bVerbose OptionVars .DA #bNoShrink,#bNoShrink,#bVerbose,#bVerbose
@ -718,10 +717,8 @@ CharOutByteW .BS 1
hOutPutBuf .BS 1 hOutPutBuf .BS 1
OutPutPtr .BS 1 OutPutPtr .BS 1
FileOffset .BS 4 FileOffset .BS 4
DS.END .ED
DS.END
.ED
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE /A2OSX.BUILD/ROOT/FNT2FON.S SAVE usr/src/bin/fnt2fon.s
ASM ASM

View File

@ -2,7 +2,7 @@ NEW
AUTO 3,1 AUTO 3,1
*-------------------------------------- *--------------------------------------
* BitBlt * BitBlt
* S.CB.X1 : Destination X (screen) * S.CB.X1 : Destination X (screen)
* S.CB.Y1 : Destination Y (screen) * S.CB.Y1 : Destination Y (screen)
* S.CB.DstX : X1 in bitmap/mask * S.CB.DstX : X1 in bitmap/mask
* S.CB.DstY : Y1 in bitmap/mask * S.CB.DstY : Y1 in bitmap/mask

View File

@ -164,8 +164,8 @@ OSD.DRAWTEXT sec
* S.CB.S.CB.FONT : hFont * S.CB.S.CB.FONT : hFont
* S.CB.SrcPtr : Ptr to Text * S.CB.SrcPtr : Ptr to Text
* Out: * Out:
* A,X = Width * S.CB.SrcW = Width
* Y = Height * S.CB.SrcH = Height
*-------------------------------------- *--------------------------------------
OSD.GETTEXTSIZE clc OSD.GETTEXTSIZE clc
php php

View File

@ -4,7 +4,7 @@ NEW
IO.D2.SeekTimeR .EQ 160 LIBBLKDEV Recalibration IO.D2.SeekTimeR .EQ 160 LIBBLKDEV Recalibration
IO.D2.SeekTimeF .EQ 140 LIBBLKDEV Track Formatter IO.D2.SeekTimeF .EQ 140 LIBBLKDEV Track Formatter
IO.D2.SeekTimeB .EQ 140 LIBBLKDEV Boot Block IO.D2.SeekTimeB .EQ 140 LIBBLKDEV Boot Block
IO.D2.SeekTimeP .EQ 70 ProDOS.FX initial IO.D2.SeekTimeP .EQ 75 ProDOS.FX initial
IO.D2.SeekTimeI .EQ 20 ProDOS.FX increment -> until > 128 IO.D2.SeekTimeI .EQ 20 ProDOS.FX increment -> until > 128
*-------------------------------------- *--------------------------------------
IO.D2.Ph0Off .EQ $C080 IO.D2.Ph0Off .EQ $C080

View File

@ -92,9 +92,8 @@ S.OBJ.X2 .EQ 12
S.OBJ.Y2 .EQ 14 S.OBJ.Y2 .EQ 14
S.OBJ.W .EQ 16 S.OBJ.W .EQ 16
S.OBJ.H .EQ 18 S.OBJ.H .EQ 18
S.OBJ.Childs .EQ 20
* *
S.OBJ .EQ 22 S.OBJ .EQ 20
*-------------------------------------- *--------------------------------------
S.WND.F.RESIZE .EQ %00000001 S.WND.F.RESIZE .EQ %00000001
S.WND.F.MOVE .EQ %00000010 S.WND.F.MOVE .EQ %00000010

View File

@ -428,6 +428,9 @@ rdhead sec anticipate error.
bmi BB.Trk2Qtrk.RTS branch if can't fine/read sector. bmi BB.Trk2Qtrk.RTS branch if can't fine/read sector.
clc indicate reading header. clc indicate reading header.
ldy #0 Retry cnt waiting D5
rddata php carry set if reading sector. rddata php carry set if reading sector.
rd0 dey every time y=0 decrement find count. rd0 dey every time y=0 decrement find count.

View File

@ -19,12 +19,6 @@ CUR.HotPoints .DA #0,#0 CUR.T.ARROW
.DA #8,#7 CUR.Wait5 .DA #8,#7 CUR.Wait5
.DA #8,#7 CUR.Wait6 .DA #8,#7 CUR.Wait6
*-------------------------------------- *--------------------------------------
CUR.CB .DA #S.CB.CMD.BITBLT
.BS 1
.DA #S.CB.M.MONO
.DA #0
.BS S.CB-2
*--------------------------------------
CUR.SaveBuf .BS 64 16*4 CUR.SaveBuf .BS 64 16*4
*-------------------------------------- *--------------------------------------
CUR.Arrow .DA #S.BM.F.BBP1 CUR.Arrow .DA #S.BM.F.BBP1

View File

@ -1,10 +0,0 @@
NEW
AUTO 3,1
*--------------------------------------
WND.Stack.Top .BS 1
WND.Stack .BS WND.MAX
*--------------------------------------
MAN
SAVE usr/src/lib/libgui.g.wnd
LOAD usr/src/lib/libgui.s
asm

View File

@ -227,58 +227,84 @@ CLIP.Line.RIGHT .EQ 2
CLIP.Line.BOTTOM .EQ 4 CLIP.Line.BOTTOM .EQ 4
CLIP.Line.TOP .EQ 8 CLIP.Line.TOP .EQ 8
*-------------------------------------- *--------------------------------------
CLIP.Line jsr CLIP.Line.EncodeP1 CLIP.Line
* >DEBUG
jsr CLIP.Line.EncodeP1
jsr CLIP.Line.EncodeP2 jsr CLIP.Line.EncodeP2
.1 lda CLIP.Line.P1 .1 lda CLIP.Line.P1
ora CLIP.Line.P2 ora CLIP.Line.P2
beq .88 beq .88
lda CLIP.Line.P1 lda CLIP.Line.P1
and CLIP.Line.P2 and CLIP.Line.P2
bne .99 bne .99
lda CLIP.Line.P1 lda CLIP.Line.P1
beq .5 beq .5
bit #CLIP.Line.TOP bit #CLIP.Line.TOP
beq .2 beq .2
* Y1 is above S.CB.Y1.... * Y1 is above S.CB.Y1....
* DY=Y2-Y1; * DY=Y2-Y1;
jsr CLIP.Line.EncodeP1 jsr CLIP.Line.EncodeP1
bra .1 bra .1
.2 bit #CLIP.Line.BOTTOM .2 bit #CLIP.Line.BOTTOM
beq .3 beq .3
* Y1 is below S.CB.Y2.... * Y1 is below S.CB.Y2....
jsr CLIP.Line.EncodeP1 jsr CLIP.Line.EncodeP1
bra .1 bra .1
.3 bit #CLIP.Line.RIGHT .3 bit #CLIP.Line.RIGHT
beq .4 beq .4
* X1 is after S.CB.X2.... * X1 is after S.CB.X2....
jsr CLIP.Line.EncodeP1 jsr CLIP.Line.EncodeP1
bra .1 bra .1
* X1 is before S.CB.X1.... * X1 is before S.CB.X1....
.4
jsr CLIP.Line.EncodeP1 .4 jsr CLIP.Line.EncodeP1
bra .1 bra .1
* P2 * P2
.5 lda CLIP.Line.P2 .5 lda CLIP.Line.P2
bit #CLIP.Line.TOP bit #CLIP.Line.TOP
beq .6 beq .6
* Y2 is above S.CB.Y1.... * Y2 is above S.CB.Y1....
jsr CLIP.Line.EncodeP2 jsr CLIP.Line.EncodeP2
bra .1 bra .1
.6 bit #CLIP.Line.BOTTOM .6 bit #CLIP.Line.BOTTOM
beq .7 beq .7
* Y2 is below S.CB.Y2.... * Y2 is below S.CB.Y2....
jsr CLIP.Line.EncodeP2 jsr CLIP.Line.EncodeP2
bra .1 bra .1
.7 bit #CLIP.Line.RIGHT .7 bit #CLIP.Line.RIGHT
beq .8 beq .8
* X2 is after S.CB.X2.... * X2 is after S.CB.X2....
jsr CLIP.Line.EncodeP2 jsr CLIP.Line.EncodeP2
bra .1 bra .1
* X2 is before S.CB.X1.... * X2 is before S.CB.X1....
.8
jsr CLIP.Line.EncodeP2 .8 jsr CLIP.Line.EncodeP2
bra .1 bra .1
.88 clc .88 clc
rts rts
@ -315,30 +341,38 @@ CLIP.Line.EncodeX.AX
pha pha
>SCMPAX OBJ.Cache+S.OBJ.X1 >SCMPAX OBJ.Cache+S.OBJ.X1
bmi .1 bmi .1
tya tya
ora #CLIP.Line.LEFT ora #CLIP.Line.LEFT
plx plx
rts rts
.1 pla .1 pla
>SCMPAX OBJ.Cache+S.OBJ.X1 >SCMPAX OBJ.Cache+S.OBJ.X2
bpl .8 bpl .8
tya tya
ora #CLIP.Line.RIGHT ora #CLIP.Line.RIGHT
.8 rts .8 rts
*-------------------------------------- *--------------------------------------
CLIP.Line.EncodeY.AX CLIP.Line.EncodeY.AX
pha pha
>SCMPAX OBJ.Cache+S.OBJ.Y1 >SCMPAX OBJ.Cache+S.OBJ.Y1
bmi .1 bmi .1
tya tya
ora #CLIP.Line.TOP ora #CLIP.Line.TOP
plx plx
rts rts
.1 pla .1 pla
>SCMPAX OBJ.Cache+S.OBJ.Y1 >SCMPAX OBJ.Cache+S.OBJ.Y2
bpl .8 bpl .8
tya tya
ora #CLIP.Line.BOTTOM ora #CLIP.Line.BOTTOM
.8 rts .8 rts
*-------------------------------------- *--------------------------------------
CB.Cache.SetX2Y2 CB.Cache.SetX2Y2

View File

@ -21,24 +21,24 @@ SetCursor sta CUR.T
.1 ldx CUR.T .1 ldx CUR.T
lda L.Cursors,x lda L.Cursors,x
sta CUR.CB+S.CB.SrcPtr sta CB.PTR+S.CB.SrcPtr
sta ZPPtr1 sta ZPPtr1
lda L.Cursors+1,x lda L.Cursors+1,x
sta CUR.CB+S.CB.SrcPtr+1 sta CB.PTR+S.CB.SrcPtr+1
sta ZPPtr1+1 sta ZPPtr1+1
ldy #S.BM.W ldy #S.BM.W
lda (ZPPtr1),y lda (ZPPtr1),y
sta CUR.CB+S.CB.SrcW sta CB.PTR+S.CB.SrcW
clc clc
adc CUR.CB+S.CB.X1 adc CB.PTR+S.CB.X1
pha pha
iny iny
lda (ZPPtr1),y lda (ZPPtr1),y
sta CUR.CB+S.CB.SrcW+1 sta CB.PTR+S.CB.SrcW+1
adc CUR.CB+S.CB.X1+1 adc CB.PTR+S.CB.X1+1
tax tax
pla pla
bne .2 bne .2
@ -46,21 +46,21 @@ SetCursor sta CUR.T
dex dex
.2 dec .2 dec
sta CUR.CB+S.CB.X2 sta CB.PTR+S.CB.X2
stx CUR.CB+S.CB.X2+1 stx CB.PTR+S.CB.X2+1
iny S.BM.H iny S.BM.H
lda (ZPPtr1),y lda (ZPPtr1),y
sta CUR.CB+S.CB.SrcH sta CB.PTR+S.CB.SrcH
clc clc
adc CUR.CB+S.CB.Y1 adc CB.PTR+S.CB.Y1
pha pha
iny iny
lda (ZPPtr1),y lda (ZPPtr1),y
sta CUR.CB+S.CB.SrcH+1 sta CB.PTR+S.CB.SrcH+1
adc CUR.CB+S.CB.Y1+1 adc CB.PTR+S.CB.Y1+1
tax tax
pla pla
bne .3 bne .3
@ -68,8 +68,8 @@ SetCursor sta CUR.T
dex dex
.3 dec .3 dec
sta CUR.CB+S.CB.Y2 sta CB.PTR+S.CB.Y2
stx CUR.CB+S.CB.Y2+1 stx CB.PTR+S.CB.Y2+1
lda CUR.bVisible lda CUR.bVisible
bmi ShowCursor.I bmi ShowCursor.I
@ -116,33 +116,34 @@ ShowCursor.I ldx CUR.T
lda CUR.Pos+S.POINT.X lda CUR.Pos+S.POINT.X
sec sec
sbc CUR.HotPoints,x sbc CUR.HotPoints,x
sta CUR.CB+S.CB.X1 sta CB.PTR+S.CB.X1
lda CUR.Pos+S.POINT.X+1 lda CUR.Pos+S.POINT.X+1
sbc #0 sbc #0
sta CUR.CB+S.CB.X1+1 sta CB.PTR+S.CB.X1+1
lda CUR.Pos+S.POINT.Y lda CUR.Pos+S.POINT.Y
sec sec
sbc CUR.HotPoints+1,x sbc CUR.HotPoints+1,x
sta CUR.CB+S.CB.Y1 sta CB.PTR+S.CB.Y1
lda CUR.Pos+S.POINT.Y+1 lda CUR.Pos+S.POINT.Y+1
sbc #0 sbc #0
sta CUR.CB+S.CB.Y1+1 sta CB.PTR+S.CB.Y1+1
lda #S.CB.OP.ORA+S.CB.OP.MASK+S.CB.OP.SAVE lda #S.CB.OP.ORA+S.CB.OP.MASK+S.CB.OP.SAVE
DrawCursor.I sta CUR.CB+S.CB.OP DrawCursor.I sta CB.PTR+S.CB.OP
>LDYA L.WND.Screen >LDYA L.WND.Screen
jsr OBJ.GetInCache jsr OBJ.GetInCache
>LDYA L.CUR.CB >LDYA L.CB.PTR
jsr CLIP.YA jsr CLIP.YA
bcs .9 bcs .9
jmp GFXWrite.CB >LDYA L.CB.PTR
jmp GFXWrite.YA
.9 rts .9 rts
*-------------------------------------- *--------------------------------------

View File

@ -1,17 +1,369 @@
NEW NEW
AUTO 3,1 AUTO 3,1
*-------------------------------------- *--------------------------------------
* drawline(short int hWND, short int OP, short int COLOR, int X1, int Y1, int X2, int X2)
*--------------------------------------
DrawLine >PULLW CB.Cache+S.CB.Y2
>PULLW CB.Cache+S.CB.X2
>PULLW CB.Cache+S.CB.Y1
>PULLW CB.Cache+S.CB.X1
>PULLB CB.Cache+S.CB.COLOR
>PULLB CB.Cache+S.CB.OP
>PULLA hWND
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
jsr DRAW.ToGlobal
jsr DRAW.GetInnerW
lda CB.Cache+S.CB.X2
sec
sbc CB.Cache+S.CB.X1
sta DX
lda CB.Cache+S.CB.X2+1
sbc CB.Cache+S.CB.X1+1
sta DX+1 DX = X2 - X1
bmi .1 DX < 0....
ora DX
bne .2 DX > 0...
lda #S.CB.CMD.VLINE DX=0 : VLINE Y1,Y2 At X1
bra .20
*--------------------------------------
.1 >SWAP16 CB.Cache+S.CB.X1,CB.Cache+S.CB.X2
>SWAP16 CB.Cache+S.CB.Y1,CB.Cache+S.CB.Y2
>NOT16 DX swap X1/X2, Y1/Y2, set DX=-DX (DX positive)
.2 lda #1
sta IY
lda CB.Cache+S.CB.Y2
sec
sbc CB.Cache+S.CB.Y1
sta DY
lda CB.Cache+S.CB.Y2+1
sbc CB.Cache+S.CB.Y1+1
sta DY+1 DY = Y2 - Y1
bmi .3 DY < 0 ...
ora DY
bne .4
lda #S.CB.CMD.HLINE DY=0 : HLINE X1,X2 At Y1
.20 sta CB.Cache+S.CB.CMD
jsr CLIP.CB.Cache
bcs .8
jmp GFXWrite.CB
.8 rts
*--------------------------------------
.3 >NOT16 DY set DY=-DY
lda #$ff
sta IY set IY=-1
.4 jsr CLIP.Line
bcs .8
lda #S.CB.CMD.SETPIXEL
sta CB.Cache+S.CB.CMD
jsr GFXWrite.CB
lda DX
sec
sbc DY
tax
lda DX+1
sbc DY+1
bmi DrawLine.IncY DY is greater than DX, we will increase on Y axis
txa
beq DrawLine.IncXY DX=DY, go inc X & Y
jmp DrawLine.IncX DY is lower than DX, we will increase on X axis
*--------------------------------------
DrawLine.IncXY lda DX DX=DY
eor #$ff
sta Counter
lda DX+1
eor #$ff
sta Counter+1
.1 inc Counter
bne .2
inc Counter+1
beq .8
.2 inc CB.Cache+S.CB.X1
bne .3
inc CB.Cache+S.CB.X1+1
.3 lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
sta CB.Cache+S.CB.Y1
jsr GFXWrite.CB
bra .1
.8 rts
*--------------------------------------
DrawLine.IncY lda DY
eor #$ff
sta Counter
lda DY+1
eor #$ff
sta Counter+1
lda DX IE=2*DX
asl
sta IE
pha
lda DX+1
rol
sta IE+1
tax
pla D=IE-DY
sec
sbc DY
sta D
txa
sbc DY+1
sta D+1
lda DX INE=2*(DX-DY)
sec
sbc DY
pha
lda DX+1
sbc DY+1
tax
pla
asl
sta INE
txa
rol
sta INE+1
.1 inc Counter
bne .2
inc Counter+1
beq .8
.2 lda D+1 IF D < 0 ...
bmi .4
lda D D > 0 : D=D+INE
clc
adc INE
sta D
lda D+1
adc INE+1
sta D+1
inc CB.Cache+S.CB.X1 X1=X1+1
bne .5
inc CB.Cache+S.CB.X1+1
bra .5
.4 lda D D > 0 : D=D+IE
clc
adc IE
sta D
lda D+1
adc IE+1
sta D+1
.5 lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
sta CB.Cache+S.CB.Y1
jsr GFXWrite.CB
bra .1
.8 rts
*--------------------------------------
DrawLine.IncX lda DX
eor #$ff
sta Counter
lda DX+1
eor #$ff
sta Counter+1
lda DY IE=2*DY
asl
sta IE
pha
* lda DY+1
lda #0
rol
sta IE+1
tax
pla D=IE-DX
sec
sbc DX
sta D
txa
sbc DX+1
sta D+1
lda DY INE=2*(DY-DX)
sec
sbc DX
pha
* lda DY+1
lda #0
sbc DX+1
tax
pla
asl
sta INE
txa
rol
sta INE+1
.1 inc Counter
bne .2
inc Counter+1
beq .8
.2 lda D+1 ID D < 0 ....
bmi .4
lda D D > 0 : D=D+INE
clc
adc INE
sta D
lda D+1
adc INE+1
sta D+1
lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
sta CB.Cache+S.CB.Y1
bra .5
.4 lda D D < 0 : D=D+IE
clc
adc IE
sta D
lda D+1
adc IE+1
sta D+1
.5 inc CB.Cache+S.CB.X1 X1=X1+1
bne .6
inc CB.Cache+S.CB.X1+1
.6 jsr GFXWrite.CB
bra .1
.8 rts
*--------------------------------------
* drawtext (short int OP, short int hFONT, int X1, int Y1)
*--------------------------------------
DrawText clc
rts
*--------------------------------------
*
*--------------------------------------
DRAW.ToGlobal >LDYA ZPWNDPtr
>STYA ZPPtr1
.1 ldy #S.OBJ.X1
ldx #S.CB.X1
jsr DRAW.AddP1YtoCBX
ldy #S.WND.InnerY1
ldx #S.CB.Y1
jsr DRAW.AddP1YtoCBX
ldy #S.OBJ.X1
ldx #S.CB.X2
jsr DRAW.AddP1YtoCBX
ldy #S.WND.InnerY1
ldx #S.CB.Y2
jsr DRAW.AddP1YtoCBX
ldy #S.OBJ.hPARENT+1
lda (ZPPtr1),y
beq .8 00xx = hDev
tax
dey
lda (ZPPtr1),y
sta ZPPtr1
stx ZPPtr1+1
bra .1
.8 clc
rts
*--------------------------------------
DRAW.AddP1YtoCBX
lda (ZPPtr1),y
clc
adc CB.Cache,x
sta CB.Cache,x
iny
lda (ZPPtr1),y
adc CB.Cache+1,x
sta CB.Cache+1,x
rts
*--------------------------------------
DRAW.GetInnerW ldy #S.OBJ.X1
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.X1
iny
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.X1+1
ldy #S.WND.InnerY1
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.Y1
iny
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.Y1+1
ldy #S.WND.InnerW
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.W
iny
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.W+1
iny #S.WND.InnerH
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.H
iny
lda (ZPWNDPtr),y
sta OBJ.Cache+S.OBJ.H+1
>LDYA L.OBJ.Cache
jmp OBJ.SetX2Y2
*--------------------------------------
DrawCBBufToYA ldx L.CB.Buf DrawCBBufToYA ldx L.CB.Buf
stx ZPCBPtr stx ZPCBPtr
ldx L.CB.Buf+1 ldx L.CB.Buf+1
stx ZPCBPtr+1 stx ZPCBPtr+1
DrawCBPtrToYA jsr OBJ.GetInCache DrawCBPtrToYA bit CUR.bVisible
bpl .10
bit CUR.bVisible
bpl .1
pha
phy
jsr HideCursor.I jsr HideCursor.I
ply
pla
.10 jsr OBJ.GetInCache
.1 lda (ZPCBPtr) .1 lda (ZPCBPtr)
beq .8 beq .8
@ -54,6 +406,7 @@ DrawCBPtrToYA jsr OBJ.GetInCache
bra .1 bra .1
.8 clc .8 clc
.9 bit CUR.bVisible .9 bit CUR.bVisible
bpl .99 bpl .99
@ -65,260 +418,6 @@ DrawCBPtrToYA jsr OBJ.GetInCache
.99 rts .99 rts
*-------------------------------------- *--------------------------------------
* In: Control Block in CB.Cache
* CMD
* OP
* MODE
* COLOR
* X1
* Y1
* X2
* Y2
*--------------------------------------
DrawLine >PULLW CB.Cache+S.CB.Y2
>PULLW CB.Cache+S.CB.X2
>PULLW CB.Cache+S.CB.Y1
>PULLW CB.Cache+S.CB.X1
>PULLB CB.Cache+S.CB.COLOR
>PULLB CB.Cache+S.CB.OP
>PULLA hWND
>SYSCALL2 GetMemPtr
>STYA ZPWNDPtr
lda CB.Cache+S.CB.X2
sec
sbc CB.Cache+S.CB.X1
sta DX
lda CB.Cache+S.CB.X2+1
sbc CB.Cache+S.CB.X1+1
sta DX+1 DX = X2 - X1
bmi .1 DX < 0....
ora DX
bne .2 DX > 0...
lda #S.CB.CMD.VLINE
sta CB.Cache+S.CB.CMD
jmp GFXWrite.CB DX=0 : VLIN Y1,Y2 At X1
.1 >SWAP16 CB.Cache+S.CB.X1,CB.Cache+S.CB.X2
* >SWAP16 CB.Cache+S.CB.Y1,CB.Cache+S.CB.Y2
lda CB.Cache+S.CB.Y1
ldx CB.Cache+S.CB.Y2
stx CB.Cache+S.CB.Y1
sta CB.Cache+S.CB.Y2
>NOT16 DX swap X1/X2, Y1/Y2, set DX=-DX (DX positive)
.2 lda #1
sta IY
lda CB.Cache+S.CB.Y2
sec
sbc CB.Cache+S.CB.Y1
sta DY
* lda CB.Cache+S.CB.Y2+1
lda #0
* sbc CB.Cache+S.CB.Y1+1
sbc #0
sta DY+1 DY = Y2 - Y1
bmi .3 DY < 0 ...
ora DY
bne .4
lda #S.CB.CMD.HLINE
sta CB.Cache+S.CB.CMD
jmp GFXWrite.CB DY=0 : HLIN X1,X2 At Y1
.3 >NOT16 DY set DY=-DY
lda #$ff
sta IY set IY=-1
.4 lda #S.CB.CMD.SETPIXEL
sta CB.Cache+S.CB.CMD
jsr GFXWrite.CB
lda DX
sec
sbc DY
tax
lda DX+1
* sbc DY+1
sbc #0
bmi DrawLine.IncY DY is greater than DX, we will increase on Y axis
txa
beq DrawLine.IncXY DX=DY, go inc X & Y
jmp DrawLine.IncX DY is lower than DX, we will increase on X axis
DrawLine.IncXY lda DX DX=DY
eor #$ff
sta Counter
lda DX+1
eor #$ff
sta Counter+1
.1 inc Counter
bne .2
inc Counter+1
beq .8
.2 inc CB.Cache+S.CB.X1
bne .3
inc CB.Cache+S.CB.X1+1
.3 lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
sta CB.Cache+S.CB.Y1
jsr GFXWrite.CB
bra .1
.8 rts
DrawLine.IncY lda DY
eor #$ff
sta Counter
lda DY+1
eor #$ff
sta Counter+1
lda DX IE=2*DX
asl
sta IE
pha
lda DX+1
rol
sta IE+1
tax
pla D=IE-DY
sec
sbc DY
sta D
txa
sbc DY+1
sta D+1
lda DX INE=2*(DX-DY)
sec
sbc DY
pha
lda DX+1
sbc DY+1
tax
pla
asl
sta INE
txa
rol
sta INE+1
.1 inc Counter
bne .2
inc Counter+1
beq .8
.2 lda D+1 IF D < 0 ...
bmi .4
lda D D > 0 : D=D+INE
clc
adc INE
sta D
lda D+1
adc INE+1
sta D+1
inc CB.Cache+S.CB.X1 X1=X1+1
bne .5
inc CB.Cache+S.CB.X1+1
bra .5
.4 lda D D > 0 : D=D+IE
clc
adc IE
sta D
lda D+1
adc IE+1
sta D+1
.5 lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
sta CB.Cache+S.CB.Y1
jsr GFXWrite.CB
bra .1
.8 rts
DrawLine.IncX lda DX
eor #$ff
sta Counter
lda DX+1
eor #$ff
sta Counter+1
lda DY IE=2*DY
asl
sta IE
pha
* lda DY+1
lda #0
rol
sta IE+1
tax
pla D=IE-DX
sec
sbc DX
sta D
txa
sbc DX+1
sta D+1
lda DY INE=2*(DY-DX)
sec
sbc DX
pha
* lda DY+1
lda #0
sbc DX+1
tax
pla
asl
sta INE
txa
rol
sta INE+1
.1 inc Counter
bne .2
inc Counter+1
beq .8
.2 lda D+1 ID D < 0 ....
bmi .4
lda D D > 0 : D=D+INE
clc
adc INE
sta D
lda D+1
adc INE+1
sta D+1
lda CB.Cache+S.CB.Y1 Y1=Y1+IY
clc
adc IY
sta CB.Cache+S.CB.Y1
bra .5
.4 lda D D < 0 : D=D+IE
clc
adc IE
sta D
lda D+1
adc IE+1
sta D+1
.5 inc CB.Cache+S.CB.X1 X1=X1+1
bne .6
inc CB.Cache+S.CB.X1+1
.6 jsr GFXWrite.CB
bra .1
.8 rts
*--------------------------------------
MAN MAN
SAVE usr/src/lib/libgui.s.draw SAVE usr/src/lib/libgui.s.draw
LOAD usr/src/lib/libgui.s LOAD usr/src/lib/libgui.s

View File

@ -43,7 +43,7 @@ MOU.Setup lda DCB.GFX+S.DCB.GFX.W+1
bcs .9 bcs .9
>LDYA L.CUR.SaveBuf >LDYA L.CUR.SaveBuf
>STYA CUR.CB+S.CB.DstPtr >STYA CB.PTR+S.CB.DstPtr
* clc * clc
.9 rts .9 rts
@ -59,26 +59,91 @@ MOU.Quit lda hDevMouse
.8 clc .8 clc
rts rts
*-------------------------------------- *--------------------------------------
MOU.ReadMouse >PULLYA MOU.ReadMouse >PULLW ZPPtr1
ldx A2osX.ASCREEN GUI screen active ? lda A2osX.ASCREEN GUI screen active ?
cpx DCB.GFX+S.DCB.GFX.DEVID cmp DCB.GFX+S.DCB.GFX.DEVID
bne .9 no, exit.... bne .9 no, exit....
ldx hDevMouse lda hDevMouse
beq .9 beq .9
pha
txa
>PUSHA >PUSHA
>PUSHBI IOCTL.READ >PUSHBI IOCTL.READ
pla >PUSHW ZPPtr1
>PUSHYA
>SYSCALL2 IOCTL >SYSCALL2 IOCTL
bcs .99
ldy #S.MOUSE.S
lda (ZPPtr1),y
bit #S.MOUSE.S.MOVE
beq .8
lda WND.SysBar+S.OBJ.Y1
ldy #S.MOUSE.Y1
cmp (ZPPtr1),y
lda WND.SysBar+S.OBJ.Y1+1
iny
sbc (ZPPtr1),y
bcc .8
jmp SYSBAR.Enter
.8 clc
rts rts
.9 sec .9 sec
.99 rts
*--------------------------------------
SYSBAR.Show jsr GetCBBuf
bcs .9
lda #S.CB.CMD.FILLRECT
jsr PutA2CBBuf
lda #S.CB.OP.SET
jsr PutA2CBBuf
lda #S.CB.M.MONO
jsr PutA2CBBuf
lda PREFS.SYSBARCOLOR
jsr PutA2CBBuf
lda #0 S.OBJ.X1
jsr PutA2CBBuf
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y1+1
jsr PutA2CBBuf
lda WND.SysBar.A2osX.X2
jsr PutA2CBBuf
lda WND.SysBar.A2osX.X2+1
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y2
jsr PutA2CBBuf
lda WND.SysBar+S.OBJ.Y2+1
jsr PutA2CBBuf
lda #0
jsr PutA2CBBuf
>LDYA L.WND.SysBar
jsr DrawCBPtrToYA
lda hCBBuf
>SYSCALL FreeMem
* clc
.9 rts
*--------------------------------------
SYSBAR.Enter clc
rts rts
*-------------------------------------- *--------------------------------------
MAN MAN

View File

@ -25,41 +25,39 @@ WND.Setup >LDYA DCB.GFX+S.DCB.GFX.W
>STYA WND.Desktop+S.OBJ.W >STYA WND.Desktop+S.OBJ.W
>STYA WND.SysBar+S.OBJ.W >STYA WND.SysBar+S.OBJ.W
lda SYSFON.H lda SYSFON.Hp2
clc
adc #6
sta WND.SysBar+S.OBJ.H sta WND.SysBar+S.OBJ.H
lda DCB.GFX+S.DCB.GFX.H lda DCB.GFX+S.DCB.GFX.H
sta WND.Screen+S.OBJ.H sta WND.Screen+S.OBJ.H
sec sec
sbc WND.SysBar+S.OBJ.H sbc WND.SysBar+S.OBJ.H
sta WND.Desktop+S.OBJ.H sta WND.Desktop+S.OBJ.H
sta WND.SysBar+S.OBJ.X1 sta WND.SysBar+S.OBJ.Y1
lda DCB.GFX+S.DCB.GFX.H+1
sta WND.SysBar+S.OBJ.H+1
sbc #0
sta WND.Desktop+S.OBJ.H+1
sta WND.SysBar+S.OBJ.X1+1
>LDYA L.WND.Screen >LDYA L.WND.Screen
>STYA WND.Desktop+S.OBJ.hPARENT
>STYA WND.SysBar+S.OBJ.hPARENT
jsr OBJ.SetX2Y2 jsr OBJ.SetX2Y2
>LDYA L.WND.Desktop >LDYA L.WND.Desktop
>STYA WND.Screen.Childs
jsr OBJ.SetX2Y2 jsr OBJ.SetX2Y2
>LDYA L.WND.SysBar >LDYA L.WND.SysBar
>STYA WND.Screen.Childs+2
jsr OBJ.SetX2Y2 jsr OBJ.SetX2Y2
lda #24
sta WND.SysBar.A2osX.X2
lda #CUR.T.ARROW lda #CUR.T.ARROW
sta WND.Desktop+S.WND.hCUR sta WND.Desktop+S.WND.hCUR
sta WND.SysBar+S.WND.hCUR sta WND.SysBar+S.WND.hCUR
stz WND.Stack.Top stz WND.Stack.Top
jsr SYSBAR.Show
rts rts
*-------------------------------------- *--------------------------------------
WND.Quit lda WND.Screen+S.OBJ.hPARENT WND.Quit lda WND.Screen+S.OBJ.hPARENT
@ -84,9 +82,12 @@ WND.New >LDYAI S.WND
ldy WND.Stack.Top ldy WND.Stack.Top
cpy #WND.MAX cpy #WND.MAX
bcs .90 bcc .10
lda #S.OBJ.T.WND lda #E.OOH
>RET 9
.10 lda #S.OBJ.T.WND
sta (ZPWNDPtr) S.OBJ.T sta (ZPWNDPtr) S.OBJ.T
ldy #S.WND-1 ldy #S.WND-1
@ -142,6 +143,13 @@ WND.New >LDYAI S.WND
ldy #S.OBJ.hOWNER ldy #S.OBJ.hOWNER
sta (ZPWNDPtr),y sta (ZPWNDPtr),y
lda L.WND.Desktop
ldy #S.OBJ.hPARENT
sta (ZPWNDPtr),y
iny
lda L.WND.Desktop+1
sta (ZPWNDPtr),y
txa ID txa ID
ldy WND.Stack.Top ldy WND.Stack.Top
sta WND.Stack sta WND.Stack
@ -149,9 +157,6 @@ WND.New >LDYAI S.WND
* clc * clc
rts rts
.90 lda #E.OOH
.9 >RET 9
*-------------------------------------- *--------------------------------------
WND.Destroy clc WND.Destroy clc
rts rts
@ -261,7 +266,7 @@ WND.Show >SYSCALL2 GetMemPtr
jsr WND.SetStatus jsr WND.SetStatus
jsr WND.PaintTopBar jsr WND.PaintTopBar
bcs .9 bcs WND.GetProp.RTS
*-------------------------------------- *--------------------------------------
.3 ldy #S.WND.MBAR+1 .3 ldy #S.WND.MBAR+1
lda (ZPWNDPtr),y lda (ZPWNDPtr),y
@ -321,10 +326,22 @@ WND.Show >SYSCALL2 GetMemPtr
jsr WND.PaintSBar jsr WND.PaintSBar
*-------------------------------------- *--------------------------------------
.8 lda #0 .8 ldy #S.WND.InnerH
lda (ZPWNDPtr),y
sec
sbc Counter+1
sta (ZPWNDPtr),y
iny
lda (ZPWNDPtr),y
sbc #0
sta (ZPWNDPtr),y
lda #0
jsr PutA2CBBuf jsr PutA2CBBuf
>LDYA L.WND.Screen >LDYA L.WND.Desktop
jsr DrawCBPtrToYA jsr DrawCBPtrToYA
lda hCBBuf lda hCBBuf
@ -407,7 +424,7 @@ WND.fPaint
stz CB.Buf+S.CB.Y2+2 Ending 0 stz CB.Buf+S.CB.Y2+2 Ending 0
>LDYA L.WND.Screen >LDYA L.WND.Desktop
jmp DrawCBBufToYA jmp DrawCBBufToYA
.1 clc .1 clc

View File

@ -128,26 +128,6 @@ CS.START cld
.DA WND.Paint .DA WND.Paint
L.WND.fPaint .DA WND.fPaint L.WND.fPaint .DA WND.fPaint
*-------------------------------------- *--------------------------------------
J.MBAR .DA MBAR.New
.DA MBAR.Paint
.DA MBAR.Close
*--------------------------------------
J.MENU .DA MENU.New
.DA MENU.Paint
.DA MENU.Close
*--------------------------------------
J.MENUITEM .DA MITEM.New
.DA MITEM.Paint
.DA MITEM.Close
*--------------------------------------
J.BUT .DA BUT.New
.DA BUT.Paint
.DA BUT.Close
*--------------------------------------
J.TEXT .DA TEXT.New
.DA TEXT.Paint
.DA TEXT.Close
*--------------------------------------
L.DEVNAME.GFX .DA DEVNAME.GFX L.DEVNAME.GFX .DA DEVNAME.GFX
L.DEVNAME.MOUSE .DA DEVNAME.MOUSE L.DEVNAME.MOUSE .DA DEVNAME.MOUSE
L.SYSX7 .DA SYSX7 L.SYSX7 .DA SYSX7
@ -155,8 +135,10 @@ L.SYSX7B .DA SYSX7B
L.IOCTL .DA IOCTL L.IOCTL .DA IOCTL
L.DCB.GFX .DA DCB.GFX L.DCB.GFX .DA DCB.GFX
L.MouseClamp .DA MouseClamp L.MouseClamp .DA MouseClamp
L.CB.PTR .DA CB.PTR
L.CB.Buf .DA CB.Buf L.CB.Buf .DA CB.Buf
L.CB.Cache .DA CB.Cache L.CB.Cache .DA CB.Cache
L.OBJ.Cache .DA OBJ.Cache
L.WND.Screen .DA WND.Screen L.WND.Screen .DA WND.Screen
L.WND.Desktop .DA WND.Desktop L.WND.Desktop .DA WND.Desktop
L.WND.SysBar .DA WND.SysBar L.WND.SysBar .DA WND.SysBar
@ -166,7 +148,6 @@ L.BM.Close .DA BM.Close
L.BM.Max .DA BM.Max L.BM.Max .DA BM.Max
L.BM.Min .DA BM.Min L.BM.Min .DA BM.Min
*-------------------------------------- *--------------------------------------
L.CUR.CB .DA CUR.CB
L.CUR.SaveBuf .DA CUR.SaveBuf L.CUR.SaveBuf .DA CUR.SaveBuf
L.Cursors .DA CUR.Arrow L.Cursors .DA CUR.Arrow
.DA CUR.ResizeX .DA CUR.ResizeX
@ -230,66 +211,6 @@ LIB.UNLOAD dec LibCount
.8 clc .8 clc
rts rts
*-------------------------------------- *--------------------------------------
OBJ.GetInCache >STYA .1+1
ldx #S.OBJ-1
.1 lda $ffff,x SELF MODIFIED
sta OBJ.Cache,x
dex
bpl .1
rts
*--------------------------------------
OBJ.SetX2Y2 >STYA ZPObjPtr
ldy #S.OBJ.W
lda (ZPObjPtr),y
clc
sbc #0
pha
iny
lda (ZPObjPtr),y
sbc #0
tax
pla
clc
ldy #S.OBJ.X1
adc (ZPObjPtr),y
pha
txa
iny
adc (ZPObjPtr),y
ldy #S.OBJ.X2+1
sta (ZPObjPtr),y
dey
pla
sta (ZPObjPtr),y
ldy #S.OBJ.H
lda (ZPObjPtr),y
clc
sbc #0
pha
iny
lda (ZPObjPtr),y
sbc #0
tax
pla
clc
ldy #S.OBJ.Y1
adc (ZPObjPtr),y
pha
txa
iny
adc (ZPObjPtr),y
ldy #S.OBJ.Y2+1
sta (ZPObjPtr),y
dey
pla
sta (ZPObjPtr),y
rts
*--------------------------------------
CB.ClearCache ldx #S.CB-1 CB.ClearCache ldx #S.CB-1
.1 stz CB.Cache,x .1 stz CB.Cache,x
@ -355,6 +276,69 @@ GFXWrite.YA pha
>SYSCALL2 IOCTL >SYSCALL2 IOCTL
rts rts
*-------------------------------------- *--------------------------------------
OBJ.GetInCache >STYA .1+1
ldx #S.OBJ-1
.1 lda $ffff,x SELF MODIFIED
sta OBJ.Cache,x
dex
bpl .1
rts
*--------------------------------------
OBJ.SetX2Y2 >STYA ZPPtr1
ldy #S.OBJ.W
lda (ZPPtr1),y
clc
sbc #0
pha
iny
lda (ZPPtr1),y
sbc #0
tax
pla
clc
ldy #S.OBJ.X1
adc (ZPPtr1),y
pha
txa
iny
adc (ZPPtr1),y
ldy #S.OBJ.X2+1
sta (ZPPtr1),y
dey
pla
sta (ZPPtr1),y
ldy #S.OBJ.H
lda (ZPPtr1),y
clc
sbc #0
pha
iny
lda (ZPPtr1),y
sbc #0
tax
pla
clc
ldy #S.OBJ.Y1
adc (ZPPtr1),y
pha
txa
iny
adc (ZPPtr1),y
ldy #S.OBJ.Y2+1
sta (ZPPtr1),y
dey
pla
sta (ZPPtr1),y
rts
*--------------------------------------
.INB usr/src/lib/libgui.s.bm .INB usr/src/lib/libgui.s.bm
.INB usr/src/lib/libgui.s.but .INB usr/src/lib/libgui.s.but
.INB usr/src/lib/libgui.s.clip .INB usr/src/lib/libgui.s.clip
@ -372,7 +356,6 @@ CS.END
.INB usr/src/lib/libgui.g.bm .INB usr/src/lib/libgui.g.bm
.INB usr/src/lib/libgui.g.cur .INB usr/src/lib/libgui.g.cur
.INB usr/src/lib/libgui.g.fon .INB usr/src/lib/libgui.g.fon
.INB usr/src/lib/libgui.g.wnd
*-------------------------------------- *--------------------------------------
DEVNAME.GFX .AZ "/dev/gfx" DEVNAME.GFX .AZ "/dev/gfx"
DEVNAME.MOUSE .AZ "/dev/mou1" DEVNAME.MOUSE .AZ "/dev/mou1"
@ -408,26 +391,31 @@ MOUSEDATA .BS S.MOUSE
*-------------------------------------- *--------------------------------------
MouseClamp .BS 8 MouseClamp .BS 8
*-------------------------------------- *--------------------------------------
CB.Buf .BS S.CB CB.PTR .DA #S.CB.CMD.BITBLT
.BS 1 S.CB.OP
.DA #S.CB.M.MONO
.DA #0
.BS S.CB-4
*--------------------------------------
CB.Buf .BS S.CB+1 +Ending 0
CB.Cache .BS S.CB CB.Cache .BS S.CB
OBJ.Cache .BS S.OBJ OBJ.Cache .BS S.OBJ
*-------------------------------------- *--------------------------------------
WND.Stack.Top .BS 1
WND.Stack .BS WND.MAX
*--------------------------------------
WND.Screen .DA #S.OBJ.T.WND WND.Screen .DA #S.OBJ.T.WND
.BS S.WND-1 .BS S.WND-1
*-------------------------------------- *--------------------------------------
WND.Screen.Childs
.BS 2 WND.Desktop
.BS 2 WND.SysBar
.DA 0
*--------------------------------------
WND.Desktop .DA #S.OBJ.T.WND WND.Desktop .DA #S.OBJ.T.WND
.BS S.WND-1 .BS S.WND-1
*-------------------------------------- *--------------------------------------
WND.SysBar .DA #S.OBJ.T.WND WND.SysBar .DA #S.OBJ.T.WND
.BS S.WND-1 .BS S.WND-1
WND.SysBar.Childs WND.SysBar.A2osX.X2
.BS 2 BUT.Sys .BS 2
.DA 0 WND.SysBar.Time.X1
.BS 2
*-------------------------------------- *--------------------------------------
BUT.Sys .DA #S.OBJ.T.BUT BUT.Sys .DA #S.OBJ.T.BUT
.DA #0 F .DA #0 F
@ -447,6 +435,7 @@ MENU.Sys .DA #2 ID
.DA #0 .DA #0
*-------------------------------------- *--------------------------------------
PREFS.BESTVIEWEDX .DA #$FC PREFS.BESTVIEWEDX .DA #$FC
PREFS.SYSBARCOLOR .DA #C.WHITE
PREFS.MBARXMARGIN .DA #5 PREFS.MBARXMARGIN .DA #5
PREFS.BORDERCOLOR .DA #C.BLACK PREFS.BORDERCOLOR .DA #C.BLACK
PREFS.TBARCOLORA .DA #C16.D.BLUE PREFS.TBARCOLORA .DA #C16.D.BLUE

View File

@ -60,10 +60,6 @@ CS.RUN >LIBCALL hLIBGUI,LIBGUI.ShowCursor
CS.RUN.LOOP >SLEEP CS.RUN.LOOP >SLEEP
* lda A2osX.ASCREEN
* cmp #8
* bne CS.RUN.LOOP
>PUSHW L.MouseData >PUSHW L.MouseData
>LIBCALL hLIBGUI,LIBGUI.ReadMouse >LIBCALL hLIBGUI,LIBGUI.ReadMouse
bcs .8 bcs .8
@ -78,23 +74,25 @@ CS.RUN.LOOP >SLEEP
lda MouseData+S.MOUSE.S lda MouseData+S.MOUSE.S
.1 bit #S.MOUSE.S.CLK .1 bit #S.MOUSE.S.CLK
beq .4 beq .2
>LDA.G CUR.T >LDA.G CUR.T
inc inc
inc inc
cmp #CUR.T.WAIT+2 cmp #CUR.T.WAIT+2
bne .2 bne .11
lda #CUR.T.ARROW lda #CUR.T.ARROW
.2 >STA.G CUR.T .11 >STA.G CUR.T
>LIBCALL hLIBGUI,LIBGUI.SetCursor >LIBCALL hLIBGUI,LIBGUI.SetCursor
jmp CS.RUN.LOOP
.2 bit #S.MOUSE.S.DCLK
beq .8
jsr WND.Test jsr WND.Test
.4
.8 jmp CS.RUN.LOOP .8 jmp CS.RUN.LOOP
clc clc
@ -146,9 +144,18 @@ WND.Test >PUSHBI S.WND.F.RESIZE+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MAX+S.WND.F.
lda hWND lda hWND
>LIBCALL hLIBGUI,LIBGUI.WND.Paint >LIBCALL hLIBGUI,LIBGUI.WND.Paint
rts
clc >PUSHB hWND
.9 rts >PUSHBI S.CB.OP.SET
>PUSHBI C.BLACK
>PUSHWI 0
>PUSHWI 0
>PUSHWI 300
>PUSHWI 80
>LIBCALL hLIBGUI,LIBGUI.DrawLine
rts
*-------------------------------------- *--------------------------------------
CS.END CS.END
LIBGUI .AZ "libgui" LIBGUI .AZ "libgui"

View File

@ -25,4 +25,4 @@ hToDelete .BS 1
.FIN .FIN
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE usr/src/bin/x.cpmvrm.g SAVE usr/src/shared/x.cpmvrm.g

View File

@ -705,6 +705,6 @@ CS.QUIT jsr LeaveSubDir
rts rts
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE usr/src/bin/x.cpmvrm.s SAVE usr/src/shared/x.cpmvrm.s
LOAD usr/src/bin/cp.s LOAD usr/src/bin/cp.s
ASM ASM

View File

@ -570,6 +570,6 @@ DCB .DA #S.DCB.T.COM
*-------------------------------------- *--------------------------------------
DRV.END DRV.END
MAN MAN
SAVE usr/src/drv/x.ssc.drv.s SAVE usr/src/shared/x.ssc.drv.s
LOAD usr/src/drv/ssc.i.drv.s LOAD usr/src/drv/ssc.i.drv.s
ASM ASM

View File

@ -36,4 +36,4 @@ TWIST .DA #%00000000,#%10000000,#%01000000,#%11000000,#%00100000,#%10100000,#%
.DA #%00011111,#%10011111,#%01011111,#%11011111,#%00111111,#%10111111,#%01111111,#%11111111 .DA #%00011111,#%10011111,#%01011111,#%11011111,#%00111111,#%10111111,#%01111111,#%11111111
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE USR/SRC/SHARED/X.TWIST.G SAVE usr/src/shared/x.twist.g