mirror of
https://github.com/antoinevignau/source.git
synced 2025-01-14 09:30:49 +00:00
Le jeu est fini
This commit is contained in:
parent
11ffa8be4f
commit
c65e42f06a
@ -3014,7 +3014,7 @@ L50F6 DB $41
|
||||
DB $01
|
||||
ASC 'M'
|
||||
DB $0C
|
||||
dfb 154 ; $AD (174)
|
||||
dfb 149 ; $AD (174)
|
||||
ASC 'VOUS ETES DANS LE LABORATOIRE'00
|
||||
DB $41
|
||||
DB $96
|
||||
@ -5148,7 +5148,7 @@ L5A21 DB $41
|
||||
DB $00
|
||||
ASC 'M'
|
||||
dfb 8 ; $18
|
||||
dfb 154 ; $AC (172)
|
||||
dfb 149 ; $AC (172)
|
||||
ASC 'IL Y A UN ROBINET TOUJOURS OUVERT'00
|
||||
DB $41
|
||||
DB $0C ; 12
|
||||
@ -8392,11 +8392,11 @@ L65FF DB $41
|
||||
ASC 'AUTO'00
|
||||
ASC 'M'
|
||||
DB $14 ; was $1E
|
||||
dfb 145 ; was $A5 (165)
|
||||
dfb 140 ; was $A5 (165)
|
||||
ASC 'VOUS REMARQUEZ LE GENERATEUR'00
|
||||
ASC 'M'
|
||||
DB $14 ; was $1E
|
||||
dfb 154 ; was $AD (173)
|
||||
dfb 149 ; was $AD (173)
|
||||
ASC 'D'27'OXYGENE DU VAISSEAU'00
|
||||
* DB $41
|
||||
* DB $C6
|
||||
@ -11567,11 +11567,11 @@ L72CA DB $41
|
||||
DB $05
|
||||
ASC 'M'
|
||||
dfb 8 ; $3C (60)
|
||||
dfb 145 ; $95 (149)
|
||||
dfb 140 ; $95 (149)
|
||||
ASC 'LA CHAMBRE EST EQUIPEE D'27'UN'00
|
||||
ASC 'M'
|
||||
dfb 8 ; $18 (25)
|
||||
dfb 154 ; $9D (157)
|
||||
dfb 149 ; $9D (157)
|
||||
ASC 'SYSTEME D'27'OXYGENATION AUTONOME'00
|
||||
* DB $41
|
||||
* DB $0C
|
||||
@ -12210,7 +12210,7 @@ L74D2 DB $41
|
||||
DB $02
|
||||
ASC 'M'
|
||||
DB $10 ; was $18
|
||||
dfb 154 ; $A0 (160)
|
||||
dfb 149 ; $A0 (160)
|
||||
ASC 'VOUS ETES DANS LA BIBLIOTHEQUE'00
|
||||
DB $4A
|
||||
DB $06
|
||||
|
@ -366,7 +366,7 @@ resumeMUSIC9
|
||||
|
||||
*--------------------------------------
|
||||
|
||||
checkREPLAY
|
||||
checkREPLAY rep #$30
|
||||
lda fgMIDI
|
||||
bne checkREPLAY99
|
||||
|
||||
@ -376,7 +376,7 @@ checkREPLAY
|
||||
|
||||
checkREPLAY99
|
||||
rts
|
||||
|
||||
|
||||
*--------------------------------------
|
||||
|
||||
replayMUSIC
|
||||
|
@ -10,12 +10,59 @@
|
||||
|
||||
*-----------------------------------
|
||||
* LES PRIMITIVES 8-BITS EN 16-BITS
|
||||
*-----------------------------------
|
||||
|
||||
*-----------------------------------
|
||||
* ROUTINE TEMPS (MERCI THE TINIES)
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
|
||||
intTIME ds 4
|
||||
dw 60
|
||||
dw $a55a
|
||||
|
||||
lda #60
|
||||
stal intTIME+4
|
||||
|
||||
ldal fgTIME
|
||||
beq intTIME1
|
||||
|
||||
lda switchENERGIE+1 ; switch is off
|
||||
bne intTIME1
|
||||
|
||||
sed
|
||||
ldal SECONDES
|
||||
sec
|
||||
sbc #1
|
||||
stal SECONDES
|
||||
cmp #$99
|
||||
bne intTIME1
|
||||
|
||||
lda #$59
|
||||
stal SECONDES
|
||||
|
||||
ldal MINUTES
|
||||
sec
|
||||
sbc #1
|
||||
stal MINUTES
|
||||
cmp #$99
|
||||
bne intTIME1
|
||||
|
||||
lda #0
|
||||
stal MINUTES ; on a perdu !!!
|
||||
stal SECONDES
|
||||
|
||||
intTIME1 cld
|
||||
clc
|
||||
rtl
|
||||
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
|
||||
printNIVEAU ora #'0'
|
||||
sta strNIVEAU+9
|
||||
sta strNIVEAU+7
|
||||
|
||||
rep #$30
|
||||
|
||||
@ -31,16 +78,68 @@ printNIVEAU ora #'0'
|
||||
|
||||
mx %00
|
||||
|
||||
HGR rep #$30
|
||||
* PushWord #0
|
||||
* _ClearScreen
|
||||
printTEMPS lda fgTIME
|
||||
bne pt1
|
||||
rts
|
||||
|
||||
pt1 sep #$30
|
||||
lda MINUTES
|
||||
and #%1111_0000
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
ora #'0'
|
||||
sta strTEMPS
|
||||
|
||||
lda MINUTES
|
||||
and #%0000_1111
|
||||
ora #'0'
|
||||
sta strTEMPS+1
|
||||
|
||||
lda SECONDES
|
||||
and #%1111_0000
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
ora #'0'
|
||||
sta strTEMPS+3
|
||||
|
||||
lda SECONDES
|
||||
and #%0000_1111
|
||||
ora #'0'
|
||||
sta strTEMPS+4
|
||||
|
||||
rep #$30
|
||||
PushWord #250
|
||||
PushWord #20
|
||||
_MoveTo
|
||||
PushLong #strTEMPS
|
||||
_DrawCString
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
|
||||
mx %00
|
||||
|
||||
FULLHGR rep #$30
|
||||
PushWord #0
|
||||
_ClearScreen
|
||||
sep #$30
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
|
||||
mx %00
|
||||
|
||||
HGR rep #$30
|
||||
lda ptrSCREEN
|
||||
sta dpTO
|
||||
lda ptrSCREEN+2
|
||||
sta dpTO+2
|
||||
|
||||
ldy #160*160
|
||||
ldy #160*160-2
|
||||
lda #0
|
||||
]lp sta [dpTO],y
|
||||
dey
|
||||
@ -54,13 +153,16 @@ HGR rep #$30
|
||||
|
||||
mx %11
|
||||
|
||||
RDKEY phx
|
||||
jsr CURSOR ; shows the cursor
|
||||
|
||||
RDKEY jsr CURSOR ; shows the cursor
|
||||
rep #$30
|
||||
|
||||
]lp inc VBLCounter0 ; for RND
|
||||
|
||||
jsr checkREPLAY
|
||||
jsr printTEMPS
|
||||
jsr testENERGIE
|
||||
bcs RDKEY99
|
||||
|
||||
pha
|
||||
PushWord #%00000000_00001000
|
||||
PushLong #taskREC
|
||||
@ -75,7 +177,10 @@ RDKEY phx
|
||||
lda taskMESSAGE
|
||||
|
||||
sep #$30
|
||||
plx
|
||||
clc
|
||||
rts
|
||||
RDKEY99 sep #$30
|
||||
sec
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
@ -102,9 +207,10 @@ eraseLINES sta pointerRECT
|
||||
*-----------
|
||||
|
||||
pointerRECT adrl bottomRECT
|
||||
|
||||
bottomRECT dw row15+1,0,row19,319
|
||||
lastlineRECT dw row18+1,0,row19,319
|
||||
screenRECT dw 0,0,200,320
|
||||
drawRECT dw 0,0,159,239 ; 319
|
||||
bottomRECT dw 160,0,199,319
|
||||
lastlineRECT dw 190,0,199,319
|
||||
cursorRECT dw 0,0,0,0 ; y2 and x2 are y1+charWIDTH and x1+charWIDTH
|
||||
|
||||
*-----------------------------------
|
||||
@ -112,7 +218,6 @@ cursorRECT dw 0,0,0,0 ; y2 and x2 are y1+charWIDTH and x1+charWIDTH
|
||||
mx %11
|
||||
|
||||
CURSOR_ERASE
|
||||
phx
|
||||
rep #$30
|
||||
|
||||
lda textY
|
||||
@ -137,9 +242,30 @@ CURSOR_ERASE
|
||||
sta textX
|
||||
|
||||
sep #$30
|
||||
plx
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
|
||||
WHITE_SPACE
|
||||
rep #$30
|
||||
|
||||
lda textY
|
||||
sta cursorRECT+4
|
||||
sec
|
||||
sbc #charWIDTH
|
||||
sta cursorRECT
|
||||
|
||||
lda textX
|
||||
sta cursorRECT+2
|
||||
clc
|
||||
adc #charWIDTH
|
||||
sta cursorRECT+6
|
||||
|
||||
lda #cursorRECT
|
||||
jmp eraseLINES ; retour en 8-bits
|
||||
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
@ -181,8 +307,7 @@ GOTOXY stx textX
|
||||
|
||||
mx %11
|
||||
|
||||
COUT phx
|
||||
phy
|
||||
COUT
|
||||
rep #$30
|
||||
and #$ff
|
||||
cmp #chrRET ; next line, please
|
||||
@ -196,7 +321,7 @@ COUT phx
|
||||
|
||||
*----------- next X position
|
||||
|
||||
lda textX
|
||||
COUT0 lda textX
|
||||
clc
|
||||
adc #charWIDTH
|
||||
sta textX
|
||||
@ -204,8 +329,6 @@ COUT phx
|
||||
bcs COUT1
|
||||
|
||||
COUT99 sep #$30
|
||||
ply
|
||||
plx
|
||||
rts
|
||||
|
||||
*----------- next Y position
|
||||
@ -291,31 +414,6 @@ COUT2 lda #row19 ; on se remet sur la derni
|
||||
jsr eraseLINES ; en 8-bits ˆ la sortie
|
||||
brl COUT99
|
||||
|
||||
*----------- Exit
|
||||
*
|
||||
* De 160 ˆ 199, ce sont les lignes de texte
|
||||
*
|
||||
*text2shr dw 9 ; 0
|
||||
* dw 19 ; 1
|
||||
* dw 29 ; 2
|
||||
* dw 39 ; 3
|
||||
* dw 49 ; 4
|
||||
* dw 59 ; 5
|
||||
* dw 69 ; 6
|
||||
* dw 79 ; 7
|
||||
* dw 89 ; 8
|
||||
* dw 99 ; 9
|
||||
* dw 109 ; 10
|
||||
* dw 119 ; 11
|
||||
* dw 129 ; 12
|
||||
* dw 139 ; 13
|
||||
* dw 149 ; 14
|
||||
* dw 159 ; 15
|
||||
* dw 169 ; 16
|
||||
* dw 179 ; 17
|
||||
* dw 189 ; 18
|
||||
* dw 199 ; 19
|
||||
*
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
@ -542,23 +640,33 @@ BFF0 ds 16
|
||||
|
||||
mx %00
|
||||
|
||||
showPIC rep #$30
|
||||
showPIC stz fgTIME
|
||||
rep #$30
|
||||
and #$00ff
|
||||
asl
|
||||
tax
|
||||
lda tblIMAGES,x
|
||||
bne L92A5
|
||||
showPIC99 sep #$30
|
||||
inc fgTIME
|
||||
rts
|
||||
|
||||
mx %00
|
||||
|
||||
L92A5 sta dpFROM
|
||||
|
||||
PushLong #drawRECT
|
||||
_FrameRect
|
||||
PushLong #screenRECT
|
||||
_GetPortRect
|
||||
PushLong #drawRECT
|
||||
_SetPortRect
|
||||
|
||||
L92A6 ldy #0
|
||||
lda (dpFROM),y
|
||||
and #$ff
|
||||
beq showPIC99
|
||||
bne L92A7
|
||||
jmp drawEXIT
|
||||
|
||||
L92A7 CMP #'A' ; A $41 CURSET
|
||||
BNE L92B1
|
||||
@ -623,7 +731,7 @@ L930C CMP #'O' ; O $4F OUTPUT
|
||||
L9313 lda #0
|
||||
sep #$30
|
||||
sta A2
|
||||
rts
|
||||
jmp drawEXIT
|
||||
|
||||
mx %00
|
||||
|
||||
@ -824,6 +932,14 @@ L94D8 iny
|
||||
and #$ff
|
||||
sep #$30
|
||||
sta A2 ; the variable at $400
|
||||
|
||||
drawEXIT rep #$30
|
||||
|
||||
PushLong #screenRECT
|
||||
_SetPortRect
|
||||
|
||||
sep #$30
|
||||
inc fgTIME
|
||||
rts
|
||||
|
||||
mx %00
|
||||
|
@ -10,10 +10,10 @@
|
||||
*
|
||||
|
||||
strVOUSDETENEZ
|
||||
asc 0D'Vous avez en votre possession : '00
|
||||
asc 'Vous avez en votre possession : '00
|
||||
|
||||
strVOUSRIEN
|
||||
asc 0D'Vous ne devez pas etre fatigue, vous'0D
|
||||
asc 'Vous ne devez pas etre fatigue, vous'0D
|
||||
asc 'n'27'avez rien sur vous'00
|
||||
|
||||
strPOINT
|
||||
@ -34,7 +34,8 @@ strILFAITNOIR
|
||||
|
||||
strVOSYEUX asc 'Vos yeux ne voient plus rien.'0D00
|
||||
|
||||
strNIVEAU asc 'NIVEAU : 0'00 ; +9 pour le niveau
|
||||
strNIVEAU asc 'NIVEAU 0'00 ; +7 pour le niveau
|
||||
strTEMPS asc '00:00'00
|
||||
|
||||
strILYA asc 0D'Il y a aussi :'00
|
||||
strCOMMA asc ','00
|
||||
@ -44,7 +45,7 @@ strRETURN asc 0D00
|
||||
strCOMMANDE asc 0D'Ordre ? '00
|
||||
|
||||
strJENECOMPRENDS
|
||||
asc 0D'Je ne comprends pas'00
|
||||
asc 'Je ne comprends pas'00
|
||||
|
||||
strIMPOSSIBLE
|
||||
asc 0D'Impossible '00
|
||||
@ -55,21 +56,24 @@ strEXCLAM
|
||||
|
||||
strREPLAY asc 0D'Voulez-vous rejouer ? '00
|
||||
|
||||
strPERDU
|
||||
strPERDU asc 0d'Comme je le pensais, vous vous etes'0d
|
||||
asc 'stupidement fait avoir, et votre cadavre'
|
||||
asc '(ou ce qu'27'il en reste) reposera a jamais'
|
||||
asc 'dans l'27'espace...'0d00
|
||||
|
||||
strGAGNE asc ' D'27'accord,'0D
|
||||
asc 'vous m'27'avez battu, mais c'27'est un coup'0D
|
||||
asc 'de chance, et la prochaine fois ma'0D
|
||||
asc 'vengeance sera terrible.'0D
|
||||
asc 'Prenez peur, car le jour ou je serai'0D
|
||||
asc 'a nouveau la, ma puissance n'27'aura plus'0D
|
||||
asc 'de limites, alors l'27'heure de la souf-'0D
|
||||
asc '-france aura sonne...'0D
|
||||
asc ' Dr GENIUS.'00
|
||||
strGAGNE asc 'D'27'accord,'0d
|
||||
asc 'vous m'27'avez battu, mais c'27'est un coup'0d
|
||||
asc 'de chance, et la prochaine fois ma'0d
|
||||
asc 'vengeance sera terrible.'0d
|
||||
asc 'Prenez peur, car le jour ou je serai'0d
|
||||
asc 'a nouveau la, ma puissance n'27'aura plus'0d
|
||||
asc 'de limites, alors l'27'heure de la souf-'0d
|
||||
asc '-france aura sonne...'0d
|
||||
asc ' Dr GENIUS.'0d00
|
||||
|
||||
strINTRO asc ' LE RETOUR DU Dr GENIUS'0D
|
||||
asc ' Vous avez 20 minutes et'0D
|
||||
asc ' 400 unites de force pour'0D
|
||||
strINTRO asc ' LE RETOUR DU Dr GENIUS'0d
|
||||
asc ' Vous avez 20 minutes et'0d
|
||||
asc ' 400 unites de force pour'0d
|
||||
asc ' remplir votre mission...'00
|
||||
|
||||
*-----------------------------------
|
||||
@ -253,14 +257,6 @@ refO dfb $bd
|
||||
dfb 40,33,41,53,43,10,00,21,22,26
|
||||
dfb 01,06,00,17,20,00,47,19,00
|
||||
|
||||
O dfb $bd
|
||||
dfb 40,33,41,53,43,10,00,21,22,26
|
||||
dfb 01,06,00,17,20,00,47,19,00
|
||||
|
||||
*refO$ da $bdbd
|
||||
* da O$1,O$2,O$3,O$4,O$5,O$6,O$7,O$8,O$9,O$10
|
||||
* da O$11,O$12,O$13,O$14,O$15,O$16,O$17,O$18,O$19
|
||||
|
||||
tblO$ da $bdbd
|
||||
da O$1,O$2,O$3,O$4,O$5,O$6,O$7,O$8,O$9,O$10
|
||||
da O$11,O$12,O$13,O$14,O$15,O$16,O$17,O$18,O$19
|
||||
@ -370,7 +366,7 @@ MP$5 asc 'ARGON'
|
||||
* on fera index-1 b/c 8-bits
|
||||
*
|
||||
|
||||
V = 139+1
|
||||
V = 139+2
|
||||
|
||||
tblVL$ dfb $bd
|
||||
dfb <V$1,<V$2,<V$3,<V$4,<V$5,<V$6,<V$7,<V$8,<V$9,<V$10
|
||||
@ -387,7 +383,7 @@ tblVL$ dfb $bd
|
||||
dfb <V$111,<V$112,<V$113,<V$114,<V$115,<V$116,<V$117,<V$118,<V$119,<V$120
|
||||
dfb <V$121,<V$122,<V$123,<V$124,<V$125,<V$126,<V$127,<V$128,<V$129,<V$130
|
||||
dfb <V$131,<V$132,<V$133,<V$134,<V$135,<V$136,<V$137,<V$138,<V$139
|
||||
dfb <V$200
|
||||
dfb <V$200,<V$201
|
||||
|
||||
tblVH$ dfb $bd
|
||||
dfb >V$1,>V$2,>V$3,>V$4,>V$5,>V$6,>V$7,>V$8,>V$9,>V$10
|
||||
@ -404,7 +400,7 @@ tblVH$ dfb $bd
|
||||
dfb >V$111,>V$112,>V$113,>V$114,>V$115,>V$116,>V$117,>V$118,>V$119,>V$120
|
||||
dfb >V$121,>V$122,>V$123,>V$124,>V$125,>V$126,>V$127,>V$128,>V$129,>V$130
|
||||
dfb >V$131,>V$132,>V$133,>V$134,>V$135,>V$136,>V$137,>V$138,>V$139
|
||||
dfb >V$200
|
||||
dfb >V$200,>V$201
|
||||
|
||||
tblV dfb $bd
|
||||
dfb 01,01,02,02,03,03,04,04,05,05 ; 1
|
||||
@ -421,7 +417,7 @@ tblV dfb $bd
|
||||
dfb 75,76,77,77,78,78,79,80,80,80
|
||||
dfb 81,81,82,83,83,84,84,84,85,85 ; 121
|
||||
dfb 85,86,87,87,88,88,89,89,90 ; last was 00, now 90
|
||||
dfb 200
|
||||
dfb 200,201
|
||||
|
||||
V$1 str 'N'
|
||||
V$2 str 'NORD'
|
||||
@ -564,6 +560,7 @@ V$138 str 'TOTA'
|
||||
V$139 str 'RANG' ; RANGER (TUBE DANS GLACE => RANG TUBE)
|
||||
|
||||
V$200 str 'TIME'
|
||||
V$201 str 'MUSI'
|
||||
|
||||
*
|
||||
* Les reponses (str7xxx)
|
||||
@ -690,16 +687,12 @@ str4618_1 asc 'Mais, que se passe-t-il, vous avez du'0d
|
||||
asc 'vaisseau de poche fonce sur le soleil.'00
|
||||
str4618_2 asc 'Vous venez de realiser que Genius'0d
|
||||
asc 'pleurait de JOIE...!'00
|
||||
str4618_3 asc 'Comme je le pensais, vous vous etes'0d
|
||||
asc 'stupidement fait avoir, et votre cadavre'
|
||||
asc '(ou ce qu'27'il en reste) reposera a jamais'
|
||||
asc 'dans l'27'espace...'00
|
||||
|
||||
str4620 asc 'La soucoupe a explose au decollage.'00
|
||||
str4630 asc 'Energie restante :'00
|
||||
str4640 asc 'Petit drole... Le chronometre est'0d
|
||||
asc 'affiche en permanence'00
|
||||
str4650 asc 'Le temps que vous aviez pour votre'0d
|
||||
str4650 asc 0d'Le temps que vous aviez pour votre'0d
|
||||
asc 'mission est ecoule, vous avez echoue.'00
|
||||
str4660 asc 'Votre trajectoire est bonne, pourquoi la'
|
||||
asc 'corriger ?'00
|
||||
@ -713,7 +706,7 @@ str4700 asc 'Vous remarquez un boitier de radio-'0d
|
||||
str4710 asc ''00
|
||||
str4720 asc ''00
|
||||
str4730 asc 'Que regardez vous ?'00
|
||||
str4740 asc 'Le tube de nitroglycerine vient d'270d
|
||||
str4740 asc 0d'Le tube de nitroglycerine vient d'270d
|
||||
asc 'exploser, vous etes pulverise.'00
|
||||
str4750 asc 'La bombe a retardement vient d'270d
|
||||
asc 'exploser, vous etes pulverise.'00
|
||||
@ -735,7 +728,7 @@ str4810 asc 'Vous auriez du corriger la trajectoire,'0d
|
||||
asc 'vous avez percute le soleil.'00
|
||||
str4820 asc 'A force de traverser les salles radio-'0d
|
||||
asc '-actives, vous etes mort contamine.'00
|
||||
str4830 asc 'Il fait de plus en plus chaud...'00
|
||||
str4830 asc 0d'Il fait de plus en plus chaud...'00
|
||||
str4840 asc 'L'27'ordinateur vient d'27'exploser!'00
|
||||
str4845 asc 'Vous avez du le laisser allume.'00
|
||||
str4850 asc 'Comment !!! Vous etes aveugle.'00
|
||||
|
Binary file not shown.
@ -72,7 +72,7 @@ maxTROW = 19
|
||||
charHEIGHT = 10
|
||||
charWIDTH = 8
|
||||
|
||||
row0 = charHEIGHT-1 ; 9
|
||||
row0 = charHEIGHT-2 ; 9 - 1 partout...
|
||||
row1 = row0+charHEIGHT ; 19
|
||||
row2 = row1+charHEIGHT ; 29
|
||||
row3 = row2+charHEIGHT ; 39
|
||||
@ -115,6 +115,11 @@ ICI phk
|
||||
tdc
|
||||
sta myDP
|
||||
|
||||
lda #screenRECT
|
||||
stal $300
|
||||
lda #^screenRECT
|
||||
stal $302
|
||||
|
||||
_TLStartUp
|
||||
pha
|
||||
_MMStartUp
|
||||
@ -234,6 +239,10 @@ okSHADOW
|
||||
* IL FAUT JOUER MAINTENANT
|
||||
*-----------------------------------
|
||||
|
||||
sei
|
||||
PushLong #intTIME
|
||||
_SetHeartBeat
|
||||
cli
|
||||
jmp PLAY
|
||||
|
||||
*-----------------------------------
|
||||
@ -242,6 +251,11 @@ okSHADOW
|
||||
|
||||
QUIT rep #$30
|
||||
jsr stopMIDI
|
||||
|
||||
sei
|
||||
PushLong #intTIME
|
||||
_DelHeartBeat
|
||||
cli
|
||||
|
||||
meQUIT PushWord #refIsPointer
|
||||
PushLong ssREC
|
||||
@ -313,7 +327,6 @@ loadBACK _HideCursor
|
||||
PushLong #ptrE12000
|
||||
PushLong #32768
|
||||
_BlockMove
|
||||
_ShowCursor
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
@ -322,9 +335,7 @@ loadBACK _HideCursor
|
||||
|
||||
*----------------------------------- Open
|
||||
|
||||
doLOAD rep #$30
|
||||
jsr doSOUNDOFF
|
||||
rep #$30
|
||||
doLOAD jsr doSOUNDOFF
|
||||
jsr saveBACK
|
||||
|
||||
PushWord #30
|
||||
@ -337,7 +348,6 @@ doLOAD rep #$30
|
||||
|
||||
jsr loadBACK
|
||||
jsr doSOUNDON
|
||||
rep #$30
|
||||
|
||||
lda replyPTR
|
||||
bne doLOAD1
|
||||
@ -345,16 +355,13 @@ doLOAD rep #$30
|
||||
|
||||
doLOAD1 jsr copyPATH
|
||||
jsr loadALL
|
||||
sep #$30
|
||||
rts
|
||||
|
||||
mx %
|
||||
mx %00
|
||||
|
||||
*----------------------------------- Save
|
||||
|
||||
doSAVE rep #$30
|
||||
jsr doSOUNDOFF
|
||||
rep #$30
|
||||
doSAVE jsr doSOUNDOFF
|
||||
jsr saveBACK
|
||||
|
||||
PushWord #25
|
||||
@ -367,7 +374,6 @@ doSAVE rep #$30
|
||||
|
||||
jsr loadBACK
|
||||
jsr doSOUNDON
|
||||
rep #$30
|
||||
|
||||
lda replyPTR
|
||||
bne doSAVE1
|
||||
@ -375,7 +381,6 @@ doSAVE rep #$30
|
||||
|
||||
doSAVE1 jsr copyPATH
|
||||
jsr saveALL
|
||||
sep #$30
|
||||
rts
|
||||
|
||||
*--- Recopie le filename du fichier de sauvegarde
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -12,14 +12,10 @@
|
||||
* SOFTSWITCHES AND FRIENDS
|
||||
*-----------------------------------
|
||||
|
||||
CH = $24 ; cursor horizontal position
|
||||
CV = CH+2 ; cursor vertical position
|
||||
LINNUM = $50 ; result from GETADR
|
||||
|
||||
textX = $30 ; les X/Y pour afficher les
|
||||
textY = textX+2 ; caracteres QuickDraw II
|
||||
|
||||
nbOaP = 10 ; on peut porter dix objets
|
||||
LINNUM = $50 ; result from GETADR
|
||||
|
||||
chrLA = $08
|
||||
chrRA = $15
|
||||
@ -32,6 +28,7 @@ chrOUI = 'O'
|
||||
chrNON = 'N'
|
||||
|
||||
idxTIMER = 200
|
||||
idxMUSIC = 201
|
||||
|
||||
*-----------------------------------
|
||||
|
||||
@ -84,20 +81,14 @@ idxTIMER = 200
|
||||
PLAY sep #$30
|
||||
jsr initALL
|
||||
REPLAY sep #$30
|
||||
jsr HGR
|
||||
|
||||
* jsr HOME ; clear text screen
|
||||
* lda #0 ; move cursor to 0,16 au lieu de 0,20
|
||||
* sta CH
|
||||
* lda #16 ; au lieu de 20 LoGo
|
||||
* sta CV
|
||||
* jsr TABV ; on a 20 lignes de 10 caract<63>res de haut
|
||||
|
||||
lda #0
|
||||
sta textX
|
||||
jsr FULLHGR
|
||||
|
||||
rep #$30 ; init 16-bits, c'est mieux
|
||||
stz textX
|
||||
lda #row16
|
||||
sta textY
|
||||
|
||||
sep #$30
|
||||
|
||||
*-----------------------------------
|
||||
* DU BASIC A L'ASSEMBLEUR (BEURK)
|
||||
*-----------------------------------
|
||||
@ -150,12 +141,11 @@ REPLAY sep #$30
|
||||
:110 jmp :200
|
||||
|
||||
:130 jsr HGR
|
||||
jsr setMIXEDON
|
||||
@print #strILFAITNOIR
|
||||
jsr :30000
|
||||
jmp :500
|
||||
|
||||
:140 jsr HGR
|
||||
jsr setMIXEDON
|
||||
@print #strVOSYEUX
|
||||
jmp :500
|
||||
|
||||
@ -163,7 +153,7 @@ REPLAY sep #$30
|
||||
* 200 - description salle
|
||||
*-----------------------------------
|
||||
|
||||
:200 jsr setHGR
|
||||
:200 jsr HGR
|
||||
@draw SALLE
|
||||
|
||||
lda A2 ; trace des dessins
|
||||
@ -258,7 +248,7 @@ REPLAY sep #$30
|
||||
bcc :310
|
||||
beq :310
|
||||
|
||||
@print #strRETURN
|
||||
* @print #strRETURN
|
||||
|
||||
*-----------------------------------
|
||||
* 500 - ACCEPTATION COMMANDE
|
||||
@ -305,11 +295,17 @@ REPLAY sep #$30
|
||||
*-----------------------------------
|
||||
|
||||
:900 cmp #idxTIMER
|
||||
bne :915
|
||||
bne :905
|
||||
|
||||
jsr switchENERGIE
|
||||
jmp :100
|
||||
|
||||
:905 cmp #idxMUSIC
|
||||
bne :915
|
||||
|
||||
jsr switchMUSIC
|
||||
jmp :100
|
||||
|
||||
*-----------------------------------
|
||||
* 910 - CONTROLE MVT
|
||||
*-----------------------------------
|
||||
@ -914,7 +910,7 @@ tbl4000 da $bdbd,:4010,:4020,:4030,:4040,:4050,:4060,:4070,:4080,:4090
|
||||
:4250 @print #str4250
|
||||
rts
|
||||
|
||||
:4260 jsr setHGR
|
||||
:4260 jsr HGR
|
||||
@draw #57
|
||||
lda #44
|
||||
sta SALLE
|
||||
@ -990,7 +986,7 @@ tbl4000 da $bdbd,:4010,:4020,:4030,:4040,:4050,:4060,:4070,:4080,:4090
|
||||
bne :4481
|
||||
jmp :500
|
||||
:4481 @print #str4480
|
||||
jmp :perdu
|
||||
jmp :perdu_bis
|
||||
|
||||
:4490 @print #str4490
|
||||
@print #str4491
|
||||
@ -1011,7 +1007,7 @@ tbl4000 da $bdbd,:4010,:4020,:4030,:4040,:4050,:4060,:4070,:4080,:4090
|
||||
:4540 @print #str4540
|
||||
rts
|
||||
|
||||
:4550 jsr setHGR
|
||||
:4550 jsr HGR
|
||||
@draw #56 ; LOGO
|
||||
jsr :12020
|
||||
lda #21
|
||||
@ -1087,11 +1083,20 @@ MDP$ asc 'MANOIR'
|
||||
|
||||
*----------- SAVE - LOGO
|
||||
|
||||
:4590 jmp doSAVE
|
||||
|
||||
:4590 stz fgTIME
|
||||
rep #$30
|
||||
jsr doSAVE
|
||||
sep #$30
|
||||
inc fgTIME
|
||||
rts
|
||||
|
||||
*----------- LOAD - LOGO
|
||||
|
||||
:4600 jsr doLOAD
|
||||
:4600 stz fgTIME
|
||||
rep #$30
|
||||
jsr doLOAD
|
||||
sep #$30
|
||||
inc fgTIME
|
||||
jmp REPLAY
|
||||
|
||||
*----------- LE MOT DE PASSE FINAL
|
||||
@ -1121,8 +1126,6 @@ MDP$ asc 'MANOIR'
|
||||
@print #str4618_1
|
||||
@wait #200
|
||||
@print #str4618_2
|
||||
@wait #200
|
||||
@print #str4618_3
|
||||
jmp :perdu
|
||||
|
||||
:4620 @explode
|
||||
@ -1156,7 +1159,7 @@ MDP$ asc 'MANOIR'
|
||||
|
||||
:4710 lda SALLE
|
||||
pha
|
||||
jsr setHGR
|
||||
jsr HGR
|
||||
@draw #54
|
||||
pla
|
||||
sta SALLE
|
||||
@ -1164,7 +1167,7 @@ MDP$ asc 'MANOIR'
|
||||
|
||||
:4720 lda SALLE
|
||||
pha
|
||||
jsr setHGR
|
||||
jsr HGR
|
||||
@draw #55
|
||||
pla
|
||||
sta SALLE
|
||||
@ -1277,7 +1280,8 @@ MDP$ asc 'MANOIR'
|
||||
|
||||
*-----------
|
||||
|
||||
:5500 @print #str5500
|
||||
:5500 stz fgTIME
|
||||
@print #str5500
|
||||
jsr GETLN1
|
||||
cpx #1
|
||||
bne :5500
|
||||
@ -1287,7 +1291,8 @@ MDP$ asc 'MANOIR'
|
||||
beq :5510
|
||||
cmp #chrNON
|
||||
bne :5500
|
||||
:5510 rts
|
||||
:5510 inc fgTIME
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
* 6000 - ANALYSE DU MOT
|
||||
@ -1444,28 +1449,12 @@ MDP$ asc 'MANOIR'
|
||||
* 8000 - CHARGEMENT VARIABLES
|
||||
*-----------------------------------
|
||||
|
||||
initALL
|
||||
ldx #FIN_DATA-DEBUT_DATA
|
||||
initALL ldx #FIN_DATA-DEBUT_DATA
|
||||
lda #0
|
||||
]lp sta A1-1,x
|
||||
dex
|
||||
bne ]lp
|
||||
|
||||
*---
|
||||
|
||||
lda #11
|
||||
sta SALLE
|
||||
|
||||
lda #<4000
|
||||
sta FORCE
|
||||
lda #>4000
|
||||
sta FORCE+1
|
||||
|
||||
lda #20
|
||||
sta MINUTES
|
||||
lda #0
|
||||
sta SECONDES
|
||||
|
||||
*--- ligne 51
|
||||
|
||||
ldx #8
|
||||
@ -1527,6 +1516,24 @@ initALL
|
||||
sta O,x
|
||||
dex
|
||||
bpl ]lp
|
||||
|
||||
*---
|
||||
|
||||
lda #11
|
||||
sta SALLE
|
||||
|
||||
lda #<4000
|
||||
sta FORCE
|
||||
lda #>4000
|
||||
sta FORCE+1
|
||||
|
||||
lda #$20
|
||||
sta MINUTES
|
||||
lda #$00
|
||||
sta SECONDES
|
||||
|
||||
lda #1 ; le temps dŽmarre !
|
||||
sta fgTIME
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
@ -1545,22 +1552,36 @@ initALL
|
||||
|
||||
:30000 rts
|
||||
|
||||
rep #$30
|
||||
PushWord #12
|
||||
PushWord #190
|
||||
_MoveTo
|
||||
|
||||
PushLong #MP$
|
||||
_DrawCString
|
||||
sep #$30
|
||||
rts
|
||||
|
||||
*-----------------------------------
|
||||
* 20000 - PERDU
|
||||
*-----------------------------------
|
||||
|
||||
:perdu @wait #200
|
||||
:perdu stz fgTIME
|
||||
@wait #200
|
||||
@explode
|
||||
jsr setTEXTFULL
|
||||
@print #strPERDU
|
||||
bra :20050
|
||||
|
||||
:20050 ; commun avec gagne
|
||||
]lp @print #strREPLAY
|
||||
:perdu_bis @wait #200
|
||||
@explode
|
||||
|
||||
:20050 @print #strREPLAY ; commun avec gagne
|
||||
jsr translateKEY
|
||||
cmp #chrNON
|
||||
beq :20001
|
||||
cmp #chrOUI
|
||||
bne ]lp
|
||||
bne :20050
|
||||
jmp PLAY
|
||||
|
||||
:20001 jmp QUIT ; return to the IIgs
|
||||
@ -1569,7 +1590,9 @@ initALL
|
||||
* 32000 - GAGNE
|
||||
*-----------------------------------
|
||||
|
||||
:gagne
|
||||
:gagne stz fgTIME
|
||||
@wait #200
|
||||
@explode
|
||||
jsr setTEXTFULL
|
||||
@print #strGAGNE
|
||||
jmp :20050
|
||||
@ -1582,13 +1605,23 @@ initALL
|
||||
* setTEXTFULL
|
||||
*----------------------
|
||||
|
||||
setTEXTFULL rts ; 40x24 text
|
||||
mx %11
|
||||
|
||||
setTEXTFULL jsr HGR
|
||||
rep #$30
|
||||
|
||||
stz textX
|
||||
lda #row0
|
||||
sta textY
|
||||
|
||||
sep #$30
|
||||
rts ; 40x24 text
|
||||
|
||||
*----------------------
|
||||
* setHGR
|
||||
* LE TEMPS EST ECOULE
|
||||
*----------------------
|
||||
|
||||
setHGR jmp HGR
|
||||
nomoreTIME jmp :4650
|
||||
|
||||
*----------------------
|
||||
* GETLEN1 par LoGo
|
||||
@ -1597,7 +1630,10 @@ setHGR jmp HGR
|
||||
mx %11
|
||||
|
||||
GETLN1 ldx #0
|
||||
GETLN2 stx lenSTRING
|
||||
]lp jsr RDKEY
|
||||
bcs nomoreTIME
|
||||
ldx lenSTRING
|
||||
cmp #chrRET
|
||||
beq doRET
|
||||
cmp #chrDEL
|
||||
@ -1606,25 +1642,35 @@ GETLN1 ldx #0
|
||||
beq doBACK
|
||||
cmp #chrSPC ; must not be another control character
|
||||
bcc ]lp
|
||||
beq doSPC
|
||||
|
||||
jsr testENERGIE
|
||||
|
||||
sta TEXTBUFFER,x
|
||||
doIT sta TEXTBUFFER,x
|
||||
jsr COUT
|
||||
doNEXT inx
|
||||
doNEXT ldx lenSTRING
|
||||
inx
|
||||
cpx #maxLEN
|
||||
bcc ]lp
|
||||
bcc GETLN2
|
||||
|
||||
doEXIT lda #chrRET
|
||||
sta TEXTBUFFER,x
|
||||
stx lenSTRING
|
||||
jmp COUT
|
||||
jsr CURSOR_ERASE
|
||||
lda #chrRET
|
||||
jsr COUT
|
||||
ldx lenSTRING
|
||||
rts
|
||||
|
||||
doSPC jsr WHITE_SPACE
|
||||
ldx lenSTRING
|
||||
lda #chrSPC
|
||||
bra doIT
|
||||
|
||||
doBACK cpx #0
|
||||
beq ]lp
|
||||
jsr CURSOR_ERASE ; contains dec CH & TABV
|
||||
jsr CURSOR_ERASE
|
||||
ldx lenSTRING
|
||||
dex
|
||||
jmp ]lp
|
||||
jmp GETLN2
|
||||
|
||||
doRET cpx #0
|
||||
bne doEXIT
|
||||
@ -1632,42 +1678,72 @@ doRET cpx #0
|
||||
jsr switchVIDEO
|
||||
jmp ]lp
|
||||
|
||||
*----------------------
|
||||
* MUSIQUE
|
||||
*----------------------
|
||||
|
||||
switchMUSIC
|
||||
lda #0
|
||||
eor #1
|
||||
sta switchMUSIC+1
|
||||
bne smoff
|
||||
|
||||
rep #$30
|
||||
jsr doSOUNDON
|
||||
sep #$30
|
||||
rts
|
||||
|
||||
smoff rep #$30
|
||||
jsr doSOUNDOFF
|
||||
sep #$30
|
||||
rts
|
||||
|
||||
*----------------------
|
||||
* ENERGIE
|
||||
*----------------------
|
||||
|
||||
mx %11
|
||||
|
||||
switchENERGIE
|
||||
lda #0
|
||||
eor #1
|
||||
sta switchENERGIE+1
|
||||
rts
|
||||
|
||||
testENERGIE rts
|
||||
testENERGIE sep #$30
|
||||
lda switchENERGIE+1 ; switch is off
|
||||
bne te_ok
|
||||
|
||||
lda fgTIME
|
||||
beq te_ok
|
||||
|
||||
lda fgPERDU
|
||||
bne te_ok
|
||||
|
||||
lda MINUTES ; reste-t-il des minutes
|
||||
ora SECONDES ; ou des secondes ?
|
||||
bne te_ok
|
||||
|
||||
lda #1
|
||||
sta fgPERDU
|
||||
|
||||
rep #$30
|
||||
sec ; non, on a perdu
|
||||
rts
|
||||
|
||||
te_ok rep #$30
|
||||
clc
|
||||
rts
|
||||
|
||||
mx %11
|
||||
|
||||
*----------------------
|
||||
* switchVIDEO
|
||||
*----------------------
|
||||
|
||||
switchVIDEO lda #0
|
||||
eor #1
|
||||
sta switchVIDEO+1
|
||||
bne setMIXEDOFF
|
||||
mx %00
|
||||
|
||||
*----------------------
|
||||
* setMIXEDON
|
||||
*----------------------
|
||||
|
||||
setMIXEDON ; HGR + 4 LINES OF TEXT
|
||||
* rts
|
||||
|
||||
*----------------------
|
||||
* setMIXEDOFF
|
||||
*----------------------
|
||||
|
||||
setMIXEDOFF ; FULL HGR
|
||||
* rts
|
||||
|
||||
rep #$30
|
||||
switchVIDEO rep #$30
|
||||
lda ptrSCREEN
|
||||
sta dpTO
|
||||
lda ptrSCREEN+2
|
||||
@ -1695,6 +1771,8 @@ setMIXEDOFF ; FULL HGR
|
||||
* printCSTR
|
||||
*----------------------
|
||||
|
||||
mx %11
|
||||
|
||||
printCSTRING
|
||||
sty pcs1+1
|
||||
stx pcs1+2
|
||||
@ -1715,6 +1793,8 @@ pcs3 rts
|
||||
* waitMS
|
||||
*----------------------
|
||||
|
||||
mx %11
|
||||
|
||||
switchWAIT lda waitMS+1
|
||||
eor #1
|
||||
sta waitMS+1
|
||||
@ -1739,6 +1819,8 @@ waitMS9 rts
|
||||
* rewriteSTRING (lower -> upper)
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
|
||||
rewriteSTRING
|
||||
ldx #0
|
||||
]lp ldy TEXTBUFFER,x
|
||||
@ -1753,9 +1835,13 @@ rewriteSTRING
|
||||
* translateKEY (lower -> upper)
|
||||
*-----------------------------------
|
||||
|
||||
mx %11
|
||||
|
||||
translateKEY
|
||||
jsr RDKEY
|
||||
tax
|
||||
pha
|
||||
jsr COUT
|
||||
plx
|
||||
lda tblKEY,x
|
||||
rts
|
||||
|
||||
@ -1803,11 +1889,18 @@ SALLE ds 1
|
||||
T ds 1
|
||||
lenSTRING ds 1
|
||||
|
||||
MINUTES ds 2 ; 0..20 en dŽcimal
|
||||
SECONDES ds 2 ; 0..59
|
||||
fgTIME ds 2 ; 0: off, 1: on
|
||||
fgPERDU ds 2 ; 1: perdu
|
||||
|
||||
MINUTES ds 1 ; 0..20 en dŽcimal
|
||||
SECONDES ds 1 ; 0..59
|
||||
|
||||
MP$ ds 6 ; le mot de passe ˆ trouver (5 + 00)
|
||||
|
||||
O dfb $bd
|
||||
dfb 40,33,41,53,43,10,00,21,22,26
|
||||
dfb 01,06,00,17,20,00,47,19,00
|
||||
|
||||
C ds 32+1
|
||||
E$ ds 32 ; the longest string
|
||||
P ds 32+1
|
||||
|
BIN
leretour/images/leretour est fini.jpg
Normal file
BIN
leretour/images/leretour est fini.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 180 KiB |
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user