mirror of
https://github.com/antoinevignau/source.git
synced 2025-01-17 12:31:16 +00:00
1450 lines
37 KiB
ArmAsm
1450 lines
37 KiB
ArmAsm
|
;-----------------------------------------------------------------
|
||
|
;
|
||
|
; FILE : SHOWSTICKER.S - Choix d'un Sticker -
|
||
|
; -------------
|
||
|
;-----------------------------------------------------------------
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Creation du MODELESSDIALOG
|
||
|
;
|
||
|
;...............................................................
|
||
|
DoSticker START
|
||
|
Using GlobalData
|
||
|
Using WindowData
|
||
|
Using ProdosData
|
||
|
;--
|
||
|
DoSticker1 ENTRY |par Cartouche
|
||
|
;--
|
||
|
lda Mode_ShowOff
|
||
|
cmp #Mode_Rien
|
||
|
bne Sticker_Go
|
||
|
rts
|
||
|
;--
|
||
|
Sticker_Go ANOP
|
||
|
; PushLong Ptr_OptionW
|
||
|
; _SetPort
|
||
|
;
|
||
|
; PushLong #RectStickers |cadre dans Cartouche
|
||
|
; _InvertRect
|
||
|
;--
|
||
|
SDoSticker lda #Haut_Sticker |init cadre sticker
|
||
|
sta Val_Hauteur
|
||
|
inc a
|
||
|
sta Val_Hauteur1
|
||
|
|
||
|
lda #Larg_Sticker
|
||
|
sta Val_Largeur
|
||
|
|
||
|
lda #0
|
||
|
sta EndSticker |fin dialog
|
||
|
sta Top_cadre
|
||
|
sta First_cadre
|
||
|
sta Flag_cadre
|
||
|
sta Time_cadre
|
||
|
;--
|
||
|
lda #1
|
||
|
sta Top_rect9
|
||
|
;--
|
||
|
lda #$FFFF
|
||
|
sta OldX_2C
|
||
|
sta OldY_2C
|
||
|
;--
|
||
|
PushLong #0 |sauve le port
|
||
|
_GetPort
|
||
|
;--
|
||
|
jsr Alloc_FIcon |y mettre les Stickers
|
||
|
bcc ok000
|
||
|
jsr Alert_CCP
|
||
|
Ko010 ANOP
|
||
|
lda #0 |remettre la fleche
|
||
|
sta Choix_option
|
||
|
jsr In_Option1
|
||
|
; PushLong Ptr_OptionW
|
||
|
; _SetPort
|
||
|
; PushLong #RectStickers
|
||
|
; _InvertRect
|
||
|
_SetPort
|
||
|
rts
|
||
|
;--
|
||
|
ok000 jsr Alloc_IoStk |y loader les Stickers 1 par 1 (1716)
|
||
|
jsr Loadpagestick
|
||
|
bcc ok00
|
||
|
jsr Dealloc_FIcon
|
||
|
jsr Dealloc_IoStk
|
||
|
bra ko010
|
||
|
;--
|
||
|
ok00 jsl Pleine_Page |en plein ecran
|
||
|
|
||
|
ok1 jsr Make_StickerW |Creation du Dialog
|
||
|
;--
|
||
|
lda EventWhen
|
||
|
sec
|
||
|
sbc #100
|
||
|
sta Double_Click
|
||
|
;--------------------------------------
|
||
|
; LOOP
|
||
|
;--------------------------------------
|
||
|
NextEvent PushWord #0
|
||
|
PushWord #$1FFF
|
||
|
PushLong #EventRecord
|
||
|
_GetNextEvent
|
||
|
pla
|
||
|
bne HdlEvent
|
||
|
jsr Cadre_Tournant |procedure de showiselect
|
||
|
bra NextEvent
|
||
|
;--
|
||
|
HdlEvent ANOP
|
||
|
PushWord #0
|
||
|
PushLong #EventRecord
|
||
|
PushLong #Ptr_SStickerW
|
||
|
PushLong #SkItemHit
|
||
|
_DialogSelect
|
||
|
pla
|
||
|
beq NextEvent
|
||
|
|
||
|
lda SkItemHit
|
||
|
sec
|
||
|
sbc #20
|
||
|
asl a
|
||
|
tax
|
||
|
jsr (CHXSTICKER,x)
|
||
|
|
||
|
lda EndSticker
|
||
|
beq NextEvent
|
||
|
|
||
|
jsr Menu_On_Off
|
||
|
;--------------------------------------
|
||
|
; On Ferme
|
||
|
;--------------------------------------
|
||
|
FDoSticker PushLong Ptr_SstickerW
|
||
|
_CloseDialog
|
||
|
|
||
|
F0DoSticker ANOP
|
||
|
lda #0 |remettre la fleche
|
||
|
sta Choix_option
|
||
|
jsr In_Option1
|
||
|
_SetPort
|
||
|
;--
|
||
|
jsr Dealloc_Ficon
|
||
|
jsr Dealloc_IoStk
|
||
|
;--
|
||
|
jsl Demi_Page
|
||
|
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; TABLES DES COMMANDES
|
||
|
;--------------------------------------
|
||
|
CHXSTICKER ANOP
|
||
|
dc i'STK_Select' |20 Select
|
||
|
dc i'STK_Cancel' |21 Cancel
|
||
|
dc i'STK_SMC' |22 See More Choices
|
||
|
dc i'STK_FPSD' |23 From Print Shop Disk
|
||
|
dc i'STK_Sticker' |24 click in Sticker
|
||
|
;--------------------------------------
|
||
|
; Make_StickerW
|
||
|
;--------------------------------------
|
||
|
Make_StickerW ENTRY
|
||
|
PushLong #0 | dialogPtr
|
||
|
PushLong #FullRect | content rectangle
|
||
|
PushLong #0 | no title
|
||
|
PushLong #$FFFFFFFF | bring to front
|
||
|
PushWord #$0020 | frame
|
||
|
PushLong #20 | Refcon
|
||
|
PushLong #FullRect | full size
|
||
|
_NewModelessDialog
|
||
|
pla
|
||
|
sta Ptr_SStickerW
|
||
|
pla
|
||
|
sta Ptr_SStickerW+2
|
||
|
;--
|
||
|
PushLong Ptr_SStickerW
|
||
|
_SetPort
|
||
|
;--
|
||
|
PushLong Ptr_SstickerW |4 Controls Pour STICKERS
|
||
|
PushLong #ISelectK
|
||
|
_GetNewDItem
|
||
|
|
||
|
PushLong Ptr_SstickerW
|
||
|
PushLong #ICancelK
|
||
|
_GetNewDItem
|
||
|
|
||
|
PushLong Ptr_SstickerW
|
||
|
PushLong #ISMCK
|
||
|
_GetNewDItem
|
||
|
|
||
|
PushLong Ptr_SstickerW
|
||
|
PushLong #IFPSDK
|
||
|
_GetNewDItem
|
||
|
|
||
|
PushLong Ptr_SstickerW
|
||
|
PushLong #SPage
|
||
|
_GetNewDItem
|
||
|
|
||
|
PushWord #0
|
||
|
PushWord #14
|
||
|
_MoveTo
|
||
|
|
||
|
PushWord #320
|
||
|
PushWord #14
|
||
|
_LineTo
|
||
|
|
||
|
PushWord #4
|
||
|
PushWord #11
|
||
|
_MoveTo
|
||
|
|
||
|
PushLong #StickerTxt
|
||
|
_DrawString
|
||
|
|
||
|
jsr ShowFSticker
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; SpageProc
|
||
|
;--------------------------------------
|
||
|
SpageProc ANOP
|
||
|
lda 0,s
|
||
|
sta 6,s
|
||
|
lda 2,s
|
||
|
sta 8,s
|
||
|
tsc
|
||
|
clc
|
||
|
adc #6
|
||
|
tcs
|
||
|
rtl
|
||
|
;--------------------------------------
|
||
|
; STK_Select
|
||
|
;--------------------------------------
|
||
|
STK_Select ANOP
|
||
|
inc EndSticker
|
||
|
jsr New_Sticker
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; STK_Cancel
|
||
|
;--------------------------------------
|
||
|
STK_Cancel ANOP
|
||
|
inc EndSticker
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; STK_SMC
|
||
|
;--------------------------------------
|
||
|
STK_SMC ANOP
|
||
|
;--
|
||
|
stz Load_What
|
||
|
jsr Eff_cadre
|
||
|
;--
|
||
|
PushWord #20
|
||
|
PushWord #35
|
||
|
PushLong #SmcTxtK
|
||
|
PushLong #Filtre_Sticker
|
||
|
PushLong #TypeListSMC
|
||
|
PushLong #Reply
|
||
|
_SFGetFile
|
||
|
|
||
|
jsr ShowFSticker
|
||
|
|
||
|
lda Reply_Good
|
||
|
beq FSTK_SMC
|
||
|
;--
|
||
|
jsr D_Hdl_FIcon
|
||
|
jsr D_Hdl_IoStk
|
||
|
|
||
|
lda #0
|
||
|
sta Num_Sticker
|
||
|
jsr Load_Sticker
|
||
|
bcs SSTK_SMC
|
||
|
;--
|
||
|
lda #8
|
||
|
sta Num_Sticker
|
||
|
jsr Create_Sticker
|
||
|
lda #0
|
||
|
sta Top_Cadre
|
||
|
lda #1
|
||
|
sta Top_Rect9
|
||
|
jsr Select_K_Off
|
||
|
;--
|
||
|
SSTK_SMC jsr U_Hdl_Ficon
|
||
|
jsr U_Hdl_IoStk
|
||
|
jsr ShowFSticker
|
||
|
|
||
|
FSTK_SMC rts
|
||
|
;--------------------------------------
|
||
|
; STK_FPSD
|
||
|
;--------------------------------------
|
||
|
STK_FPSD ANOP
|
||
|
;--
|
||
|
lda #1
|
||
|
sta Load_What
|
||
|
jsr Eff_Cadre
|
||
|
;--
|
||
|
PushWord #20
|
||
|
PushWord #35
|
||
|
PushLong #FPSDTxtK
|
||
|
PushLong #Filtre_Sticker
|
||
|
PushLong #TypeListFPSD
|
||
|
PushLong #Reply
|
||
|
_SFGetFile
|
||
|
|
||
|
jsr ShowFSticker
|
||
|
|
||
|
lda Reply_Good
|
||
|
beq FPSTK_FPSD
|
||
|
;--
|
||
|
jsr Create_PageSTK |charger + mise en forme
|
||
|
lda #0
|
||
|
sta Top_Cadre
|
||
|
sta Top_Rect9
|
||
|
jsr Select_K_Off
|
||
|
jsr ShowFSticker
|
||
|
|
||
|
FPSTK_FPSD rts
|
||
|
;--------------------------------------
|
||
|
; Create_PageStk
|
||
|
;--------------------------------------
|
||
|
Create_PageSTK ANOP
|
||
|
_WaitCursor
|
||
|
|
||
|
jsr D_Hdl_FIcon
|
||
|
jsr D_Hdl_IoStk
|
||
|
;--
|
||
|
ldy #$7CFE |init a blanc
|
||
|
lda #$FFFF
|
||
|
RLoop sta [Ptr_FIcon],y
|
||
|
dey
|
||
|
dey
|
||
|
bpl RLoop
|
||
|
;--
|
||
|
SCPSTK lda #0
|
||
|
sta Num_Sticker
|
||
|
|
||
|
RCPSTK ANOP
|
||
|
jsr Load_Sticker |load dans buffer
|
||
|
bcs S0CPSTK
|
||
|
;--
|
||
|
jsr Create_Sticker |fabrique l'image
|
||
|
|
||
|
inc Num_Sticker |suivante
|
||
|
|
||
|
lda Num_Sticker
|
||
|
cmp #8
|
||
|
bcc RCPSTK
|
||
|
|
||
|
S0CPSTK jsr U_Hdl_FIcon
|
||
|
jsr U_Hdl_IoStk
|
||
|
|
||
|
_InitCursor
|
||
|
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; Load_Sticker
|
||
|
;--------------------------------------
|
||
|
Load_Sticker ANOP
|
||
|
|
||
|
lda #Reply_FullName
|
||
|
sta NamePtr
|
||
|
lda #^Reply_FullName
|
||
|
sta NamePtr+2
|
||
|
|
||
|
_Open OpenParams
|
||
|
bcc SMarkStk
|
||
|
rts
|
||
|
;--
|
||
|
SMarkStk ANOP
|
||
|
Lda OpenId
|
||
|
sta ReadId
|
||
|
sta CloseId
|
||
|
sta SetMarkId
|
||
|
|
||
|
PushLong #0
|
||
|
PushWord Num_Sticker
|
||
|
PushWord #1716
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
|
||
|
sta SetMarkPos
|
||
|
stz SetMarkPos+2
|
||
|
|
||
|
_SetMark SetMarkParams
|
||
|
bcc ReadStk
|
||
|
bra Err1_LdSTK
|
||
|
;--
|
||
|
ReadStk lda Ptr_IoStk
|
||
|
sta ReadDest
|
||
|
lda Ptr_IoStk+2
|
||
|
sta ReadDest+2
|
||
|
|
||
|
lda #1716
|
||
|
sta ReadLg
|
||
|
stz ReadLg+2
|
||
|
|
||
|
_Read ReadParams
|
||
|
bcc CloseStk
|
||
|
bra Err1_LdStk
|
||
|
;--
|
||
|
CloseStk _Close CloseParams
|
||
|
bcs Err1_LdStk
|
||
|
rts
|
||
|
;--
|
||
|
Err1_LdStk _Close CloseParams
|
||
|
sec
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; Create_Sticker
|
||
|
;--------------------------------------
|
||
|
Create_Sticker ANOP
|
||
|
|
||
|
lda #0 |init variable
|
||
|
sta Plan_sticker
|
||
|
sta Index_BStk
|
||
|
sta Index_BPlan
|
||
|
sta Poids_Stk
|
||
|
lda #7
|
||
|
sta Bit_Stk
|
||
|
|
||
|
lda Num_Sticker |position a l'ecran
|
||
|
asl a
|
||
|
tay
|
||
|
lda Tab_DestStkX,y
|
||
|
sta Dest_StkX
|
||
|
lda Tab_DestStkY,y
|
||
|
sta Dest_StkY
|
||
|
;--
|
||
|
lda Ptr_IoStk |pointeur sticker
|
||
|
sta Ptr_PK0
|
||
|
lda Ptr_IoStk+2
|
||
|
sta Ptr_PK0+2
|
||
|
|
||
|
lda Ptr_PK0 |plan 1
|
||
|
clc
|
||
|
adc #572
|
||
|
sta Ptr_PK1
|
||
|
lda Ptr_PK0+2
|
||
|
adc #0
|
||
|
sta Ptr_PK1+2
|
||
|
|
||
|
lda Ptr_PK1 |plan 2
|
||
|
clc
|
||
|
adc #572
|
||
|
sta Ptr_PK2
|
||
|
lda Ptr_PK1+2
|
||
|
adc #0
|
||
|
sta Ptr_PK2+2
|
||
|
;--
|
||
|
lda Ptr_FIcon |calcul a l'ecran
|
||
|
sta Ptr_PZero
|
||
|
lda Ptr_FIcon+2
|
||
|
sta Ptr_PZero+2
|
||
|
;--
|
||
|
lda Dest_StkX
|
||
|
lsr a
|
||
|
clc
|
||
|
adc Ptr_PZero
|
||
|
sta Ptr_Pzero
|
||
|
|
||
|
PushLong #0
|
||
|
PushWord Dest_StkY
|
||
|
PushWord #160
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
clc
|
||
|
adc Ptr_PZero
|
||
|
sta Ptr_PZero
|
||
|
;--
|
||
|
lda #$0000
|
||
|
;--
|
||
|
Ret sep #$20
|
||
|
longa off
|
||
|
;-------
|
||
|
trtPlan0 ldy index_BStk |plan 0
|
||
|
lda [Ptr_PK0],y
|
||
|
ldx Bit_Stk
|
||
|
and Tab_Bit_Stk,x
|
||
|
bne plan0set
|
||
|
;-
|
||
|
plan0clear lda Poids_Stk |init a zero
|
||
|
bne trtPlan1
|
||
|
ldy Index_Bplan
|
||
|
sta [Ptr_PZero],y
|
||
|
bra trtPlan1
|
||
|
;-
|
||
|
plan0set lda Poids_Stk
|
||
|
beq plan0SetH
|
||
|
;
|
||
|
plan0SetL ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
ora #$01
|
||
|
sta [Ptr_Pzero],y
|
||
|
bra trtPlan1
|
||
|
;
|
||
|
plan0SetH ldy Index_BPlan
|
||
|
lda #$10
|
||
|
sta [Ptr_Pzero],y
|
||
|
;-------
|
||
|
trtPlan1 ldy index_BStk |plan 1
|
||
|
lda [Ptr_PK1],y
|
||
|
ldx Bit_Stk
|
||
|
and Tab_Bit_Stk,x
|
||
|
beq trtPlan2
|
||
|
;-
|
||
|
plan1set lda Poids_Stk
|
||
|
beq plan1SetH
|
||
|
;
|
||
|
plan1SetL ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
ora #$02
|
||
|
sta [Ptr_Pzero],y
|
||
|
bra trtPlan2
|
||
|
;
|
||
|
plan1SetH ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
ora #$20
|
||
|
sta [Ptr_Pzero],y
|
||
|
;-------
|
||
|
trtPlan2 ldy index_BStk |plan 2
|
||
|
lda [Ptr_PK2],y
|
||
|
ldx Bit_Stk
|
||
|
and Tab_Bit_Stk,x
|
||
|
beq ColorPlan
|
||
|
;-
|
||
|
plan2set lda Poids_Stk
|
||
|
beq plan2SetH
|
||
|
;
|
||
|
plan2SetL ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
ora #$04
|
||
|
sta [Ptr_Pzero],y
|
||
|
bra ColorPlan
|
||
|
;
|
||
|
plan2SetH ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
ora #$40
|
||
|
sta [Ptr_Pzero],y
|
||
|
;--
|
||
|
ColorPlan lda Poids_Stk
|
||
|
beq ColorH
|
||
|
;--
|
||
|
ColorL ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
tax
|
||
|
and #$F0
|
||
|
sta [Ptr_Pzero],y
|
||
|
txa
|
||
|
and #$0F
|
||
|
tax
|
||
|
lda TabColK,x
|
||
|
ora [Ptr_Pzero],y
|
||
|
sta [Ptr_Pzero],y
|
||
|
bra suitek
|
||
|
;--
|
||
|
ColorH ldy Index_BPlan
|
||
|
lda [Ptr_Pzero],y
|
||
|
tax
|
||
|
and #$0F
|
||
|
sta [Ptr_Pzero],y
|
||
|
txa
|
||
|
and #$F0
|
||
|
lsr a
|
||
|
lsr a
|
||
|
lsr a
|
||
|
lsr a
|
||
|
tax
|
||
|
lda TabColK,x
|
||
|
asl a
|
||
|
asl a
|
||
|
asl a
|
||
|
asl a
|
||
|
ora [Ptr_Pzero],y
|
||
|
sta [Ptr_Pzero],y
|
||
|
;--
|
||
|
suiteK rep #$20
|
||
|
longa on
|
||
|
;--
|
||
|
inc Poids_Stk
|
||
|
lda Poids_Stk
|
||
|
cmp #2
|
||
|
bcc suitek2
|
||
|
stz Poids_Stk
|
||
|
;--
|
||
|
suitek1 inc Index_BPlan
|
||
|
lda Index_BPlan
|
||
|
cmp #44
|
||
|
bcc Suitek2
|
||
|
stz index_BPlan
|
||
|
lda Ptr_Pzero
|
||
|
clc
|
||
|
adc #160
|
||
|
sta Ptr_Pzero
|
||
|
;--
|
||
|
Suitek2 dec Bit_Stk
|
||
|
bpl Suitek3
|
||
|
lda #7
|
||
|
sta Bit_Stk
|
||
|
inc Index_BStk
|
||
|
lda Index_BStk
|
||
|
cmp #572
|
||
|
beq Stop_Stk
|
||
|
;--
|
||
|
Suitek3 lda #0
|
||
|
brl Ret
|
||
|
;--
|
||
|
Stop_Stk rts
|
||
|
;--------------------------------------
|
||
|
; ShowFSticker
|
||
|
;--------------------------------------
|
||
|
ShowFSticker ANOP
|
||
|
;--
|
||
|
PushLong Ptr_SstickerW
|
||
|
_SetPort
|
||
|
|
||
|
jsr D_Hdl_FIcon
|
||
|
sta aPicPtr
|
||
|
stx aPicPtr+2
|
||
|
|
||
|
PushLong #aLocInfo |ptr param block dest
|
||
|
PushLong #SrcRectK |source rect
|
||
|
PushWord #14 |destX
|
||
|
PushWord #17 |destY
|
||
|
PushWord #0 |mode
|
||
|
_PPToPort
|
||
|
|
||
|
jsr U_Hdl_FIcon
|
||
|
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; LoadPageStick
|
||
|
;--------------------------------------
|
||
|
LoadPageStick ANOP
|
||
|
lda #NamePageStick
|
||
|
sta NamePtr
|
||
|
lda #^NamePageStick
|
||
|
sta NamePtr+2
|
||
|
lda #$c0
|
||
|
sta TypeOfIcon
|
||
|
jsr Sload_FileIcon
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; Filtre_Sticker
|
||
|
;--------------------------------------
|
||
|
Filtre_Sticker ANOP
|
||
|
;--
|
||
|
phb
|
||
|
phd
|
||
|
|
||
|
phk
|
||
|
plb
|
||
|
|
||
|
lda MyZp
|
||
|
tcd
|
||
|
;--
|
||
|
lda 7,s
|
||
|
sta Ptr_Pzero
|
||
|
lda 9,s
|
||
|
sta Ptr_Pzero+2
|
||
|
;--
|
||
|
ldy #$10
|
||
|
lda [Ptr_Pzero],y
|
||
|
and #$00FF
|
||
|
cmp #$06 |bin
|
||
|
beq filtre_s
|
||
|
cmp #$F8 |stickers page
|
||
|
beq filtre_1
|
||
|
cmp #$0F |directory
|
||
|
beq okfiltre
|
||
|
;--
|
||
|
kofiltre lda #0
|
||
|
sta 11,s
|
||
|
bra FFiltre_Sticker
|
||
|
;--
|
||
|
filtre_1 lda Load_What |1 sticker seul
|
||
|
bne kofiltre
|
||
|
|
||
|
ldy #$1F |aux type = $C323
|
||
|
lda [Ptr_Pzero],y
|
||
|
cmp #$C323
|
||
|
bne kofiltre
|
||
|
|
||
|
bra okfiltre
|
||
|
;--
|
||
|
filtre_s lda Load_What
|
||
|
beq kofiltre
|
||
|
|
||
|
ldy #$1F
|
||
|
lda [Ptr_Pzero],y
|
||
|
cmp #$2000
|
||
|
bne kofiltre
|
||
|
|
||
|
ldy #$13
|
||
|
lda [Ptr_Pzero],y
|
||
|
cmp #$001C
|
||
|
bne kofiltre
|
||
|
;--
|
||
|
okfiltre lda #2
|
||
|
sta 11,s
|
||
|
;--
|
||
|
FFiltre_Sticker ANOP
|
||
|
|
||
|
pld
|
||
|
plb
|
||
|
|
||
|
lda 0,s
|
||
|
sta 4,s
|
||
|
lda 2,s
|
||
|
sta 6,s
|
||
|
|
||
|
tsc
|
||
|
clc
|
||
|
adc #4
|
||
|
tcs
|
||
|
|
||
|
rtl
|
||
|
;--------------------------------------
|
||
|
; Stk_Sticker
|
||
|
;--------------------------------------
|
||
|
Stk_Sticker ANOP
|
||
|
;--
|
||
|
lda #0
|
||
|
sta Rect_Stick_On
|
||
|
;--
|
||
|
RTst_Sticker pha
|
||
|
PushWord #0
|
||
|
PushLong #EventWhere
|
||
|
asl a
|
||
|
asl a
|
||
|
tax
|
||
|
lda TabRectStk+2,x
|
||
|
pha
|
||
|
lda TabRectStk,x
|
||
|
pha
|
||
|
_PtInRect
|
||
|
pla
|
||
|
bne Inside
|
||
|
;--
|
||
|
outside pla
|
||
|
inc a
|
||
|
cmp #9
|
||
|
bcc RTst_Sticker
|
||
|
NoInside rts
|
||
|
;--
|
||
|
Inside pla
|
||
|
cmp #8
|
||
|
bne SInside
|
||
|
|
||
|
tax
|
||
|
lda Top_Rect9
|
||
|
beq NoInside
|
||
|
txa
|
||
|
|
||
|
SInside sta Rect_Stick_On
|
||
|
;--
|
||
|
jsr Eff_Cadre
|
||
|
|
||
|
lda Rect_Stick_On
|
||
|
asl a
|
||
|
asl a
|
||
|
asl a
|
||
|
tay
|
||
|
ldx #0
|
||
|
|
||
|
RCP_Stk lda RectStk1,y
|
||
|
sta Rect_Icone1,x
|
||
|
sta Rect_Icone,x
|
||
|
inx
|
||
|
inx
|
||
|
iny
|
||
|
iny
|
||
|
cpx #8
|
||
|
bcc RCP_Stk
|
||
|
;--
|
||
|
jsr Select_K_On
|
||
|
;--
|
||
|
lda #1
|
||
|
sta Top_cadre
|
||
|
;--
|
||
|
lda MouseX
|
||
|
sta NewX_2C
|
||
|
lda MouseY
|
||
|
sta NewY_2C
|
||
|
;--
|
||
|
lda NewY_2C
|
||
|
cmp OldY_2C
|
||
|
bne FStk_sticker
|
||
|
lda NewX_2C
|
||
|
cmp OldX_2C
|
||
|
bne FStk_sticker
|
||
|
;--
|
||
|
lda EventWhen |DOUBLE CLICK
|
||
|
sec
|
||
|
sbc Double_Click
|
||
|
cmp #30
|
||
|
bcs FStk_sticker
|
||
|
;--
|
||
|
jsr Stk_Select
|
||
|
|
||
|
FStk_sticker lda EventWhen
|
||
|
sta Double_Click
|
||
|
|
||
|
lda NewY_2C
|
||
|
sta OldY_2C
|
||
|
lda NewX_2C
|
||
|
sta OldX_2C
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; Select On Off
|
||
|
;--------------------------------------
|
||
|
Select_K_Off ANOP
|
||
|
PushWord #$FF
|
||
|
bra SSKOffOn
|
||
|
|
||
|
Select_K_On ANOP
|
||
|
PushWord #0
|
||
|
SSKOffOn PushLong #0
|
||
|
PushLong Ptr_SStickerW
|
||
|
PushWord ISelectK
|
||
|
_GetControlDItem
|
||
|
_HiliteControl
|
||
|
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; New_Sticker
|
||
|
;--------------------------------------
|
||
|
New_Sticker ANOP
|
||
|
;--
|
||
|
jsr Eff_Cadre |Pour ne pas le Copier
|
||
|
;--
|
||
|
inc Frame_Sticker |et une de plus
|
||
|
jsr Resize_Sticker |retaille le buffer
|
||
|
;--
|
||
|
bcc OkNS |Pas de place +++
|
||
|
dec Frame_Sticker
|
||
|
jsr Alert_CCP
|
||
|
brl FinNS
|
||
|
;--
|
||
|
OkNS jsr D_Hdl_Sticker |Buffer des Stickers
|
||
|
|
||
|
PushLong #0 |Ou Placer L'icone
|
||
|
lda Frame_Sticker
|
||
|
dec a
|
||
|
pha
|
||
|
PushWord Lg_StickerRecord
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
clc
|
||
|
adc Ptr_Sticker
|
||
|
sta Ptr_PZero
|
||
|
lda Ptr_Sticker+2
|
||
|
adc #0
|
||
|
sta Ptr_PZero+2
|
||
|
;-
|
||
|
lda #74 |Org Y
|
||
|
sta [Ptr_PZero]
|
||
|
ldy #2
|
||
|
lda #116 |Org X
|
||
|
sta [Ptr_PZero],y
|
||
|
ldy #4
|
||
|
lda #$0F02 |Mode Copie et transparence
|
||
|
sta [Ptr_Pzero],y
|
||
|
;-
|
||
|
lda Ptr_PZero |Pointeur en debut de BitMap
|
||
|
clc
|
||
|
adc #6
|
||
|
sta Ptr_PZero
|
||
|
bcc SAdd_Sticker
|
||
|
inc Ptr_Pzero+2
|
||
|
;--
|
||
|
SAdd_Sticker jsr D_Hdl_Ficon |La Page D'icone
|
||
|
;--
|
||
|
PushWord #0 |Copie de la Page vers le Buffer
|
||
|
PushLong Ptr_FIcon |Copie le Rectangle
|
||
|
PushLong #Rect_Icone1
|
||
|
PushLong Ptr_Pzero
|
||
|
jsl CopyBuf
|
||
|
;--
|
||
|
jsr U_Hdl_FIcon |on libere les buffers
|
||
|
jsr U_Hdl_Sticker
|
||
|
;--
|
||
|
lda Frame_Sticker |icon select
|
||
|
sta Sticker_Select
|
||
|
ora #$0500 |+++ sticker
|
||
|
jsr Put_In_List |Selection dans la liste
|
||
|
lda Frame_Sticker
|
||
|
jsr Rest_Sticker
|
||
|
jsr Cal_RectSticker
|
||
|
jsr Copy_RectK
|
||
|
|
||
|
lda #1
|
||
|
sta >Top_Action
|
||
|
;--
|
||
|
FinNS jsr Del_Undo
|
||
|
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; DATA STICKER
|
||
|
;--------------------------------------
|
||
|
Load_What ds 2 |0 1 sticker :: 1 des stickers
|
||
|
|
||
|
NameSticker str 'Graphic.CGT'
|
||
|
NamePageStick str '1/Sticker/Sticker'
|
||
|
Num_sticker ds 2
|
||
|
|
||
|
Top_Rect9 ds 2
|
||
|
Rect_Stick_On ds 2
|
||
|
|
||
|
Tab_DestStkX dc i'14,116,218,14,116,218,14,116,218'
|
||
|
Tab_DestStkY dc i'17,17,17,72,72,72,127,127,127'
|
||
|
|
||
|
Dest_StkX ds 2
|
||
|
Dest_StkY ds 2
|
||
|
|
||
|
Plan_Sticker ds 2
|
||
|
Index_BStk ds 2
|
||
|
Index_BPlan ds 2
|
||
|
Bit_Stk ds 2
|
||
|
Poids_Stk ds 2
|
||
|
|
||
|
Tab_Bit_Stk dc i1'%00000001'
|
||
|
dc i1'%00000010'
|
||
|
dc i1'%00000100'
|
||
|
dc i1'%00001000'
|
||
|
dc i1'%00010000'
|
||
|
dc i1'%00100000'
|
||
|
dc i1'%01000000'
|
||
|
dc i1'%10000000'
|
||
|
|
||
|
Tab_Plan dc i1'%0001000,%00000001'
|
||
|
dc i1'%0010000,%00000010'
|
||
|
dc i1'%0100000,%00000100'
|
||
|
|
||
|
TabColK dc i1'$0f,$09,$07,$06,$04,$0A,$03,$0'
|
||
|
SrcRectK dc i'17,14,179,306'
|
||
|
;--------------------------------------
|
||
|
EndSticker ds 2
|
||
|
Ptr_SstickerW ds 4 |Ptr Fenetre
|
||
|
SKItemHit ds 2 |Item Selectionne
|
||
|
;--------------------------------------
|
||
|
ISelectK anop
|
||
|
dc i'20' | identification number
|
||
|
dc i'1,136,13,191' | display rectangle
|
||
|
dc i'ButtonItem' | item type
|
||
|
dc i4'SelectTxtK' | item descriptor
|
||
|
dc i'0' | item value
|
||
|
dc i'$FF00' | bit vector flag
|
||
|
dc i4'0' | color table pointer
|
||
|
|
||
|
ICancelK anop
|
||
|
dc i'21' | identification number
|
||
|
dc i'1,227,13,282' | display rectangle
|
||
|
dc i'ButtonItem' | item type
|
||
|
dc i4'CancelTxtK' | item descriptor
|
||
|
dc i'0' | item value
|
||
|
dc i'0' | bit vector flag
|
||
|
dc i4'0' | color table pointer
|
||
|
|
||
|
ISMCK anop
|
||
|
dc i'22' | identification number
|
||
|
dc i'180,8,195,156' | display rectangle
|
||
|
dc i'ButtonItem' | item type
|
||
|
dc i4'SMCTxtK' | item descriptor
|
||
|
dc i'0' | item value
|
||
|
dc i'0' | bit vector flag
|
||
|
dc i4'0' | color table pointer
|
||
|
|
||
|
IFPSDK anop
|
||
|
dc i'23' | identification number
|
||
|
dc i'180,164,195,312' | display rectangle
|
||
|
dc i'ButtonItem' | item type
|
||
|
dc i4'FPSDTxtK' | item descriptor
|
||
|
dc i'0' | item value
|
||
|
dc i'0' | bit vector flag
|
||
|
dc i4'0' | color table pointer
|
||
|
|
||
|
SPage anop
|
||
|
dc i'24' | identification number
|
||
|
dc i'17,14,179,306' | display rectangle
|
||
|
dc i'UserItem' | item type
|
||
|
dc i4'SpageProc' | item descriptor
|
||
|
dc i'0' | item value
|
||
|
dc i'0' | bit vector flag
|
||
|
dc i4'0' | color table pointer
|
||
|
|
||
|
SelectTxtK str 'Select'
|
||
|
CancelTxtK str 'Cancel'
|
||
|
SMCTxtK str 'See more choices'
|
||
|
FPSDTxtK str 'From Print Shop Disk'
|
||
|
|
||
|
TypeListFPSD dc i1'01,06'
|
||
|
TypeListSMC dc i1'01,$F8'
|
||
|
|
||
|
StickerTxt str 'Select a Sticker'
|
||
|
|
||
|
RectStk1 dc i'17,14,69,102'
|
||
|
RectStk2 dc i'17,116,69,204'
|
||
|
RectStk3 dc i'17,218,69,306'
|
||
|
|
||
|
RectStk4 dc i'72,14,124,102'
|
||
|
RectStk5 dc i'72,116,124,204'
|
||
|
RectStk6 dc i'72,218,124,306'
|
||
|
|
||
|
RectStk7 dc i'127,14,179,102'
|
||
|
RectStk8 dc i'127,116,179,204'
|
||
|
RectStk9 dc i'127,218,179,306'
|
||
|
|
||
|
TabRectStk ANOP
|
||
|
dc i4'RectStk1'
|
||
|
dc i4'RectStk2'
|
||
|
dc i4'RectStk3'
|
||
|
dc i4'RectStk4'
|
||
|
dc i4'RectStk5'
|
||
|
dc i4'RectStk6'
|
||
|
dc i4'RectStk7'
|
||
|
dc i4'RectStk8'
|
||
|
dc i4'RectStk9'
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Redraw_Sticker : Reaffichage des Stickers
|
||
|
;
|
||
|
;...............................................................
|
||
|
Redraw_Sticker START
|
||
|
Using GlobalData
|
||
|
;--
|
||
|
lda Frame_Sticker
|
||
|
bne ok
|
||
|
rts
|
||
|
;--
|
||
|
ok lda #1 |la 1er
|
||
|
sta ZFrame_Sticker
|
||
|
|
||
|
jsr D_Hdl_Sticker |le Buffer
|
||
|
|
||
|
lda Ptr_Sticker
|
||
|
sta Ptr_PZero
|
||
|
lda Ptr_Sticker+2
|
||
|
sta Ptr_PZero+2
|
||
|
;--
|
||
|
Loop jsr Put_Sticker |Affiche l'icone de Ptr_PZero
|
||
|
;--
|
||
|
lda Ptr_PZero |deplace le Pointeur
|
||
|
clc
|
||
|
adc Lg_StickerRecord
|
||
|
sta Ptr_PZero
|
||
|
lda Ptr_PZero+2
|
||
|
adc #0
|
||
|
sta Ptr_Pzero+2
|
||
|
;--
|
||
|
inc ZFrame_Sticker
|
||
|
|
||
|
lda ZFrame_Sticker
|
||
|
cmp Frame_Sticker
|
||
|
bcc Loop
|
||
|
beq Loop
|
||
|
;--
|
||
|
jsr U_Hdl_Sticker |Libere le Buffer
|
||
|
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; Put_Sticker : Affiche le sticker
|
||
|
;--------------------------------------
|
||
|
Put_Sticker ENTRY
|
||
|
|
||
|
lda [Ptr_PZero]
|
||
|
sta Rect_StickY0
|
||
|
clc
|
||
|
adc #Haut_Sticker
|
||
|
sta Rect_StickY1
|
||
|
|
||
|
ldy #2
|
||
|
lda [Ptr_Pzero],y
|
||
|
sta Rect_StickX0
|
||
|
clc
|
||
|
adc #Larg_Sticker
|
||
|
sta Rect_StickX1
|
||
|
|
||
|
lda Ptr_Pzero |Pointeur +6 (bitmap)
|
||
|
clc
|
||
|
adc #6
|
||
|
tax
|
||
|
lda Ptr_Pzero+2
|
||
|
adc #0
|
||
|
pha
|
||
|
txa
|
||
|
pha
|
||
|
PushLong #RectStickStd |Rectangle d'1 sticker
|
||
|
PushLong FondPtr |bitmap d'arrive
|
||
|
PushLong #Rect_Stick
|
||
|
ldy #4
|
||
|
lda [Ptr_Pzero],y
|
||
|
pha |Mode
|
||
|
jsl Put
|
||
|
|
||
|
rts
|
||
|
|
||
|
ZFrame_Sticker ds 2
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Test_In_Sticker : Test si Selection d'1 sticker
|
||
|
;
|
||
|
;...............................................................
|
||
|
Test_In_Sticker START
|
||
|
Using globalData
|
||
|
|
||
|
lda Frame_Sticker |Sticker ?
|
||
|
bne oui
|
||
|
clc
|
||
|
rts
|
||
|
|
||
|
oui lda Frame_Sticker |Le Neme Sticker
|
||
|
|
||
|
LOOP pha |Met le Sticker dans RECORD
|
||
|
;--
|
||
|
jsr Rest_Sticker1 |va chercher ptr_Sticker garni data
|
||
|
;--
|
||
|
jsr Test_In_Sticker1
|
||
|
bcs Inside
|
||
|
;--
|
||
|
pla
|
||
|
dec a
|
||
|
bne LOOP
|
||
|
clc |not INSIDE sticker
|
||
|
rts
|
||
|
;--
|
||
|
Inside pla |sticker Selectionnee
|
||
|
sec
|
||
|
rts
|
||
|
;--------------------------------------
|
||
|
; Test_In_Sticker1
|
||
|
;--------------------------------------
|
||
|
Test_In_Sticker1 ENTRY
|
||
|
jsr Cal_RectSticker |rect de la courante
|
||
|
;--
|
||
|
PushWord #0 |Inside
|
||
|
PushLong #EventWhere
|
||
|
PushLong #Rect_Stick
|
||
|
_PtInRect
|
||
|
pla
|
||
|
bne InSide1
|
||
|
clc
|
||
|
rts
|
||
|
;--
|
||
|
Inside1 sec
|
||
|
rts
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Cal_RectSticker : cadre de selection d'un sticker
|
||
|
;
|
||
|
;...............................................................
|
||
|
Cal_RectSticker START
|
||
|
Using GlobalData
|
||
|
|
||
|
ldy #Sticker_Y |COMPUTE RECT
|
||
|
lda [Ptr_BufStick],y
|
||
|
sta Rect_StickY0
|
||
|
clc
|
||
|
adc #Haut_Sticker
|
||
|
sta Rect_StickY1
|
||
|
|
||
|
ldy #Sticker_X
|
||
|
lda [Ptr_BufStick],y
|
||
|
sta Rect_StickX0
|
||
|
clc
|
||
|
adc #Larg_Sticker
|
||
|
sta Rect_StickX1
|
||
|
|
||
|
rts
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Rest_Sticker : va chercher le stick du buffer
|
||
|
;
|
||
|
;...............................................................
|
||
|
Rest_Sticker START
|
||
|
Using GlobalData
|
||
|
|
||
|
pha |numero dans Acc
|
||
|
jsr D_Hdl_Sticker |coince
|
||
|
pla
|
||
|
|
||
|
PushLong #0
|
||
|
pha |n% sticker
|
||
|
PushWord lg_StickerRecord |lg d'un Record
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
dec a
|
||
|
dec a
|
||
|
tay
|
||
|
|
||
|
ldx lg_StickerRecord
|
||
|
dex
|
||
|
dex
|
||
|
;--
|
||
|
LOOP lda [Ptr_Sticker],y
|
||
|
phy
|
||
|
txy
|
||
|
sta [Ptr_BufStick],y
|
||
|
ply
|
||
|
|
||
|
dey
|
||
|
dey
|
||
|
dex
|
||
|
dex
|
||
|
bpl LOOP
|
||
|
;--
|
||
|
jsr U_Hdl_Sticker |libere
|
||
|
|
||
|
rts
|
||
|
;-----
|
||
|
Rest_Sticker1 ENTRY
|
||
|
|
||
|
pha |numero dans Acc
|
||
|
jsr D_Hdl_Sticker |coince
|
||
|
pla
|
||
|
|
||
|
PushLong #0
|
||
|
dec a
|
||
|
pha |n% sticker
|
||
|
PushWord lg_StickerRecord |lg d'un Record
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
tay
|
||
|
|
||
|
ldx #0
|
||
|
;--
|
||
|
LOOP1 lda [Ptr_Sticker],y
|
||
|
phy
|
||
|
txy
|
||
|
sta [Ptr_BufStick],y
|
||
|
ply
|
||
|
|
||
|
iny
|
||
|
iny
|
||
|
inx
|
||
|
inx
|
||
|
cpx #6
|
||
|
bcc LOOP1
|
||
|
;--
|
||
|
jsr U_Hdl_Sticker |libere
|
||
|
|
||
|
rts
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Sticker_Last : l'Sticker Select passe en dernier
|
||
|
;
|
||
|
;...............................................................
|
||
|
Sticker_Last START
|
||
|
Using GlobalData
|
||
|
;--
|
||
|
sta tempmove
|
||
|
lda Frame_Sticker
|
||
|
cmp tempmove |pas la derniere
|
||
|
bne oui
|
||
|
brl fini
|
||
|
;--
|
||
|
oui lda tempmove
|
||
|
jsr Rest_Sticker |sauve l'sticker
|
||
|
|
||
|
lda tempmove
|
||
|
dec a
|
||
|
PushLong #0
|
||
|
pha
|
||
|
PushWord lg_StickerRecord
|
||
|
_Multiply
|
||
|
ply
|
||
|
plx
|
||
|
sty offsetmove
|
||
|
|
||
|
lda tempmove |calcul du move
|
||
|
PushLong #0
|
||
|
pha
|
||
|
PushWord lg_StickerRecord
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
sta source_adr
|
||
|
|
||
|
lda Frame_Sticker
|
||
|
sec
|
||
|
sbc tempmove
|
||
|
PushLong #0
|
||
|
pha
|
||
|
PushWord lg_StickerRecord
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
sta nbre_byte
|
||
|
|
||
|
jsr D_Hdl_Sticker |Deref
|
||
|
|
||
|
loop ldy source_adr |move de droite a gauche
|
||
|
ldx offsetmove
|
||
|
rloop lda [Ptr_Sticker],y
|
||
|
phy
|
||
|
txy
|
||
|
sta [Ptr_Sticker],y
|
||
|
ply
|
||
|
inx
|
||
|
inx
|
||
|
iny
|
||
|
iny
|
||
|
dec nbre_byte
|
||
|
dec nbre_byte
|
||
|
bne rloop
|
||
|
|
||
|
jsr U_Hdl_Sticker |Unlock
|
||
|
|
||
|
lda Frame_Sticker
|
||
|
jsr Copie_Sticker
|
||
|
|
||
|
fini lda Frame_Sticker |la select = la derniere
|
||
|
sta Sticker_Select
|
||
|
|
||
|
rts
|
||
|
|
||
|
tempmove ds 2
|
||
|
offsetmove ds 2
|
||
|
source_adr ds 2
|
||
|
nbre_byte ds 2
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Copie_Sticker : Copie Sticker_Record -> Buffer Sticker
|
||
|
; ACC=N% de STICKER
|
||
|
;...............................................................
|
||
|
Copie_Sticker START
|
||
|
Using GlobalData
|
||
|
|
||
|
pha
|
||
|
jsr D_Hdl_Sticker |Deref
|
||
|
pla
|
||
|
|
||
|
PushLong #0
|
||
|
Pha |n% de Shape
|
||
|
PushWord lg_StickerRecord |taille d'1 Shape
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
dec a
|
||
|
dec a
|
||
|
tay
|
||
|
|
||
|
ldx lg_StickerRecord
|
||
|
dex
|
||
|
dex
|
||
|
|
||
|
LOOP phy
|
||
|
txy
|
||
|
lda [Ptr_BufStick],y
|
||
|
ply
|
||
|
sta [Ptr_Sticker],y
|
||
|
dey
|
||
|
dey
|
||
|
dex
|
||
|
dex
|
||
|
bpl LOOP
|
||
|
;--
|
||
|
jsr U_Hdl_Sticker |UnLock
|
||
|
|
||
|
rts
|
||
|
;--------
|
||
|
Copie_sticker1 ENTRY
|
||
|
|
||
|
pha
|
||
|
jsr D_Hdl_Sticker |Deref
|
||
|
pla
|
||
|
|
||
|
PushLong #0
|
||
|
dec a
|
||
|
Pha |n% de Shape
|
||
|
PushWord lg_StickerRecord |taille d'1 Shape
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
tay
|
||
|
|
||
|
ldx #0
|
||
|
|
||
|
LOOP1 phy
|
||
|
txy
|
||
|
lda [Ptr_BufStick],y
|
||
|
ply
|
||
|
sta [Ptr_Sticker],y
|
||
|
iny
|
||
|
iny
|
||
|
inx
|
||
|
inx
|
||
|
cpx #6
|
||
|
bcc LOOP1
|
||
|
;--
|
||
|
jsr U_Hdl_Sticker |UnLock
|
||
|
|
||
|
rts
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; draw_RectSticker : affiche la selection sticker eor
|
||
|
;
|
||
|
;...............................................................
|
||
|
Draw_RectSticker START
|
||
|
Using GlobalData
|
||
|
|
||
|
PushWord #0 |sauve mode
|
||
|
_GetPenMode
|
||
|
|
||
|
PushWord #15
|
||
|
_SetSolidPenPat
|
||
|
|
||
|
PushWord #2 |eor
|
||
|
_SetPenMode
|
||
|
|
||
|
PushLong #Rect_Stick
|
||
|
_FrameRect
|
||
|
|
||
|
_SetPenMode
|
||
|
|
||
|
rts
|
||
|
|
||
|
END
|
||
|
;...............................................................
|
||
|
;
|
||
|
; Resize_Sticker : Ajuste La Taille Du Buffer des stickers
|
||
|
;
|
||
|
;...............................................................
|
||
|
Resize_Sticker START
|
||
|
Using GlobalData
|
||
|
|
||
|
lda Frame_Sticker |des stickers
|
||
|
bpl oui
|
||
|
|
||
|
stz Frame_Sticker |alors zero
|
||
|
|
||
|
oui PushLong #0
|
||
|
PushWord Frame_Sticker |nb de Shape
|
||
|
PushWord lg_StickerRecord |taille d'1 Shape
|
||
|
_Multiply
|
||
|
pla
|
||
|
plx
|
||
|
cmp #0
|
||
|
bne Size
|
||
|
|
||
|
lda #1 |au moins 1 octet
|
||
|
;--
|
||
|
Size Pea $0000
|
||
|
pha
|
||
|
PushLong Hdl_sticker
|
||
|
_SetHandleSize
|
||
|
;--
|
||
|
EndAs rts
|
||
|
|
||
|
END
|