mirror of
https://github.com/antoinevignau/source.git
synced 2025-01-19 10:31:15 +00:00
1 line
12 KiB
ArmAsm
Executable File
1 line
12 KiB
ArmAsm
Executable File
|
|
load 'macros.dump'
|
|
include 'driver.equ'
|
|
include 'pl.equ'
|
|
|
|
;-----------------------------------------------
|
|
;
|
|
; Imported addresses
|
|
;
|
|
;-----------------------------------------------
|
|
|
|
IMPORT D_BeachBall
|
|
IMPORT D_GetStats
|
|
IMPORT D_GetWdth
|
|
IMPORT D_GrowLHandle
|
|
IMPORT D_MustHandle
|
|
IMPORT D_SelectFont
|
|
IMPORT T_CurColor
|
|
IMPORT T_CurFont
|
|
IMPORT T_CurIndent
|
|
IMPORT T_CurRulBits
|
|
IMPORT T_CurRulPtr
|
|
IMPORT T_CurStyle
|
|
IMPORT T_CurStyleSize
|
|
IMPORT T_GetParPtr
|
|
IMPORT T_GetSpacing
|
|
IMPORT T_LockRuler
|
|
IMPORT T_MaxAscent
|
|
IMPORT T_MaxDescent
|
|
IMPORT T_MulLine
|
|
IMPORT T_UnlockRuler
|
|
|
|
|
|
|
|
;------------------------------------------------------------------------------
|
|
;
|
|
; T_CountSpaces (TextPtr:l,Offset:w,MaxOffset:w) : TabStop:w,Spaces:w
|
|
;
|
|
|
|
T_CountSpaces PROC EXPORT
|
|
;Using T_TextEqu
|
|
|
|
INPUT TextPtr:l,Offset:w,MaxOffset:w
|
|
OUTPUT TabStop:w,Spaces:w
|
|
|
|
BEGIN
|
|
|
|
stz Spaces
|
|
stz TabStop
|
|
ldy Offset
|
|
|
|
CharLoop cpy MaxOffset
|
|
bge Exit
|
|
lda [TextPtr],y
|
|
iny
|
|
|
|
and #$ff
|
|
cmp #SPACE+1
|
|
bge CharLoop
|
|
|
|
cmp #5
|
|
bge ChkTab
|
|
asl a
|
|
tax
|
|
jmp (JumpTable,x)
|
|
ChkTab
|
|
cmp #9
|
|
beq DoTab
|
|
cmp #13
|
|
beq Exit
|
|
cmp #32
|
|
beq DoSpace
|
|
bra Charloop
|
|
|
|
DoSpace inc Spaces
|
|
bra CharLoop
|
|
|
|
DoTab bra CharLoop
|
|
|
|
Skip2 iny
|
|
Skip1 iny
|
|
bra CharLoop
|
|
|
|
Exit dey
|
|
lda [TextPtr],y
|
|
and #$ff
|
|
cmp #SPACE
|
|
bne No
|
|
dec Spaces
|
|
No RETURN
|
|
|
|
|
|
JumpTable DC.W Exit ; 0
|
|
DC.W Skip2 ; 1
|
|
DC.W Skip1 ; 2
|
|
DC.W Skip1 ; 3
|
|
DC.W Skip1 ; 4
|
|
|
|
ENDP
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
;
|
|
; T_UseTab (TextPtr:l,Offset:w,CurH:w,MaxH:w,FontId:l,Color:w) : NextH
|
|
;
|
|
; TextPtr -- Ptr to Q_Text
|
|
; Offset -- Offet into Q_Text after tab.
|
|
; CurH -- Where Q_Text up to TextPtr ends horiz.
|
|
; MaxH -- The right margin
|
|
;
|
|
; NextH -- -1 -- Try tab on next Q_Line.
|
|
; >= 0 -- Where to start putting Q_Text
|
|
;
|
|
|
|
T_UseTab PROC EXPORT
|
|
;Using P_Data
|
|
;Using T_TextEqu
|
|
;Using T_Data
|
|
|
|
INPUT TextPtr:l,Offset:w,CurH:w,MaxH:w,FontId:l,Color:w
|
|
OUTPUT NextH:w
|
|
|
|
LOCAL RulerPtr:l,FontChanged:w,TabCount:w
|
|
LOCAL CurTab:l,TextWidth:w,Room:w,TheChar:w
|
|
|
|
BEGIN
|
|
|
|
|
|
moveword #-1,NextH
|
|
|
|
; D_Save these to be restored later
|
|
|
|
pushword FontId
|
|
pushword FontId+2
|
|
pushword Color
|
|
|
|
|
|
stz FontChanged
|
|
|
|
lda T_CurRulBits
|
|
and #T_Full+T_left
|
|
jeq TreatSpace
|
|
|
|
movelong T_CurRulPtr,RulerPtr
|
|
|
|
cmpw CurH,[RulerPtr]:#T_Indent
|
|
bge NotIndent
|
|
moveword [RulerPtr]:y,CurTab
|
|
stz CurTab+2
|
|
bra DoTab
|
|
NotIndent
|
|
|
|
|
|
|
|
; If there are no tab stops, treat as a space
|
|
|
|
moveword [RulerPtr]:#T_TabCount,TabCount
|
|
jeq TreatSpace
|
|
|
|
|
|
; If the first tab stop is greater than MaxH, treat as a space
|
|
|
|
addwl #T_TabArray,RulerPtr
|
|
cmpw [RulerPtr],MaxH
|
|
jge TreatSpace
|
|
|
|
ldx #0
|
|
LookTab
|
|
cmpw CurH,[RulerPtr]
|
|
blt FoundTab
|
|
addwl #4,RulerPtr
|
|
inx
|
|
cpx TabCount
|
|
blt LookTab
|
|
brl Exit ;Past all tabs, try next Q_Line.
|
|
|
|
FoundTab
|
|
movelong [RulerPtr],CurTab
|
|
|
|
|
|
DoTab
|
|
cmpw CurTab,MaxH
|
|
bge Exit
|
|
sta NextH
|
|
lda CurTab+2
|
|
beq Exit ;left tab just move over
|
|
|
|
|
|
subword CurTab,CurH,Room
|
|
stz TextWidth
|
|
|
|
|
|
CharLoop
|
|
moveword [TextPtr]:Offset,a
|
|
inc Offset
|
|
and #$ff
|
|
sta TheChar
|
|
cmp #'.'
|
|
bne noPer
|
|
lda CurTab+2
|
|
bpl NormalChar
|
|
brl AdjustTab
|
|
|
|
NoPer
|
|
cmp #sp
|
|
bcs NormalChar
|
|
|
|
|
|
SpecChar
|
|
asl a
|
|
tax
|
|
jmp (JumpTable,x)
|
|
|
|
|
|
NormalChar
|
|
lda FontChanged
|
|
beq NoChange
|
|
rcall D_SelectFont,in=(FontId:a,FontId+2:x,#0:y)
|
|
stz FontChanged
|
|
NoChange rcall D_GetWdth,in=(TheChar:a),out=(a:a)
|
|
addword a,TextWidth,TextWidth
|
|
|
|
GotTW
|
|
cmp Room
|
|
bge MakeCurH
|
|
brl CharLoop
|
|
|
|
|
|
AdjustTab
|
|
subword Room,TextWidth,a
|
|
bpl Okay
|
|
lda #0
|
|
Okay addword a,CurH,NextH
|
|
bra Exit
|
|
|
|
|
|
|
|
TreatSpace
|
|
rcall D_GetWdth,in=(#SPACE:a),out=(a:a)
|
|
addword a,CurH,CurH
|
|
cmp MaxH
|
|
bge Exit
|
|
|
|
MakeCurH moveword CurH,NextH
|
|
|
|
Exit ply
|
|
plx
|
|
pla
|
|
jsl D_SelectFont
|
|
|
|
RETURN
|
|
|
|
|
|
FChange
|
|
moveword [TextPtr]:Offset,FontId
|
|
inc Offset
|
|
bra ChangeExit
|
|
|
|
SizeChange
|
|
movebyte [TextPtr]:Offset,FontId+3
|
|
bra ChangeExit
|
|
|
|
StyleChange
|
|
movebyte [TextPtr]:Offset,FontId+2
|
|
bra ChangeExit
|
|
|
|
ChangeExit
|
|
inc Offset
|
|
inc FontChanged
|
|
brl CharLoop
|
|
|
|
|
|
|
|
JumpTable DC.W 0,FChange ;0,1
|
|
DC.W StyleChange,SizeChange ;2,3
|
|
DC.W ChangeExit,CharLoop ;4,5
|
|
DC.W CharLoop,CharLoop ;6,7
|
|
DC.W 0,AdjustTab ;8,9
|
|
DC.W 0,0 ;a,b
|
|
DC.W 0,AdJustTab ;c,d
|
|
|
|
ENDP
|
|
|
|
|
|
|
|
|
|
|
|
;------------------------------------------------------------------------------
|
|
;
|
|
; T_CutLine (TextPtr:l,LineNo:w,Offset:w,MaxWidth:w) :
|
|
; EndOffset:w,LineWidth:w,HitCR:w
|
|
;
|
|
|
|
T_CutLine PROC EXPORT
|
|
;Using P_ObjData
|
|
;Using T_Data
|
|
;Using T_TextEqu
|
|
|
|
INPUT TextPtr:l,LineNo:w,Offset:w,MaxWidth:w
|
|
OUTPUT EndOffset:w,LineWidth:w,HitCR:w
|
|
|
|
LOCAL CurWidth:w,Font:w,StyleSize:w
|
|
LOCAL MaxAscent:w,MaxDescent:w
|
|
LOCAL theChar:w,CharSize:w,FontChanged:w,ValidOffset:w
|
|
|
|
BEGIN
|
|
|
|
stz EndOffset
|
|
stz CurWidth
|
|
stz FontChanged
|
|
stz ValidOffset
|
|
stz HitCR
|
|
|
|
lda LineNo
|
|
bne NotFirst
|
|
moveword T_CurIndent,CurWidth
|
|
NotFirst
|
|
|
|
|
|
lda T_CurFont
|
|
sta Font
|
|
ldx T_CurStyleSize
|
|
stx StyleSize
|
|
ldy #0
|
|
jsl D_SelectFont
|
|
|
|
rcall D_GetStats,out=(MaxAscent:a,MaxDescent:x)
|
|
|
|
|
|
|
|
CharLoop
|
|
moveword [TextPtr]:Offset,a
|
|
inc Offset
|
|
and #$ff
|
|
sta theChar
|
|
cmp #SPACE+1
|
|
blt SpecialCase
|
|
|
|
|
|
ldx FontChanged
|
|
beq NoChange
|
|
|
|
rcall D_SelectFont,in=(Font:a,StyleSize:x,#0:y)
|
|
jsl D_GetStats
|
|
cmp MaxAscent
|
|
blt Smaller1
|
|
sta MaxAscent
|
|
Smaller1 cpx MaxDescent
|
|
blt Smaller2
|
|
stx MaxDescent
|
|
Smaller2
|
|
|
|
stz FontChanged
|
|
lda theChar
|
|
|
|
NoChange
|
|
cmp #$2D
|
|
beq DoHyphen
|
|
|
|
CheckWidth jsl D_GetWdth
|
|
addword a,CurWidth,CurWidth
|
|
cmp MaxWidth
|
|
bge NoFit
|
|
moveword Offset,ValidOffset
|
|
bra CharLoop
|
|
|
|
|
|
NoFit lda EndOffset
|
|
bne WordBreaks
|
|
|
|
; went one too far
|
|
jsr D_SetStuff
|
|
dec EndOffset
|
|
lda ValidOffset
|
|
beq NoChanges
|
|
moveword ValidOffset,EndOffset
|
|
NoChanges rcall D_GetWdth,in=(theChar:a),out=(CharSize:a)
|
|
subword LineWidth,CharSize,LineWidth
|
|
WordBreaks brl EndLine
|
|
|
|
|
|
|
|
SpecialCase
|
|
cmp #5
|
|
bge ChkTab
|
|
asl a
|
|
tax
|
|
jmp (JumpTable,x)
|
|
|
|
ChkTab
|
|
cmp #9
|
|
beq DoTab
|
|
cmp #13
|
|
beq X_DoCR
|
|
cmp #32
|
|
beq DoSpace
|
|
brl Charloop
|
|
DoHyphen
|
|
rcall D_GetWdth,in=(theChar:a),out=(a:a)
|
|
addword a,CurWidth,a
|
|
cmp MaxWidth
|
|
bge NoFit
|
|
sta CurWidth
|
|
|
|
jsr D_SetStuff
|
|
brl CharLoop
|
|
|
|
|
|
DoSpace
|
|
jsr D_SetStuff
|
|
|
|
lda theChar
|
|
brl CheckWidth
|
|
|
|
|
|
DoTab
|
|
jsr D_SetStuff
|
|
|
|
in TextPtr:l,Offset:w,CurWidth:w,MaxWidth:w
|
|
in StyleSize:w,Font:w,#0:w
|
|
out a:w
|
|
xcall T_UseTab
|
|
|
|
bmi TabNext
|
|
sta CurWidth
|
|
jsr D_SetStuff
|
|
brl CharLoop
|
|
|
|
TabNext dec Offset
|
|
jsr D_SetStuff
|
|
brl EndLine
|
|
|
|
|
|
X_DoCR
|
|
dec Offset
|
|
jsr D_SetStuff
|
|
inc HitCR
|
|
brl EndLine
|
|
|
|
|
|
FontChange moveword [TextPtr]:Offset,Font
|
|
inc Offset
|
|
bra ChangeExit
|
|
|
|
StyleChange movebyte [TextPtr]:Offset,StyleSize
|
|
bra ChangeExit
|
|
|
|
SizeChange movebyte [TextPtr]:Offset,StyleSize+1
|
|
|
|
ChangeExit
|
|
inc FontChanged
|
|
inc Offset
|
|
brl CharLoop
|
|
|
|
|
|
EndLine RETURN
|
|
|
|
|
|
D_SetStuff
|
|
moveword Offset,EndOffset
|
|
moveword CurWidth,LineWidth
|
|
moveword Font,T_CurFont
|
|
moveword StyleSize,T_CurStyleSize
|
|
moveword MaxAscent,T_MaxAscent
|
|
moveword MaxDescent,T_MaxDescent
|
|
rts
|
|
|
|
|
|
|
|
JumpTable DC.W CharLoop ; 0
|
|
DC.W FontChange ; 1
|
|
DC.W StyleChange ; 2
|
|
DC.W SizeChange ; 3
|
|
DC.W ChangeExit ; 4
|
|
|
|
ENDP
|
|
|
|
|
|
|
|
|
|
;----------------------------------------------------------------------------
|
|
;
|
|
; T_CutParag (ObjHdl:l; ParagNo:w; VertPos:w) : EndObjHdl:l,EndVertPos:w
|
|
;
|
|
; Works on T_CurParHdl.
|
|
|
|
T_CutParag PROC EXPORT
|
|
;Using P_ObjData
|
|
;Using T_Data
|
|
;Using T_TextEqu
|
|
|
|
INPUT ObjHdl:l,ParagNo:w,VertPos:w
|
|
OUTPUT EndObjHdl:l,EndVertPos:w
|
|
ERROR Err
|
|
|
|
|
|
LOCAL ObjPtr:l,ParagPtr:l,TextHdl:l,TextPtr:l
|
|
LOCAL NextObj:l,LinesHdl:l,LinePtr:l,Room:w
|
|
LOCAL LineCount:w,MaxWidth:w,MaxVert:w,ParHeight:w,LineHeight:w
|
|
LOCAL Offset:w,EndOffset:w,LineWidth:w,LineFont:l,HitCR:w
|
|
|
|
|
|
BEGIN
|
|
|
|
stz Err
|
|
stz ParHeight
|
|
stz LineCount
|
|
|
|
moveword #20,Room
|
|
|
|
call D_MustHandle,in=(#20*T_LineInfoSize:l,#attrLocked+attrPurge1:w),out=LinesHdl:l
|
|
movelong [LinesHdl],LinePtr
|
|
|
|
movelong [ObjHdl],ObjPtr
|
|
subword [ObjPtr]:#P_TRect+6,[ObjPtr]:#P_TRect+2,MaxWidth
|
|
subword [ObjPtr]:#P_TRect+4,[ObjPtr]:#P_TRect,MaxVert
|
|
|
|
rcall T_GetParPtr,in=(ParagNo:a),out=(ParagPtr:ax)
|
|
rcall T_LockRuler,in=(ax:ax)
|
|
|
|
rcall T_GetParPtr,in=(ParagNo:a),out=(ParagPtr:ax)
|
|
movelong ObjHdl,[ParagPtr]:#T_ObjHdl
|
|
moveword VertPos,[ParagPtr]:#T_ParStart
|
|
|
|
movelong [ParagPtr]:#T_TextBlock,TextHdl
|
|
tool _HLock,in=(TextHdl:l)
|
|
movelong [TextHdl],TextPtr
|
|
moveword [ParagPtr]:#T_ParOffset,a
|
|
addwl a,TextPtr
|
|
|
|
|
|
movelong [TextPtr],T_CurFont
|
|
rcall D_SelectFont,in=(T_CurFont:a,T_CurStyle:x,#0:y)
|
|
|
|
moveword #T_ParHeader,Offset
|
|
|
|
|
|
|
|
LineLoop
|
|
movelong T_CurFont,LineFont
|
|
|
|
CutLine
|
|
in TextPtr:l,LineCount:w,Offset:w,MaxWidth:w
|
|
out EndOffset:w,LineWidth:w,HitCR:w
|
|
xcall T_CutLine
|
|
|
|
rcall T_GetSpacing,in=(T_CurRulBits:a,T_MaxAscent:x,T_MaxDescent:y)
|
|
addword a,T_MaxAscent,a
|
|
addword a,T_MaxDescent,LineHeight
|
|
addword a,VertPos,a
|
|
cmp MaxVert
|
|
bge NextObject
|
|
|
|
jsr SetLine
|
|
lda HitCR
|
|
beq LineLoop
|
|
ToDone brl Done
|
|
|
|
|
|
NextObject
|
|
movelong [ObjHdl],ObjPtr
|
|
movelong [ObjPtr]:#P_NThread,NextObj
|
|
cpzl NextObj
|
|
bne NextOkay
|
|
|
|
cmpw VertPos,MaxVert
|
|
bge OverFlow
|
|
|
|
moveword ParagNo,[ObjPtr]:#P_EndParag
|
|
moveword LineCount,[ObjPtr]:#P_EndLine
|
|
bra OverFlow
|
|
|
|
|
|
NextOkay
|
|
moveword ParagNo,[ObjPtr]:#P_EndParag
|
|
moveword LineCount,[ObjPtr]:#P_EndLine
|
|
|
|
movelong NextObj,ObjHdl
|
|
movelong [ObjHdl],ObjPtr
|
|
moveword ParagNo,[ObjPtr]:#P_StartParag
|
|
moveword LineCount,[ObjPtr]:#P_StartLine
|
|
subword [ObjPtr]:#P_TRect+6,[ObjPtr]:#P_TRect+2,MaxWidth
|
|
subword [ObjPtr]:#P_TRect+4,[ObjPtr]:#P_TRect,MaxVert
|
|
stz VertPos
|
|
|
|
movelong LineFont,T_CurFont
|
|
brl CutLine
|
|
|
|
|
|
OverFlow
|
|
jsr SetLine
|
|
|
|
|
|
Done
|
|
movelong ObjHdl,EndObjHdl
|
|
moveword VertPos,EndVertPos
|
|
|
|
rcall T_MulLine,in=(LineCount:a),out=(a:a)
|
|
tool _SetHandleSize,in=(#0:w,a:w,LinesHdl:l)
|
|
call T_UnlockRuler
|
|
tool _HUnlock,in=(TextHdl:l)
|
|
|
|
rcall T_GetParPtr,in=(ParagNo:a),out=(ParagPtr:ax)
|
|
moveword ParHeight,[ParagPtr]:#T_ParHeight
|
|
moveword LineCount,[ParagPtr]:#T_LineCount
|
|
movelong LinesHdl,[ParagPtr]:#T_LinesHdl
|
|
|
|
Exit
|
|
RETURN
|
|
|
|
|
|
SetLine
|
|
cmpw LineCount,Room
|
|
blt NoGrow
|
|
|
|
addword LineCount,#20,a
|
|
jsl T_MulLine
|
|
call D_GrowLHandle,in=(#0:w,a:w,LinesHdl:l),out=LinePtr:l,err=Err
|
|
jcs LocExit
|
|
rcall T_MulLine,in=(LineCount:a)
|
|
addwl a,LinePtr
|
|
NoGrow
|
|
|
|
|
|
addword LineHeight,VertPos,VertPos
|
|
addword LineHeight,ParHeight,ParHeight
|
|
inc LineCount
|
|
|
|
|
|
moveword Offset,[LinePtr]:#T_Offset
|
|
subword EndOffset,Offset,[LinePtr]:#T_Length
|
|
moveword LineWidth,[LinePtr]:#T_LineWidth
|
|
shortm
|
|
moveword T_MaxAscent,[LinePtr]:#T_Ascent
|
|
moveword T_MaxDescent,[LinePtr]:#T_Descent
|
|
longm
|
|
|
|
moveword EndOffset,Offset
|
|
addwl #T_LineInfoSize,LinePtr
|
|
LocExit rts
|
|
|
|
|
|
ENDP
|
|
|
|
|
|
|
|
|
|
|
|
;-------------------------------------------------------------------------------
|
|
;
|
|
; T_RecutParag (ObjHdl:l,ParagNo:w;StartVert:w) : EndObjHdl:l,EndVert:w
|
|
;
|
|
|
|
T_RecutParag PROC EXPORT
|
|
;Using T_Data
|
|
;Using T_TextEqu
|
|
;Using P_ObjData
|
|
|
|
INPUT ObjHdl:l,ParagNo:w,StartVert:w
|
|
OUTPUT EndObjHdl:l,EndVert:w
|
|
|
|
LOCAL ParagPtr:l,ParHeight:w,LinesHdl:l
|
|
|
|
BEGIN
|
|
|
|
jsl D_BeachBall
|
|
|
|
rcall T_GetParPtr,in=(ParagNo:a),out=(ParagPtr:ax)
|
|
movelong [ParagPtr]:#T_LinesHdl,LinesHdl
|
|
|
|
cpzl LinesHdl
|
|
beq NoDispose
|
|
tool _DisposeHandle,in=(LinesHdl:l)
|
|
NoDispose
|
|
|
|
in ObjHdl:l,ParagNo:w,StartVert:w
|
|
out EndObjHdl:l,EndVert:w
|
|
xcall T_CutParag
|
|
|
|
rcall T_GetParPtr,in=(ParagNo:a),out=(ParagPtr:ax)
|
|
tool _HUnlock,in=([ParagPtr]:#T_LinesHdl:l)
|
|
|
|
RETURN
|
|
ENDP
|
|
|
|
|
|
|
|
|
|
|
|
;------------------------------------------------------------------------------;
|
|
;
|
|
; T_TrackFont (TextPtr:l, StopOffset:w)
|
|
;
|
|
; Track a font from the start of the paragragh pointed to by TextPtr
|
|
;
|
|
|
|
T_TrackFont PROC EXPORT
|
|
;Using T_Data
|
|
;Using T_TextEqu
|
|
|
|
INPUT TextPtr:l,StopOffset:w
|
|
|
|
|
|
BEGIN
|
|
|
|
moveword [TextPtr]:#T_ParFont,T_CurFont
|
|
moveword [TextPtr]:#T_ParStyle,T_CurStyleSize
|
|
moveword [TextPtr]:#T_ParColor,a
|
|
and #$ff
|
|
sta T_CurColor
|
|
|
|
|
|
ldy #T_ParHeader
|
|
|
|
CharLoop
|
|
cpy StopOffset
|
|
bge Exit
|
|
lda [TextPtr],y
|
|
iny
|
|
and #$ff
|
|
cmp #T_ColorChange+1
|
|
bge CharLoop
|
|
|
|
|
|
asl a
|
|
tax
|
|
jmp (JumpTable,x)
|
|
|
|
|
|
FontChange
|
|
moveword [TextPtr]:y,T_CurFont
|
|
iny
|
|
iny
|
|
bra CharLoop
|
|
|
|
StyleChange
|
|
shortm
|
|
moveword [TextPtr]:y,T_CurStyleSize
|
|
longm
|
|
iny
|
|
bra CharLoop
|
|
|
|
SizeChange
|
|
shortm
|
|
moveword [TextPtr]:y,T_CurStyleSize+1
|
|
longm
|
|
iny
|
|
bra CharLoop
|
|
|
|
ColorChange
|
|
shortm
|
|
moveword [TextPtr]:y,T_CurColor
|
|
longm
|
|
iny
|
|
bra CharLoop
|
|
|
|
|
|
|
|
Exit RETURN
|
|
|
|
|
|
JumpTable DC.W Exit
|
|
DC.W FontChange
|
|
DC.W StyleChange
|
|
DC.W SizeChange
|
|
DC.W ColorChange
|
|
ENDP
|
|
END
|
|
|