mirror of
https://github.com/antoinevignau/source.git
synced 2024-06-17 13:29:35 +00:00
v+1
This commit is contained in:
parent
3abf70a292
commit
e25f1b7de4
Binary file not shown.
|
@ -78,6 +78,7 @@ PROCEDURE vigil(max_x%,max_y%,max_xx%,max_yy%,sauvegarde!)
|
|||
HIDEM !ON REFAIT DISPARAITRE LE CURSEUR
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE teste_fin
|
||||
'
|
||||
IF paragraphes_lus%=pointeur_paragraphes%-1
|
||||
|
@ -85,6 +86,7 @@ PROCEDURE teste_fin
|
|||
ENDIF
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE demande_objet
|
||||
ARRAYFILL icone_objets!(),FALSE !RAZ DE CHAQUE INDICATEUR D'AFFICHAGE
|
||||
'
|
||||
|
@ -123,6 +125,7 @@ PROCEDURE demande_objet
|
|||
UNTIL objet%<>0 !ON CONTINUE JUSQU'A TEMPS QUE LA SOURIS DESIGNE UNE ICONE
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE demande_peche
|
||||
'
|
||||
ARRAYFILL icone_peches!(),FALSE !RAZ DE CHAQUE INDICATEUR D'AFFICHAGE
|
||||
|
@ -171,6 +174,7 @@ PROCEDURE demande_peche
|
|||
ENDIF
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE recherche_references
|
||||
'
|
||||
CLR i%
|
||||
|
@ -185,6 +189,7 @@ PROCEDURE recherche_references
|
|||
paragraphe%=i% !SINON C'EST CE TEXTE QU'ON LIRA
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE affiche_image
|
||||
IF ancien_objet%=objet% !SI L'OBJET CHOISI EST LE MEME QU'AVANT
|
||||
palette(palette_image$)
|
||||
|
@ -232,6 +237,7 @@ PROCEDURE sauvegarde
|
|||
fin
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE chargement
|
||||
'
|
||||
LOCAL a$,b$,fichier$
|
||||
|
@ -265,6 +271,7 @@ PROCEDURE chargement
|
|||
ENDIF
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE the_end
|
||||
CLS
|
||||
fichier$="textes\page.sav"
|
||||
|
@ -296,6 +303,7 @@ PROCEDURE pre_scrolling
|
|||
'
|
||||
scrolling
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE scrolling
|
||||
LOCAL a$,mouvement%,souris_motif%
|
||||
'
|
||||
|
@ -405,6 +413,7 @@ PROCEDURE init
|
|||
init_routines !ON CHARGE LES ROUTINES SON ET TINY
|
||||
xb2%=XBIOS(2) !ADRESSE INVARIABLE DE L'ECRAN (POUR LE SCROLLING...)
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init2
|
||||
init_objets
|
||||
init_peches
|
||||
|
@ -417,12 +426,14 @@ PROCEDURE init2
|
|||
chargement
|
||||
mouse_on
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_resolution
|
||||
IF XBIOS(4)<>0 !SI ON EST PAS EN BASSE RESOLUTION...
|
||||
ALERT 3,"basse r‚solution,| scrogneugneu!!",1,"fichtre!",a%
|
||||
END
|
||||
ENDIF
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_indicateurs
|
||||
nombre_indicateurs%=30 !NOMBRE MAXI D'INDICATEURS
|
||||
pointeur_indicateurs%=0 !CLEAR DU NOMBRE D'INDICATEURS
|
||||
|
@ -439,6 +450,7 @@ PROCEDURE init_indicateurs
|
|||
indicateur!(0)=TRUE !INDICATEUR VIRTUEL TOUJOURS POSITIF
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_objets
|
||||
nombre_objets%=8 !NOMBRE D'OBJETS
|
||||
DIM objet$(nombre_objets%) !NOM DE CHAQUE OBJET
|
||||
|
@ -448,6 +460,7 @@ PROCEDURE init_objets
|
|||
NEXT i%
|
||||
CLR ancien_objet%
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_peches
|
||||
nombre_peches%=7 !NOMBRE DE PECHES
|
||||
DIM peche$(nombre_peches%+1) !NOM DE CHAQUE PECHE (+1 POUR L'INDIC SUITE...)
|
||||
|
@ -456,6 +469,7 @@ PROCEDURE init_peches
|
|||
READ peche$(i%)
|
||||
NEXT i%
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_icones
|
||||
'
|
||||
DIM icone_objets!(nombre_objets%) !ICONES ALLUM<55>ES OU ETEINTES
|
||||
|
@ -511,9 +525,11 @@ PROCEDURE init_icones
|
|||
palette_bureau$=palette$ !ON MEMORISE LA PALETTE DE L'IMAGE...
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_routines
|
||||
INLINE routine_decomp%,5000
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_fenetres
|
||||
INC nombre_objets%
|
||||
' !COORDONN<4E>ES DES FENETRES DE TEXTE (UNE PAR IMAGE)
|
||||
|
@ -528,12 +544,14 @@ PROCEDURE init_fenetres
|
|||
'
|
||||
DEC nombre_objets% !ON RAMENE LE NOMBRE D'OBJETS A 8 (9=FIN)
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_souris
|
||||
INLINE souris%,74
|
||||
FOR i%=0 TO 73
|
||||
souris$=souris$+CHR$(PEEK(souris%+i%))
|
||||
NEXT i%
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE datas_init
|
||||
fenetres:
|
||||
DATA 10,100,310,190
|
||||
|
@ -606,6 +624,7 @@ PROCEDURE init_texte
|
|||
init_indicateurs_texte !ET ON PASSE A LA SUITE
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_indicateurs_texte
|
||||
'
|
||||
LOCAL i%
|
||||
|
@ -684,6 +703,7 @@ PROCEDURE init_indicateurs_texte
|
|||
NEXT i%
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE lookindex
|
||||
j1%=INSTR(index$,"œ",j%) !ON CHERCHE LE PROCHAIN PSEUDO RETURN ("œ")
|
||||
IF j1%<>0 AND j1%<>LEN(index$) !SI ON EST PAS A LA FIN DE LA CHAINE
|
||||
|
@ -815,6 +835,7 @@ PROCEDURE shoot_text
|
|||
UNTIL TIMER>temps+200
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE shoot_ligne
|
||||
LOCAL i%
|
||||
FOR i%=0 TO 8 !on scanne toute la hauteur de la ligne
|
||||
|
@ -823,6 +844,7 @@ PROCEDURE shoot_ligne
|
|||
NEXT i%
|
||||
CLS !puis on efface l'‚cran
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE cree_fenetre(objet%,paragraphe%)
|
||||
LOCAL i%
|
||||
x%=fenetre_x%(objet%) !ON PREND LES COORDONNEES CORRESPONDANT A L'OBJET CHOISI
|
||||
|
@ -846,6 +868,7 @@ PROCEDURE cree_fenetre(objet%,paragraphe%)
|
|||
display_text(i%,y%+1+i%) !ET ON AFFICHE LES PREMIERES LIGNES DU TEXTE
|
||||
NEXT i%
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE display_text(ligne%,niveau%)
|
||||
PUT x%+10,niveau%,bloc_text$(ligne%),12 !on l'affiche … l'endroit voulu
|
||||
RETURN
|
||||
|
@ -860,10 +883,12 @@ PROCEDURE ice_load(fichier$)
|
|||
palette$=SPACE$(32)
|
||||
BMOVE adresse_image%+2,VARPTR(palette$),32
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE ice_disp(adresse_image%)
|
||||
BMOVE adresse_image%+34,XBIOS(3),32000
|
||||
~MFREE(adresse_image%)
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE palette(palette$)
|
||||
~XBIOS(6,L:VARPTR(palette$))
|
||||
RETURN
|
||||
|
@ -874,24 +899,29 @@ PROCEDURE hide_screen
|
|||
~XBIOS(5,L:ecran%,L:-1,L:-1)!ON CACHE CE QUI SE PASSE ¶ L'<27>CRAN
|
||||
VSYNC
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE show_screen
|
||||
~XBIOS(5,L:XBIOS(2),L:XBIOS(2),W:-1) !ON R<>TABLIT L'AFFICHAGE NORMAL
|
||||
~MFREE(ecran%) !ON FERME LE BUFFER
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE hide_screen2
|
||||
ecran2%=MALLOC(32000) !on ouvre un buffer de la taille de l'‚cran
|
||||
BMOVE XBIOS(3),ecran2%,32000 !on copie l'‚cran dedans
|
||||
~XBIOS(5,L:-1,L:ecran2%,L:-1)!on cache ce qui se passe … l'‚cran
|
||||
VSYNC
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE show_screen2
|
||||
~XBIOS(5,L:xb2%,L:xb2%,W:-1) !on r‚tablit l'affiche normal
|
||||
~MFREE(ecran2%) !on ferme le buffer
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE mouse_on
|
||||
OUT 4,8
|
||||
DEFMOUSE souris$
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE mouse_off
|
||||
OUT 4,18
|
||||
HIDEM
|
||||
|
@ -911,6 +941,7 @@ PROCEDURE musique
|
|||
@fin_musique
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE init_musique
|
||||
son%=10 !NOMBRE MAXI DE SAMPLES
|
||||
SPOKE &H484,PEEK(&H484) AND &HFE !PAS DE BIP CLAVIER
|
||||
|
@ -924,6 +955,7 @@ PROCEDURE init_musique
|
|||
SETCOLOR 0,0,0,0
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE rythme(rythme%)
|
||||
'
|
||||
FOR i%=10 DOWNTO 1 !RAZ DES BUFFERS CONTENANT LES SAMPLES
|
||||
|
@ -949,6 +981,7 @@ PROCEDURE rythme(rythme%)
|
|||
~MFREE(ancienne_adresse%)
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE charge_son
|
||||
REPEAT
|
||||
READ nom_son$,frequence_son%(son%+1),sous_titre1$(son%+1),sous_titre2$(son%+1)
|
||||
|
@ -965,6 +998,7 @@ PROCEDURE charge_son
|
|||
UNTIL nom_son$="FIN"
|
||||
'
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE clavier_sonore
|
||||
REPEAT
|
||||
UNTIL INKEY$=""
|
||||
|
@ -999,12 +1033,15 @@ PROCEDURE clavier_sonore
|
|||
REPEAT !ON VIDE LE BUFFER CLAVIER
|
||||
UNTIL INKEY$=""
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE mix(numero_son%)
|
||||
~C:routine_decomp%(L:-VARPTR(son$(numero_son%)),L:LEN(son$(numero_son%)),W:frequence_son%(numero_son%),W:100)
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE stop_sample
|
||||
~C:routine_decomp%(L:-1) !FORCAGE DE LA FIN DU SAMPLE
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE fin_musique
|
||||
@stop_sample
|
||||
~MFREE(adresse_rythme%)
|
||||
|
@ -1012,6 +1049,7 @@ PROCEDURE fin_musique
|
|||
ERASE frequence_son%()
|
||||
ERASE sous_titre$()
|
||||
RETURN
|
||||
'
|
||||
PROCEDURE data_fichiers_musique
|
||||
musique:
|
||||
DATA 1cemonsi,7500,"ce monsieur!",""
|
||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -71,110 +71,99 @@ tblUPPER hex 000102030405060708090A0B0C0D0E0F
|
|||
|
||||
DEBUT_DATA = *
|
||||
|
||||
*--- Mes variables
|
||||
|
||||
fgTHEEND ds 2 ; LOGO
|
||||
i ds 2
|
||||
index ds 2
|
||||
theX ds 2
|
||||
theY ds 2
|
||||
|
||||
*--- Variables du jeu
|
||||
|
||||
nombre_indicateurs = 30 ; NOMBRE MAXI D'INDICATEURS
|
||||
pointeur_indicateurs = 0 ; CLEAR DU NOMBRE D'INDICATEURS
|
||||
nombre_paragraphes = 110 ; NOMBRE MAXI DE TEXTES
|
||||
indicateur$ ds nombre_indicateurs ; NOM DES INDICATEURS UTILISES PAR MOI
|
||||
indicateur! ds nombre_indicateurs ; INDICATEUR EN LUI-MEME
|
||||
|
||||
indicateurTEXT ds nombre_indicateurs ; NOM DES INDICATEURS UTILISES PAR MOI
|
||||
indicateur ds nombre_indicateurs ; INDICATEUR EN LUI-MEME
|
||||
paragraphe_lu ds nombre_paragraphes
|
||||
|
||||
indicateur_paragraphes% ds nombre_paragraphes ; NUMERO DE L'INDIC CR<43>E A CHAQUE TEXTE
|
||||
indicateur_paragraphes_prealables% ds nombre_paragraphes ; NUMERO DE L'INDIC NECESSAIRE POUR LIRE CE TEXTE
|
||||
|
||||
* LOGO indicateur!(0)=TRUE !INDICATEUR VIRTUEL TOUJOURS POSITIF
|
||||
indicateur_paragraphes ds nombre_paragraphes ; NUMERO DE L'INDIC CR<43>E A CHAQUE TEXTE
|
||||
indicateur_paragraphes_prealables ds nombre_paragraphes ; NUMERO DE L'INDIC NECESSAIRE POUR LIRE CE TEXTE
|
||||
|
||||
*---
|
||||
|
||||
nombre_objets = 8 ; NOMBRE D'OBJETS
|
||||
objet$ ds nombre_objets ; !NOM DE CHAQUE OBJET
|
||||
icone_objets ds nombre_objets ; ICONES ALLUM<55>ES OU ETEINTES
|
||||
icone_peches ds nombre_peches+1 ; (+1 POUR L'INDICATEUR DE SUITE...)
|
||||
|
||||
*---
|
||||
|
||||
nombre_peches = 7 ; NOMBRE DE PECHES
|
||||
peche$ ds nombre_peches+1 ; NOM DE CHAQUE PECHE (+1 POUR L'INDIC SUITE...)
|
||||
fenetre_x dw 10,10,10,120,10,10,10,10,10
|
||||
fenetre_y dw 100,100,100,10,100,100,100,10,100
|
||||
fenetre_xx dw 310,310,310,310,310,310,310,200,310
|
||||
fenetre_yy dw 190,190,190,190,190,190,190,190,190
|
||||
|
||||
*---
|
||||
|
||||
icone_objets! ds nombre_objets ; ICONES ALLUM<55>ES OU ETEINTES
|
||||
icone_peches! ds nombre_peches+1 ; (+1 POUR L'INDICATEUR DE SUITE...)
|
||||
nombre_objets = 8 ; NOMBRE D'OBJETS
|
||||
|
||||
icone_objets ds nombre_objets ; BLOCS GRAPHIQUES DES ICONES
|
||||
icone_peches ds nombre_peches
|
||||
objetTEXT da objetSTR1 ; !NOM DE CHAQUE OBJET
|
||||
da objetSTR2
|
||||
da objetSTR3
|
||||
da objetSTR4
|
||||
da objetSTR5
|
||||
da objetSTR6
|
||||
da objetSTR7
|
||||
da objetSTR8
|
||||
da objetSTR9
|
||||
|
||||
objet_x ds nombre_objets ; COORDONN<4E>ES DES ICONES DES OBJETS
|
||||
objet_y ds nombre_objets
|
||||
objet_xx ds nombre_objets
|
||||
objet_yy ds nombre_objets
|
||||
objetSTR1 asc "LUNETTES"
|
||||
objetSTR2 asc "CUILLERE"
|
||||
objetSTR3 asc "FLEUR"
|
||||
objetSTR4 asc "CARNET"
|
||||
objetSTR5 asc "DICO"
|
||||
objetSTR6 asc "BIJOUX"
|
||||
objetSTR7 asc "CLES"
|
||||
objetSTR8 asc "ARGENT"
|
||||
objetSTR9 asc "FIN"
|
||||
|
||||
peche_x ds nombre_peches ; COORDONN<4E>E DES ICONES DES PECHES
|
||||
peche_y ds nombre_peches
|
||||
peche_xx ds nombre_peches
|
||||
peche_yy ds nombre_peches
|
||||
ancien_objet ds 2
|
||||
|
||||
objet_x dw 238,222,195,0,27,131,276,133
|
||||
objet_y dw 51,110,0,17,55,32,19,69
|
||||
objet_xx dw 283,268,266,57,106,178,319,188
|
||||
objet_yy dw 88,151,39,54,103,64,50,101
|
||||
|
||||
*---
|
||||
|
||||
fenetre_x ds nombre_objets
|
||||
fenetre_y ds nombre_objets
|
||||
fenetre_xx ds nombre_objets
|
||||
fenetre_yy ds nombre_objets
|
||||
nombre_peches = 7 ; NOMBRE DE PECHES
|
||||
|
||||
*---
|
||||
pecheTEXT da pecheSTR1 ; NOM DE CHAQUE PECHE (+1 POUR L'INDIC SUITE...)
|
||||
da pecheSTR2
|
||||
da pecheSTR3
|
||||
da pecheSTR4
|
||||
da pecheSTR5
|
||||
da pecheSTR6
|
||||
da pecheSTR7
|
||||
da pecheSTR8
|
||||
|
||||
fenetres
|
||||
dw 10,100,310,190
|
||||
dw 10,100,310,190
|
||||
dw 10,100,310,190
|
||||
dw 120,10,310,190
|
||||
dw 10,100,310,190
|
||||
dw 10,100,310,190
|
||||
dw 10,100,310,190
|
||||
dw 10,10,200,190
|
||||
dw 10,100,310,190
|
||||
pecheSTR1 asc "ORGUEIL"
|
||||
pecheSTR2 asc "AVARICE"
|
||||
pecheSTR3 asc "GOURMANDISE"
|
||||
pecheSTR4 asc "ENVIE"
|
||||
pecheSTR5 asc "LUXURE"
|
||||
pecheSTR6 asc "COLERE"
|
||||
pecheSTR7 asc "PARESSE"
|
||||
pecheSTR8 asc "suite"
|
||||
|
||||
objets
|
||||
asc "LUNETTES"
|
||||
asc "CUILLERE"
|
||||
asc "FLEUR"
|
||||
asc "CARNET"
|
||||
asc "DICO"
|
||||
asc "BIJOUX"
|
||||
asc "CLES"
|
||||
asc "ARGENT"
|
||||
asc "FIN"
|
||||
|
||||
peches
|
||||
asc "ORGUEIL"
|
||||
asc "AVARICE"
|
||||
asc "GOURMANDISE"
|
||||
asc "ENVIE"
|
||||
asc "LUXURE"
|
||||
asc "COLERE"
|
||||
asc "PARESSE"
|
||||
asc "suite"
|
||||
|
||||
coordonnees_objets
|
||||
dw 238,51,283,88
|
||||
dw 222,110,268,151
|
||||
dw 195,0,266,39
|
||||
dw 0,17,57,54
|
||||
dw 27,55,106,103
|
||||
dw 131,32,178,64
|
||||
dw 276,19,319,50
|
||||
dw 133,69,188,101
|
||||
|
||||
coordonnees_peches
|
||||
dw 184,162,227,199
|
||||
dw 0,162,43,199
|
||||
dw 46,162,89,199
|
||||
dw 276,162,319,199
|
||||
dw 92,162,135,199
|
||||
dw 138,162,181,199
|
||||
dw 230,162,273,199
|
||||
peche_x dw 184,0,46,276,92,138,230
|
||||
peche_y dw 162,162,162,162,162,162,162
|
||||
peche_xx dw 227,43,89,319,135,181,273
|
||||
peche_yy dw 199,199,199,199,199,199,199
|
||||
|
||||
*---
|
||||
|
||||
bloc_texte ds 2000
|
||||
*texte ds 110000
|
||||
mot ds 128
|
||||
|
||||
*---
|
||||
|
|
|
@ -19,6 +19,183 @@
|
|||
jsr carre
|
||||
eom
|
||||
|
||||
@t mac
|
||||
lda ]1
|
||||
ldy ]2
|
||||
jsr t
|
||||
eom
|
||||
|
||||
@cree_fenetre mac
|
||||
lda ]1
|
||||
ldx ]2
|
||||
jsr cree_fenetre
|
||||
eom
|
||||
|
||||
*-----------------------
|
||||
* DATA_ERROR - OK
|
||||
*-----------------------
|
||||
* data_error
|
||||
|
||||
data_error pha
|
||||
PushLong #pgmSTR1
|
||||
PushLong #pgmSTR2
|
||||
PushLong #errSTR3
|
||||
PushLong #errSTR2
|
||||
_TLTextMountVolume
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
* LOAD_TEXTE - OK
|
||||
*-----------------------
|
||||
* load_texte
|
||||
|
||||
load_texte
|
||||
cmp #nombre_objets+1
|
||||
bcc lt_1
|
||||
rts
|
||||
lt_1 cmp #0
|
||||
bne lt_2
|
||||
brl data_error
|
||||
|
||||
lt_2 sep #$20
|
||||
ora #'0'
|
||||
sta pTXT+22
|
||||
rep #$20
|
||||
|
||||
*---
|
||||
|
||||
lda #pTXT
|
||||
sta proOPEN+4 ; filename
|
||||
|
||||
jsl GSOS
|
||||
dw $2010
|
||||
adrl proOPEN
|
||||
bcs lt_err2
|
||||
|
||||
lda proOPEN+2
|
||||
sta proREAD+2
|
||||
sta proCLOSE+2
|
||||
|
||||
ldy proEOF
|
||||
sty proREAD+8
|
||||
ldx proEOF+2
|
||||
stx proREAD+10
|
||||
|
||||
pha
|
||||
pha
|
||||
phx
|
||||
phy
|
||||
PushWord myID
|
||||
PushWord #%11000000_00001100
|
||||
PushLong #0
|
||||
_NewHandle
|
||||
phd
|
||||
tsc
|
||||
tcd
|
||||
lda index
|
||||
dec
|
||||
asl
|
||||
asl
|
||||
tax
|
||||
lda [3]
|
||||
sta ptrTXT1,x
|
||||
sta proREAD+4
|
||||
ldy #2
|
||||
lda [3],y
|
||||
sta ptrTXT1+2,x
|
||||
sta proREAD+6
|
||||
pld
|
||||
pla
|
||||
pla
|
||||
bcs lt_err1
|
||||
|
||||
jsl GSOS
|
||||
dw $2012
|
||||
adrl proREAD
|
||||
|
||||
lt_err1 jsl GSOS
|
||||
dw $2014
|
||||
adrl proCLOSE
|
||||
clc
|
||||
lt_err2 rts
|
||||
|
||||
*-----------------------
|
||||
* LOAD_REFERENCE - OK
|
||||
*-----------------------
|
||||
* load_reference
|
||||
|
||||
load_reference
|
||||
cmp #nombre_objets+1
|
||||
bcc lr_1
|
||||
rts
|
||||
lr_1 cmp #0
|
||||
bne lr_2
|
||||
brl data_error
|
||||
|
||||
lr_2 sep #$20
|
||||
ora #'0'
|
||||
sta pREF+22
|
||||
rep #$20
|
||||
|
||||
*---
|
||||
|
||||
lda #pREF
|
||||
sta proOPEN+4 ; filename
|
||||
|
||||
jsl GSOS
|
||||
dw $2010
|
||||
adrl proOPEN
|
||||
bcs lr_err2
|
||||
|
||||
lda proOPEN+2
|
||||
sta proREAD+2
|
||||
sta proCLOSE+2
|
||||
|
||||
ldy proEOF
|
||||
sty proREAD+8
|
||||
ldx proEOF+2
|
||||
stx proREAD+10
|
||||
|
||||
pha
|
||||
pha
|
||||
phx
|
||||
phy
|
||||
PushWord myID
|
||||
PushWord #%11000000_00001100
|
||||
PushLong #0
|
||||
_NewHandle
|
||||
phd
|
||||
tsc
|
||||
tcd
|
||||
lda index
|
||||
dec
|
||||
asl
|
||||
asl
|
||||
tax
|
||||
lda [3]
|
||||
sta ptrREF1,x
|
||||
sta proREAD+4
|
||||
ldy #2
|
||||
lda [3],y
|
||||
sta ptrREF1+2,x
|
||||
sta proREAD+6
|
||||
pld
|
||||
pla
|
||||
pla
|
||||
bcs lr_err1
|
||||
|
||||
jsl GSOS
|
||||
dw $2012
|
||||
adrl proREAD
|
||||
|
||||
lr_err1 jsl GSOS
|
||||
dw $2014
|
||||
adrl proCLOSE
|
||||
clc
|
||||
lr_err2 rts
|
||||
|
||||
*-----------------------
|
||||
* GESTION DES ICONES
|
||||
*-----------------------
|
||||
|
@ -31,16 +208,16 @@ test_icone
|
|||
asl
|
||||
tax
|
||||
lda taskWHERE+2 ; compare le X
|
||||
cmp coordonnees_peches,x
|
||||
cmp peche_x,x
|
||||
bcc icone_ko
|
||||
lda coordonnees_peches+4,x
|
||||
lda peche_xx,x
|
||||
cmp taskWHERE+2
|
||||
bcc icone_ko
|
||||
|
||||
lda taskWHERE ; et le Y
|
||||
cmp coordonnees_peches+2,x
|
||||
cmp peche_y,x
|
||||
bcc icone_ko
|
||||
lda coordonnees_peches+6,x
|
||||
lda peche_yy,x
|
||||
cmp taskWHERE
|
||||
bcc icone_ko
|
||||
|
||||
|
@ -90,15 +267,15 @@ set_icone txa
|
|||
asl
|
||||
asl ; because we are 16-bit
|
||||
tax
|
||||
lda coordonnees_peches+2,x
|
||||
lda peche_y,x
|
||||
sta iconToSourceRect
|
||||
sta iconToDestPoint
|
||||
lda coordonnees_peches,x
|
||||
lda peche_x,x
|
||||
sta iconToSourceRect+2
|
||||
sta iconToDestPoint+2
|
||||
lda coordonnees_peches+6,x
|
||||
lda peche_yy,x
|
||||
sta iconToSourceRect+4
|
||||
lda coordonnees_peches+4,x
|
||||
lda peche_xx,x
|
||||
sta iconToSourceRect+6
|
||||
rts
|
||||
|
||||
|
@ -177,7 +354,7 @@ st_setit sta saveLANGUAGE
|
|||
tax
|
||||
lda tblLANG,x
|
||||
sta pREF+16
|
||||
sta pTEXTES+16
|
||||
sta pTXT+16
|
||||
|
||||
lda #pREF ; check file exists
|
||||
sta proOPEN+4
|
||||
|
@ -284,31 +461,53 @@ affiche_image
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* SAUVEGARDE - OK
|
||||
*-----------------------
|
||||
* sauvegarde
|
||||
|
||||
sauvegarde
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* CHARGEMENT - OK
|
||||
*-----------------------
|
||||
* chargement
|
||||
|
||||
chargement
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* THE_END - OK
|
||||
*-----------------------
|
||||
* the_end
|
||||
|
||||
the_end
|
||||
@cree_fenetre #9;pointeur_paragraphes
|
||||
jsr pre_scrolling
|
||||
|
||||
PushWord #0
|
||||
_ClearScreen
|
||||
|
||||
lda #TRUE
|
||||
sta fgTHEEND
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* PRE_SCROLLING
|
||||
*-----------------------
|
||||
* pre_scrolling
|
||||
|
||||
pre_scrolling
|
||||
sep #$20
|
||||
ldx paragraphe
|
||||
lda #TRUE
|
||||
sta paragraphe_lu,x
|
||||
rep #$20
|
||||
|
||||
inc paragraphes_lus
|
||||
|
||||
* LOGO
|
||||
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
|
@ -326,94 +525,174 @@ verif
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT - OK
|
||||
*-----------------------
|
||||
* init
|
||||
|
||||
init
|
||||
rts
|
||||
init PushWord #0
|
||||
_ClearScreen
|
||||
|
||||
jsr init_resolution
|
||||
jsr mouse_off
|
||||
jmp init_routines
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT2 - OK
|
||||
*-----------------------
|
||||
|
||||
init2
|
||||
rts
|
||||
init2 jsr init_objets
|
||||
jsr init_peches
|
||||
jsr init_icones
|
||||
jsr init_indicateurs
|
||||
jsr init_fenetres
|
||||
jsr init_souris
|
||||
jsr init_texte
|
||||
jsr chargement
|
||||
jmp mouse_on
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_RESOLUTION - OK
|
||||
*-----------------------
|
||||
|
||||
init_resolution
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_INDICATEURS - OK
|
||||
*-----------------------
|
||||
* init_indicateurs
|
||||
|
||||
init_indicateurs
|
||||
sep #$20
|
||||
ldx #0
|
||||
]lp stz indicateurTEXT,x
|
||||
stz indicateur,x
|
||||
inx
|
||||
cpx #nombre_indicateurs
|
||||
bcc ]lp
|
||||
|
||||
ldx #0
|
||||
]lp stz paragraphe_lu,x
|
||||
stz indicateur_paragraphes,x
|
||||
stz indicateur_paragraphes_prealables,x
|
||||
inx
|
||||
cpx #nombre_paragraphes
|
||||
bcc ]lp
|
||||
|
||||
ldx #0
|
||||
lda #TRUE
|
||||
sta indicateur,x
|
||||
rep #$20
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_OBJETS - OK
|
||||
*-----------------------
|
||||
* init_objets
|
||||
|
||||
init_objets
|
||||
stz ancien_objet
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_PECHES - OK
|
||||
*-----------------------
|
||||
* init_peches
|
||||
|
||||
init_peches
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_ICONES - OK
|
||||
*-----------------------
|
||||
* init_icones
|
||||
|
||||
init_icones
|
||||
PushWord #0
|
||||
_ClearScreen
|
||||
|
||||
@loadfile #pFOND;ptrFOND
|
||||
@loadfile #pICONES;ptrICONES
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_ROUTINES - OK
|
||||
*-----------------------
|
||||
* init_routines
|
||||
|
||||
init_routines
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_FENETRES - OK
|
||||
*-----------------------
|
||||
* init_fenetres
|
||||
|
||||
init_fenetres
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_SOURIS - OK
|
||||
*-----------------------
|
||||
* init_souris
|
||||
|
||||
init_souris
|
||||
PushLong #monCURSEUR
|
||||
_SetCursor
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* DATAS_INIT - OK
|
||||
*-----------------------
|
||||
* datas_init
|
||||
|
||||
datas_init
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_TEXTE - OK
|
||||
*-----------------------
|
||||
* init_texte
|
||||
|
||||
init_texte
|
||||
lda #1
|
||||
]lp sta index
|
||||
|
||||
lda index ; fait patienter
|
||||
jsr presentation
|
||||
lda index ; charge le texte
|
||||
jsr load_texte
|
||||
lda index ; charge la rŽfŽrence
|
||||
jsr load_reference
|
||||
|
||||
lda #4
|
||||
jsr nowWAIT
|
||||
|
||||
lda index
|
||||
inc
|
||||
cmp #nombre_objets+1
|
||||
bcc ]lp
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* INIT_INDICATEURS_TEXTE
|
||||
*-----------------------
|
||||
* init_indicateurs_texte
|
||||
|
||||
init_indicateurs_texte
|
||||
sep #$20
|
||||
ldx #0
|
||||
]lp stz paragraphe,x
|
||||
inx
|
||||
cpx #nombre_paragraphes
|
||||
bcc ]lp
|
||||
rep #$20
|
||||
|
||||
stz pointeur_paragraphes
|
||||
stz paragraphes_lus
|
||||
|
||||
* LOGO
|
||||
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
|
@ -430,7 +709,7 @@ lookindex
|
|||
* A: numŽro du texte
|
||||
|
||||
presentation
|
||||
cmp #9 ; 1..8
|
||||
cmp #nombre_objets+1
|
||||
bcc pr_1
|
||||
rts
|
||||
pr_1 cmp #0
|
||||
|
@ -460,40 +739,51 @@ tbl_pres da pr_case_1
|
|||
|
||||
*---
|
||||
|
||||
pr_case_1
|
||||
@carre #prSTR11;#100;#80;#$0771
|
||||
pr_case_1 @carre #prSTR11;#100;#80;#$0771
|
||||
@carre #prSTR12;#100;#120;#$0774
|
||||
|
||||
PushWord #15
|
||||
_SetForeColor
|
||||
PushWord #0
|
||||
_SetBackColor
|
||||
|
||||
@t #prSTR13;#21
|
||||
@t #prSTR14;#22
|
||||
@t #prSTR15;#23
|
||||
rts
|
||||
|
||||
pr_case_2
|
||||
@carre #prSTR21;#25;#20;#$0437
|
||||
pr_case_2 @carre #prSTR21;#25;#20;#$0437
|
||||
rts
|
||||
|
||||
pr_case_3
|
||||
@carre #prSTR31;#25;#180;#$0275
|
||||
pr_case_3 @carre #prSTR31;#25;#180;#$0275
|
||||
rts
|
||||
|
||||
pr_case_4
|
||||
@carre #prSTR41;#100;#0;#$0743
|
||||
pr_case_4 @carre #prSTR41;#100;#0;#$0743
|
||||
rts
|
||||
|
||||
pr_case_5
|
||||
@carre #prSTR51;#150;#20;#$0743
|
||||
pr_case_5 @carre #prSTR51;#150;#20;#$0743
|
||||
@carre #prSTR52;#50;#100;#$0743
|
||||
@carre #prSTR53;#70;#180;#$0177
|
||||
rts
|
||||
|
||||
pr_case_6
|
||||
@carre #prSTR61;#0;#100;#$0607
|
||||
pr_case_6 @carre #prSTR61;#0;#100;#$0607
|
||||
@carre #prSTR62;#20;#150;#$0607
|
||||
rts
|
||||
|
||||
pr_case_7
|
||||
@carre #prSTR71;#0;#99;#$0073
|
||||
pr_case_7 @carre #prSTR71;#0;#99;#$0073
|
||||
|
||||
PushWord #15
|
||||
_SetForeColor
|
||||
PushWord #0
|
||||
_SetBackColor
|
||||
|
||||
@t #prSTR72;#20
|
||||
@t #prSTR73;#21
|
||||
@t #prSTR74;#22
|
||||
@t #prSTR75;#23
|
||||
rts
|
||||
|
||||
pr_case_8
|
||||
@carre #prSTR81;#100;#180;#$0555
|
||||
pr_case_8 @carre #prSTR81;#100;#180;#$0555
|
||||
rts
|
||||
|
||||
*---
|
||||
|
@ -501,16 +791,21 @@ pr_case_8
|
|||
prSTR11 str 'la belle zohra'
|
||||
prSTR12 str '(morceaux de bravoure)'
|
||||
prSTR13 str 'fran'8d'ois coulon'
|
||||
prSTR14 str 'les logiciels d'27'en face 1992.reproduction interdite'
|
||||
prSTR14 str 'les logiciels d'27'en face 1992'
|
||||
prSTR15 str 'reproduction interdite'
|
||||
prSTR21 str 'graphismes faustino ribeiro'
|
||||
prSTR31 str 'programmation pascal piat'
|
||||
prSTR41 str 'musique erik ecqier'
|
||||
prSTR51 str 'un grand merci '88':'
|
||||
prSTR52 str 'emmanuel talmy'
|
||||
prSTR53 str 'sans qui ce logiciel... etc.'
|
||||
prSTR61 str 'miss zohra c'8e'lestibus est habill'8e'...'
|
||||
prSTR61 str 'miss zohra c'8e'lestibus est habill'8e'e...'
|
||||
prSTR62 str '...par aristide aristibus'
|
||||
prSTR71 str 8e'crit et r'8e'alis'8e' par fran'8d'ois coulon'
|
||||
prSTR72 str 'Version Apple IIgs'
|
||||
prSTR73 str 'par'
|
||||
prSTR74 str 'Brutal Deluxe Software'
|
||||
prSTR75 str 'Antoine Vignau & Olivier Zardini'
|
||||
prSTR81 str 88' la famille paspire...'
|
||||
|
||||
*-----------------------
|
||||
|
@ -525,9 +820,7 @@ prSTR81 str 88' la famille paspire...'
|
|||
* couleur$ est pour le carrŽ
|
||||
* le texte est toujours en jaune
|
||||
|
||||
carre lda 3,s
|
||||
sta carreRGB
|
||||
lda 5,s
|
||||
carre lda 5,s
|
||||
sta carreRECT
|
||||
clc
|
||||
adc #12
|
||||
|
@ -542,6 +835,81 @@ carre lda 3,s
|
|||
lda 11,s
|
||||
sta dpFROM+2
|
||||
|
||||
*--- la couleur du GS
|
||||
|
||||
lda 3,s ; R
|
||||
and #$0f00
|
||||
asl
|
||||
sta carreRGB
|
||||
|
||||
lda 3,s ; G
|
||||
and #$00f0
|
||||
asl
|
||||
ora carreRGB
|
||||
sta carreRGB
|
||||
|
||||
lda 3,s ; B
|
||||
and #$000f
|
||||
asl
|
||||
ora carreRGB
|
||||
sta carreRGB
|
||||
|
||||
*--- draw square
|
||||
|
||||
PushWord #0 ; on met du RGB
|
||||
PushWord index
|
||||
PushWord carreRGB
|
||||
_SetColorEntry
|
||||
|
||||
ldx index
|
||||
lda carreRECT ; la couleur si > 100
|
||||
cmp #100+1
|
||||
bcs carre_1
|
||||
ldx #8 ; le rose sinon
|
||||
carre_1 phx
|
||||
_SetSolidPenPat
|
||||
|
||||
lda carreRECT+2
|
||||
pha
|
||||
lda carreRECT
|
||||
pha
|
||||
_MoveTo
|
||||
|
||||
PushLong #carreRECT
|
||||
_PaintRect
|
||||
|
||||
*--- print text in bold typeface
|
||||
|
||||
pha
|
||||
_GetTextFace
|
||||
pha
|
||||
_GetForeColor
|
||||
pha
|
||||
_GetBackColor
|
||||
|
||||
PushWord #%00000000_00000001 ; bold
|
||||
_SetTextFace
|
||||
PushWord #15
|
||||
_SetForeColor
|
||||
PushWord #0
|
||||
_SetBackColor
|
||||
|
||||
lda carreRECT+2
|
||||
clc
|
||||
adc #15
|
||||
pha
|
||||
lda carreRECT
|
||||
clc
|
||||
adc #8
|
||||
pha
|
||||
_MoveTo
|
||||
PushLong dpFROM
|
||||
_DrawString
|
||||
|
||||
_SetBackColor
|
||||
_SetForeColor
|
||||
_SetTextFace ; restore
|
||||
|
||||
carreEXIT lda 1,s
|
||||
plx
|
||||
plx
|
||||
|
@ -553,7 +921,7 @@ carreEXIT lda 1,s
|
|||
|
||||
*---
|
||||
|
||||
carreRGB ds 2 ; couleur du carre
|
||||
carreRGB ds 2 ; couleur du carre (4 bits)
|
||||
|
||||
carreRECT ds 2 ; y0
|
||||
ds 2 ; x0
|
||||
|
@ -582,9 +950,11 @@ shoot_ligne
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* CREE_FENETRE
|
||||
*-----------------------
|
||||
* cree_fenetre(objet%,paragraphe%)
|
||||
* A : objet
|
||||
* X : paragraphe
|
||||
|
||||
cree_fenetre
|
||||
rts
|
||||
|
@ -598,7 +968,7 @@ display_text
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* ICE_LOAD - OK
|
||||
*-----------------------
|
||||
* ice_load(fichier$)
|
||||
|
||||
|
@ -606,7 +976,7 @@ ice_load
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* ICE_DISP - OK
|
||||
*-----------------------
|
||||
* ice_disp(adresse_image%)
|
||||
|
||||
|
@ -614,7 +984,7 @@ ice_disp
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* PALETTE - OK
|
||||
*-----------------------
|
||||
* palette(palette$)
|
||||
|
||||
|
@ -650,17 +1020,21 @@ show_screen2
|
|||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* MOUSE_ON - OK
|
||||
*-----------------------
|
||||
* mouse_on
|
||||
|
||||
mouse_on
|
||||
_ShowCursor
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
*
|
||||
* MOUSE_OFF - OK
|
||||
*-----------------------
|
||||
* mouse_off
|
||||
|
||||
mouse_off
|
||||
_HideCursor
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
|
@ -735,26 +1109,29 @@ data_fichiers_musique
|
|||
* A: @texte$
|
||||
* Y: ligne%
|
||||
|
||||
t PushWord #^t ; pointer to string
|
||||
pha
|
||||
t sty theY
|
||||
|
||||
tya ; pour MoveTo
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
pha ; Y
|
||||
PushWord #^t ; pointer to string
|
||||
pha
|
||||
|
||||
PushWord #0 ; get string length
|
||||
PushWord #^t
|
||||
pha
|
||||
_StringWidth ; return left on stack
|
||||
|
||||
lda #160
|
||||
lda #320 ; why 160?
|
||||
sec
|
||||
sbc 1,s
|
||||
bpl t1
|
||||
lda #0
|
||||
t1 sta 1,s ; X
|
||||
t1 lsr
|
||||
sta 1,s ; X
|
||||
|
||||
lda theY ; pour MoveTo
|
||||
asl
|
||||
asl
|
||||
asl
|
||||
pha ; Y
|
||||
_MoveTo
|
||||
_DrawString
|
||||
rts
|
||||
|
@ -765,3 +1142,45 @@ t1 sta 1,s ; X
|
|||
|
||||
fin
|
||||
rts
|
||||
|
||||
*-----------------------
|
||||
* MON BEAU CURSEUR
|
||||
*-----------------------
|
||||
|
||||
monCURSEUR
|
||||
dw 16,4
|
||||
hex 0000000000000000 ; data
|
||||
hex 00000000000000F0
|
||||
hex 000000000000FFF0
|
||||
hex 000000000000F0F0
|
||||
hex 0000000000FFF0F0
|
||||
hex 00000000FFF00FF0
|
||||
hex 000000FFF0000F00
|
||||
hex 0000FFF00000FF00
|
||||
hex 000FF0000000F000
|
||||
hex 00FF0000000FF000
|
||||
hex 00F00000000F0000
|
||||
hex 00F0000000FF0000
|
||||
hex 00F0000000F00000
|
||||
hex 00F000000FF00000
|
||||
hex 00000000FF000000
|
||||
hex 0000FFFFF0000000
|
||||
hex 0000000000000000 ; mask
|
||||
hex 0000000000000FF0
|
||||
hex 00000000000FFFF0
|
||||
hex 000000000FFF0F00
|
||||
hex 0000000FFF00FF00
|
||||
hex 00000FFF0000F000
|
||||
hex 000FFF00000FF000
|
||||
hex 00FF0000000F0000
|
||||
hex 0FF0000000FF0000
|
||||
hex 0F00000000F00000
|
||||
hex 0F0000000FF00000
|
||||
hex 0F0000000F000000
|
||||
hex 0F000000FF000000
|
||||
hex 0FF0000FF0000000
|
||||
hex 00FFFFFF00000000
|
||||
hex 0000000000000000
|
||||
dw 2,14
|
||||
|
||||
*--- The end
|
||||
|
|
|
@ -187,22 +187,6 @@ okMEM1 sty ptrIMAGE
|
|||
sty ptrUNPACK
|
||||
stx ptrUNPACK+2
|
||||
|
||||
*--- 64K pour les REFERENCES des textes
|
||||
|
||||
jsr make64KB
|
||||
bcs koMEM
|
||||
|
||||
sty ptrREF
|
||||
stx ptrREF+2
|
||||
|
||||
*--- 64K pour les TEXTES
|
||||
|
||||
jsr make64KB
|
||||
bcs koMEM
|
||||
|
||||
sty ptrTEXTES
|
||||
stx ptrTEXTES+2
|
||||
|
||||
*--- Chargement des outils
|
||||
|
||||
pha
|
||||
|
@ -254,18 +238,17 @@ okTOOL _HideMenuBar
|
|||
* INITIALISATIONS
|
||||
*----------------------------------------
|
||||
|
||||
entryPOINT
|
||||
jsr set_language
|
||||
jsr init
|
||||
jsr musique
|
||||
jsr init2
|
||||
jsr TWILIGHToff
|
||||
|
||||
*-----------------------
|
||||
* MAIN
|
||||
*-----------------------
|
||||
|
||||
entryPOINT
|
||||
@loadfile #pFOND;ptrFOND
|
||||
@loadfile #pICONES;ptrICONES
|
||||
@fadein ptrFOND;#TRUE
|
||||
jsr waitEVENT
|
||||
@fadein ptrICONES;#TRUE
|
||||
|
@ -592,6 +575,7 @@ doQUIT
|
|||
|
||||
meQUIT
|
||||
* jsr stopNTP
|
||||
jsr TWILIGHTon
|
||||
|
||||
meQUIT0 PushWord #refIsHandle
|
||||
PushLong SStopREC
|
||||
|
@ -614,6 +598,113 @@ meQUIT1 PushWord myID
|
|||
|
||||
monitor brk $bd
|
||||
|
||||
*----------------------------------------
|
||||
* TWILIGHT
|
||||
*----------------------------------------
|
||||
|
||||
*----------------------------
|
||||
* TWILIGHToff
|
||||
* Turns Twilight II off
|
||||
*
|
||||
* Entry:
|
||||
* n/a
|
||||
*
|
||||
* Exit:
|
||||
* n/a
|
||||
*
|
||||
*----------------------------
|
||||
|
||||
lenV1 = $49bf
|
||||
lenV2 = $539a
|
||||
|
||||
offV1 = $117a
|
||||
offV2 = $154c
|
||||
|
||||
TWILIGHToff
|
||||
ldal $e11600
|
||||
sta Debut
|
||||
ldal $e11602
|
||||
sta Debut+2
|
||||
|
||||
TWILIGHToff1
|
||||
ldy #8
|
||||
lda [Debut],y
|
||||
ldx #offV1
|
||||
cmp #lenV1
|
||||
beq TWILIGHToff2
|
||||
ldx #offV2
|
||||
cmp #lenV2
|
||||
bne TWILIGHToff3
|
||||
|
||||
TWILIGHToff2
|
||||
stx offTWILIGHT
|
||||
|
||||
lda [Debut]
|
||||
sta Arrivee
|
||||
sta ptrTWILIGHT
|
||||
ldy #2
|
||||
lda [Debut],y
|
||||
sta Arrivee+2
|
||||
sta ptrTWILIGHT+2
|
||||
|
||||
txy
|
||||
lda [Arrivee],y
|
||||
cmp #$0ef0
|
||||
bne TWILIGHToff3
|
||||
lda #$0e80
|
||||
sta [Arrivee],y
|
||||
inc fgTWILIGHT
|
||||
rts
|
||||
|
||||
TWILIGHToff3
|
||||
ldy #16
|
||||
lda [Debut],y
|
||||
tax
|
||||
iny
|
||||
iny
|
||||
lda [Debut],y
|
||||
sta Debut+2
|
||||
txa
|
||||
sta Debut
|
||||
|
||||
lda Debut
|
||||
ora Debut+2
|
||||
bne TWILIGHToff1
|
||||
rts
|
||||
|
||||
*----------------------------
|
||||
* TWILIGHTon
|
||||
* Turns Twilight II on
|
||||
*
|
||||
* Entry:
|
||||
* n/a
|
||||
*
|
||||
* Exit:
|
||||
* n/a
|
||||
*
|
||||
*----------------------------
|
||||
|
||||
TWILIGHTon
|
||||
lda fgTWILIGHT
|
||||
bne TWILIGHTon1
|
||||
rts
|
||||
|
||||
TWILIGHTon1
|
||||
lda ptrTWILIGHT
|
||||
sta Arrivee
|
||||
lda ptrTWILIGHT+2
|
||||
sta Arrivee+2
|
||||
ldy offTWILIGHT
|
||||
lda #$0ef0
|
||||
sta [Arrivee],y
|
||||
rts
|
||||
|
||||
*--- Twilight II
|
||||
|
||||
ptrTWILIGHT ds 4
|
||||
fgTWILIGHT ds 2
|
||||
offTWILIGHT ds 2
|
||||
|
||||
*----------------------------------------
|
||||
* MEMOIRE
|
||||
*----------------------------------------
|
||||
|
@ -1048,8 +1139,23 @@ ptrIMAGE ds 4 ; $0000: where a scene image is loaded
|
|||
ptrFOND ds 4 ; $0000: fond de jeu
|
||||
ptrICONES adrl $8000 ; $0000: fond d'icônes du jeu
|
||||
ptrUNPACK ds 4 ; $0000: where the background picture is laoded
|
||||
ptrREF ds 4 ; les index des textes
|
||||
ptrTEXTES ds 4 ; les textes
|
||||
|
||||
ptrREF1 ds 4 ; les pointeurs des references
|
||||
ptrREF2 ds 4
|
||||
ptrREF3 ds 4
|
||||
ptrREF4 ds 4
|
||||
ptrREF5 ds 4
|
||||
ptrREF6 ds 4
|
||||
ptrREF7 ds 4
|
||||
ptrREF8 ds 4
|
||||
ptrTXT1 ds 4 ; les pointeurs des textes
|
||||
ptrTXT2 ds 4
|
||||
ptrTXT3 ds 4
|
||||
ptrTXT4 ds 4
|
||||
ptrTXT5 ds 4
|
||||
ptrTXT6 ds 4
|
||||
ptrTXT7 ds 4
|
||||
ptrTXT8 ds 4
|
||||
|
||||
temp ds 2
|
||||
|
||||
|
@ -1245,7 +1351,7 @@ pIMAGE strl '1/data/images/PIC1.PIC'
|
|||
pFOND strl '1/data/images/PIC10.PIC'
|
||||
pICONES strl '1/data/images/PIC11.PIC'
|
||||
pREF strl '1/data/textes/fr/REF1.TXT'
|
||||
pTEXTES strl '1/data/textes/fr/TXT1.TXT'
|
||||
pTXT strl '1/data/textes/fr/TXT1.TXT'
|
||||
|
||||
*--- offset to aventure number is +25
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user