VF terminée

This commit is contained in:
Antoine Vignau 2024-01-11 14:28:30 +01:00
parent bf9a53f9c1
commit ca6876e4cd
16 changed files with 37920 additions and 26425 deletions

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1 @@
dracula=Type(06),AuxType(1000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
lemonde=Type(06),AuxType(1000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
iigs=Type(B3),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
RetourDrGenius=Type(B3),AuxType(0000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)

View File

@ -13,24 +13,24 @@ strVOUSDETENEZ
asc 'Vous avez en votre possession : '00
strVOUSRIEN
asc 'Vous ne devez pas etre fatigue, vous'0D
asc 'Vous ne devez pas '90'tre fatigu'8e', vous'0D
asc 'n'27'avez rien sur vous'00
strPOINT
asc '.'00
strVOUSLAVEZ
asc 0D'Vous avez deja cela... Etourdi !'0D00
asc 0D'Vous avez d'8e'j'88' cela... Etourdi !'0D00
strNOTOWNED
asc 0D'Je ne savais pas qu'27'on pouvait poser'0D
asc 'ce qu'27'on ne possede pas...'0D00
asc 'ce qu'27'on ne poss'8f'de pas...'0D00
strDACCORD
asc 'D'27'accord'00
strILFAITNOIR
asc 'La salle n'27'est pas eclairee.'0D00
asc 'La salle n'27'est pas '8e'clair'8e'e.'0D00
strVOSYEUX asc 'Vos yeux ne voient plus rien.'0D00
@ -56,24 +56,24 @@ strEXCLAM
strREPLAY asc 0D'Voulez-vous rejouer ? '00
strPERDU asc 0d'Comme je le pensais, vous vous etes'0d
strPERDU asc 0d'Comme je le pensais, vous vous '90'tes'0d
asc 'stupidement fait avoir, et votre cadavre'
asc '(ou ce qu'27'il en reste) reposera a jamais'
asc '(ou ce qu'27'il en reste) reposera '88' 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 'Prenez peur, car le jour o'9d' je serai'0d
asc 88' nouveau l'88', ma puissance n'27'aura plus'0d
asc 'de limites, alors l'27'heure de la souf-'0d
asc '-france aura sonne...'0d
asc '-france aura sonn'8e'...'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
asc ' 400 unit'8e's de force pour'0d
asc ' remplir votre mission...'00
*-----------------------------------
@ -262,24 +262,24 @@ tblO$ da $bdbd
da O$11,O$12,O$13,O$14,O$15,O$16,O$17,O$18,O$19
O$1 asc 'Un pistolet laser'00
O$2 asc 'Des gants ensanglantes'00
O$3 asc 'Une bombe a retardement'00
O$2 asc 'Des gants ensanglant'8e's'00
O$3 asc 'Une bombe '88' retardement'00
O$4 asc 'Un tube'00
O$5 asc 'Une glaciere'00
O$6 asc 'Une boite vide'00
O$7 asc 'Une boite pleine d'27'eau'00
O$5 asc 'Une glaci'8f're'00
O$6 asc 'Une bo'94'te vide'00
O$7 asc 'Une bo'94'te pleine d'27'eau'00
O$8 asc 'Un vaporisateur'00
O$9 asc 'Un magnetophone'00
O$9 asc 'Un magn'8e'tophone'00
O$10 asc 'Un compteur Geiger'00
O$11 asc 'Un ventilateur'00
O$12 asc 'Un casque'00
O$13 asc 'Un casque enfile'00
O$14 asc 'Des echasses'00
O$13 asc 'Un casque enfi'8e00
O$14 asc 'Des '8e'chasses'00
O$15 asc 'Des containers'00
O$16 asc 'Une radiocommande'00
O$17 asc 'Des lunettes de soleil'00
O$18 asc 'Une tronconneuse'00
O$19 asc 'La glaciere avec le tube a l'27'interieur'00
O$18 asc 'Une tron'8d'onneuse'00
O$19 asc 'La glaci'8f're avec le tube '88' l'27'int'8e'rieur'00
*
* Les directions
@ -570,66 +570,66 @@ V$201 str 'MUSI'
* '0123456789012345678901234567890123456789'
* '----------------------------------------'
str4010 asc 'Une boule d'27'acier tombee du plafond'0d
asc 'vient de s'27'ecraser sur votre casque.'00
str4010 asc 'Une boule d'27'acier tomb'8e'e du plafond'0d
asc 'vient de s'278e'craser sur votre casque.'00
str4020 asc 'Une boule d'27'acier vient de tomber du'0d
asc 'plafond, vous avez le crane defonce...'00
asc 'plafond, vous avez le cr'89'ne d'8e'fonc'8e'...'00
str4030 asc 'Vous venez de tomber dans une flaque d'270d
asc 'acide, ca crepite...'00
str4040 asc 'Vous venez de rentrer dans le reacteur'0d
asc 'acide, '8d'a cr'8e'pite...'00
str4040 asc 'Vous venez de rentrer dans le r'8e'acteur'0d
asc 'atomique du vaisseau..!'00
str4050 asc 'La porte ne veut pas s'27'ouvrir'00
str4060 asc 'Un peu de memoire... Comment etes-vous'0d
asc 'entre ?'00
str4070 asc 'Je ne vous savais pas assez muscle pour '
str4060 asc 'Un peu de m'8e'moire... Comment '90'tes-vous'0d
asc 'entr'8e' ?'00
str4070 asc 'Je ne vous savais pas assez muscl'8e' pour '
asc 'soulever une tonne.'00
str4080 asc 'Vous avez raison, la vue c'27'est la vie !'00
str4090 asc 'Les gants etaient radioactifs, vous'0d
str4090 asc 'Les gants '8e'taient radioactifs, vous'0d
asc 'perdez la vue.'00
str4100 asc 'Vous l'27'avez deja sur vous.'00
str4100 asc 'Vous l'27'avez d'8e'j'88' sur vous.'00
str4110 asc 'Impossible, je ne vois pas ceci ici.'00
str4120 asc 'Vous vous arrachez la tete en tombant'0d
asc 'des echasses.'00
str4120 asc 'Vous vous arrachez la t'90'te en tombant'0d
asc 'des '8e'chasses.'00
str4130 asc 'Des monstres sortis des containers vous '
asc 'devorent tout cru !'00
asc 'd'8e'vorent tout cru !'00
str4140 asc 'L'27'air frais vous fait du bien. Dommage'0d
asc 'que l'27'helice vous ait coupe la tete.'00
str4150 asc 'Qu'27'est ce que vous voulez boire ???'00
asc 'que l'27'h'8e'lice vous ait coup'8e' la t'90'te.'00
str4150 asc 'Qu'27'est-ce que vous voulez boire ???'00
str4160 asc 'Ah oui...l'27'eau est bonne.'00
str4170 asc 'Il n'27'y a pas d'27'eau ici.'00
str4180 asc 'L'27'eau etait contaminee par les boites'0d
str4180 asc 'L'27'eau '8e'tait contamin'8e'e par les bo'94'tes'0d
asc 'radioactives.'00
str4190 asc 'Vous retrecissez..petit..petit..et une'0d
asc 'araignee vous mange !'00
str4200 asc 'Ca coupe une tronconneuse, comme le'0d
asc 'prouve votre tete au sol.'00
str4190 asc 'Vous r'8e'trecissez..petit..petit..et une'0d
asc 'araign'8e'e vous mange !'00
str4200 asc 'Ca coupe une tron'8d'onneuse, comme le'0d
asc 'prouve votre t'90'te au sol.'00
str4210 asc 'Vous glissez et tombez dans la flaque.'0d
asc 'L'27'acide crepite.'00
str4220 asc 'Il n'27'y a pas ici de porte verrouillee'
asc 'L'27'acide cr'8e'pite.'00
str4220 asc 'Il n'27'y a pas ici de porte verrouill'8e'e'
str4230 asc 'En secouant le tube pour l'27'ouvrir,'0d
asc 'la nitroglycerine a explose.'00
asc 'la nitroglyc'8e'rine a explos'8e'.'00
str4240 asc 'Pourquoi ouvrir un robinet qui ne ferme '
asc 'pas !'00
str4250 asc 'Le robinet ne se ferme pas.'00
str4260 asc ''00
str4270 asc 'La bibliotheque n'27'a pas de porte...'00
str4270 asc 'La biblioth'8f'que n'27'a pas de porte...'00
str4280 asc 'Il n'27'y a rien de mieux sur les autres'0d
asc 'pages.'00
str4290 asc '...c'27'est toi J.R qui a pris ma femme et '
asc 'mon petrole, tu es infame.'00
str4300 asc 'Collection Arlepin, tout un reve'0d
asc 'd'27'evasion.'00
str4310 asc '...et c'27'est moi Genius le grand qui crea'
asc 'mon p'8e'trole, tu es inf'89'me.'00
str4300 asc 'Collection Arlepin, tout un r'90've'0d
asc 'd'278e'vasion.'00
str4310 asc '...et c'27'est moi Genius le grand qui cr'8e'a'
asc 'un superbe manoir...'00
str4320 asc '1031141221242713182310291430271214232927102110272718311427103023141427142324303114212114'00
str4321 asc ' <tapez une touche> '00
str4330 asc 'Vous l'27'avez deja fait.'00
str4330 asc 'Vous l'27'avez d'8e'j'88' fait.'00
str4340 asc 'Le laser vient d'27'exploser.'00
str4350 asc 'Il ne se passe rien.'00
str4360 asc 'Le sas s'27'ouvre, vous passez dans la'0d
asc 'salle a cote.'00
str4370 asc 'Cela agit sur un contacteur a infrarouge'
asc 'qui commande l'27'eclairage.'00
asc 'salle '88' c'99't'8e'.'00
str4370 asc 'Cela agit sur un contacteur '88' infrarouge'
asc 'qui commande l'278e'clairage.'00
str4380 asc 'Allons enfants de la patrie...'00
str4390 asc 'Vous entendez : '27'Le laser ouvrira la'0d
asc 'porte'2700
@ -637,122 +637,122 @@ str4400 asc 'Les lunettes sont trop fortes, vous'0d
asc 'voyez trouble.'00
str4410 asc 'La salle est radioactive.'00
str4420 asc 'Vous avez quelque chose pour ?'00
str4430 asc 'C'27'est votre probleme, mais le temps'0d
str4430 asc 'C'27'est votre probl'8f'me, mais le temps'0d
asc 'passe.'00
str4440 asc 'Avez-vous si sommeil que ca ?'00
str4450 asc 'Et puis quoi encore !'00
str4460 asc 'Faites un plan...'00
str4470 asc 'Vous entendez le ronronnement des'0d
asc 'moteurs.'00
str4480 asc 'J'27'etais sur que vous etiez un lache.'00
str4490 asc 'Vous passez la tete a travers un sas,'00
str4480 asc 'J'278e'tais s'9e'r que vous '8e'tiez un l'89'che.'00
str4490 asc 'Vous passez la t'90'te '88' travers un sas,'00
str4491 asc 'et appuyez sur le bouton de fermeture'00
str4500 asc 'Quel bouton ?'00
str4510 asc 'Les boutons ne fonctionnent pas car'0d
asc 'l'27'ordinateur central les controle.'00
str4520 asc 'Le systeme automatique est deregle, il'0d
asc 'met du gaz carbonique a la place de'0d
asc 'l'27'oxygene.'00
asc 'l'27'ordinateur central les contr'99'le.'00
str4520 asc 'Le syst'8f'me automatique est d'8e'r'8e'gl'8e', il'0d
asc 'met du gaz carbonique '88' la place de'0d
asc 'l'27'oxyg'8f'ne.'00
str4530 asc 'Vous respirez un grand coup.'00
str4540 asc 'Que voulez-vous respirer ? Il n'27'y a plus'
asc 'd'27'oxygene.'00
asc 'd'27'oxyg'8f'ne.'00
str4550 asc 'Vous avez deux essais pour'00
str4552 asc 'entrer le mot de passe.'00
str4553 asc 'FAUX!'00
str4554 asc 'Encore rate. L'27'ordinateur vous explose a'
str4554 asc 'Encore rat'8e'. L'27'ordinateur vous explose '88
asc 'la figure.'00
str4556 asc 'Mot de passe '00
str4558 asc 'Exact, vous etes perspicace !'00
str4558 asc 'Exact, vous '90'tes perspicace !'00
str4559_1 asc 'UIN LOI QRU ILD ESP ECU TAS'00
str4559_2 asc 'ASU VIE RAL HOU MEA NOI THE'00
str4559_3 asc 'Le mot de passe pour le'00
str4559_4 asc 'retour est : '00
str4560 asc 'C'27'est d'27'accord.'00
str4570 asc 'Il etait temps, vous alliez mourir.'00
str4580 asc 'Vous mourrez deshydrate.'00
str4570 asc 'Il '8e'tait temps, vous alliez mourir.'00
str4580 asc 'Vous mourrez d'8e'shydrat'8e'.'00
str4590 asc ''00
str4600 asc ''00
str4610 asc 'Le sas se referme derriere vous,'0d
asc 'le tableau de controle s'27'allume et'0d
str4610 asc 'Le sas se referme d'8f'rriere vous,'0d
asc 'le tableau de contr'99'le s'27'allume et'0d
asc 'l'27'ordinateur de bord vous demande le'0d
asc 'mot de passe pour le retour'00
str4615 asc 'Le vaisseau de secours s'27'eloigne,'0d
str4615 asc 'Le vaisseau de secours s'278e'loigne,'0d
asc 'au loin vous voyez Genius qui pleure'0d
asc 'derriere un hublot'00
asc 'derri'8f're un hublot'00
str4616 asc ' VOUS AVEZ GAGNE'00
str4618_1 asc 'Mais, que se passe-t-il, vous avez du'0d
str4618_1 asc 'Mais, que se passe-t-il, vous avez d'9e0d
asc 'vous tromper de mot de passe, votre'0d
asc 'vaisseau de poche fonce sur le soleil.'00
str4618_2 asc 'Vous venez de realiser que Genius'0d
str4618_2 asc 'Vous venez de r'8e'aliser que Genius'0d
asc 'pleurait de JOIE...!'00
str4620 asc 'La soucoupe a explose au decollage.'00
str4620 asc 'La soucoupe a explos'8e' au d'8e'collage.'00
str4630 asc 'Energie restante :'00
str4640 asc 'Petit drole... Le chronometre est'0d
asc 'affiche en permanence'00
str4640 asc 'Petit dr'99'le... Le chronom'8f'tre est'0d
asc 'affich'8e' en permanence'00
str4650 asc 0d'Le temps que vous aviez pour votre'0d
asc 'mission est ecoule, vous avez echoue.'00
asc 'mission est '8e'coul'8e', vous avez '8e'chou'8e'.'00
str4660 asc 'Votre trajectoire est bonne, pourquoi la'
asc 'corriger ?'00
str4670 asc 'Le mur au nord coulisse, vous avancez'0d
asc 'dans cette salle.'00
str4680 asc 'Quel livre ?'00
str4690 asc 'Au dos du boitier est marque :'00
str4690 asc 'Au dos du bo'94'tier est marqu'8e' :'00
str4692 asc ' '27'PROTEGEZ MOI'A700
str4700 asc 'Vous remarquez un boitier de radio-'0d
str4700 asc 'Vous remarquez un bo'94'tier de radio-'0d
asc 'commande.'00
str4710 asc ''00
str4720 asc ''00
str4730 asc 'Que regardez vous ?'00
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
str4760 asc 'La bombe a retardement a explose, elle a'
asc 'endommage le systeme de chauffage,'0d
asc 'vous etes carbonise'00
str4770 asc 'La bombe a explose, vous etiez trop pres'
asc 'et etes devenu fou...'00
str4780 asc 'La bombe a retardement n'27'etait pas assez'
str4740 asc 0d'Le tube de nitroglyc'8e'rine vient d'270d
asc 'exploser, vous '90'tes pulv'8e'ris'8e'.'00
str4750 asc 'La bombe '88' retardement vient d'270d
asc 'exploser, vous '90'tes pulv'8e'ris'8e'.'00
str4760 asc 'La bombe '88' retardement a explos'8e', elle a'
asc 'endommag'8e' le syst'8f'me de chauffage,'0d
asc 'vous '90'tes carbonis'8e00
str4770 asc 'La bombe a explos'8e', vous '8e'tiez trop pr'8f's'
asc 'et '90'tes devenu fou...'00
str4780 asc 'La bombe '88' retardement n'278e'tait pas assez'
asc 'forte, l'27'ordinateur central n'27'est qu'270d
asc 'endommage, il vous fait exploser...'00
str4790 asc 'Bravo! L'27'ordinateur central est detruit,'
asc 'mais le systeme d'27'oxygenation ne fonc-'0d
asc 'endommag'8e', il vous fait exploser...'00
str4790 asc 'Bravo! L'27'ordinateur central est d'8e'truit,'
asc 'mais le syst'8f'me d'27'oxyg'8e'nation ne fonc-'0d
asc '-tionne plus, de plus la trajectoire du'0d
asc 'vaisseau a change.'00
asc 'vaisseau a chang'8e'.'00
str4800 asc 'Vous n'27'avez plus de souffle,'0d
asc 'vous etes mort asphyxie.'00
str4810 asc 'Vous auriez du corriger la trajectoire,'0d
asc 'vous avez percute le soleil.'00
asc 'vous '90'tes mort asphyxi'8e'.'00
str4810 asc 'Vous auriez d'9e' corriger la trajectoire,'0d
asc 'vous avez percut'8e' le soleil.'00
str4820 asc 'A force de traverser les salles radio-'0d
asc '-actives, vous etes mort contamine.'00
asc '-actives, vous '90'tes mort contamin'8e'.'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
str4840 asc 'L'27'ordinateur vient d'27'exploser !'00
str4845 asc 'Vous avez d'9e' le laisser allum'8e'.'00
str4850 asc 'Comment !!! Vous '90'tes aveugle.'00
str4860 asc 'Vous n'27'aviez pas pris la radiocommande'0d
asc 'qui a explose quand le vaisseau a percu-'
asc '-te le soleil, son explosion a declenche'
asc 'qui a explos'8e' quand le vaisseau a percu-'
asc '-te le soleil, son explosion a d'8e'clench'8e
asc 'la fin du monde.'00
str4870 asc 'Non ! pas de strip-tease.'00
str4874 asc 'Vous avez pose tout ce que vous'
str4874 asc 'Vous avez pos'8e' tout ce que vous'
asc 'transportiez.'00
str4880 asc 'Ca ne se demande pas.'00
str4890 asc 'Il y a effectivement un ordinateur parmi'
asc 'le tableau de controle.'00
asc 'le tableau de contr'99'le.'00
str4891 asc 'L'27'ordinateur n'27'est pas en fonction.'00
str4900 asc 'Sur le laser, vous voyez trois boutons :'
asc 'jaune, rouge et bleu.'00
str4910 asc 'Vous etes entre dans le desintegrateur'0d
str4910 asc 'Vous '90'tes entre dans le d'8e'sint'8e'grateur'0d
asc 'de particules...'00
str4920 asc 'Vous etes entre dans le vaisseau par le '
asc 'sas a l'27'ouest qui ne s'27'ouvre pas de'0d
asc 'l'27'interieur.'00
str4920 asc 'Vous '90'tes entr'8e' dans le vaisseau par le '
asc 'sas '88' l'27'ouest qui ne s'27'ouvre pas de'0d
asc 'l'27'int'8e'rieur.'00
str5500 asc 0d'Etes-vous sur (O/N) ? '00
str5500 asc 0d'Etes-vous s'9e'r (O/N) ? '00
str19050 asc ' Merci d'27'avoir essaye...!'00
str19060 asc ' Reveillez-vous , c'27'est fini !'00
str19050 asc ' Merci d'27'avoir essay'8e'...!'00
str19060 asc ' R'8e'veillez-vous , c'27'est fini !'00

Binary file not shown.

View File

@ -5,13 +5,26 @@
* (c) 2023, Brutal Deluxe Software (Apple II)
*
lst off
rel
dsk iigs.l
* Les accents (encore et toujours)
*
* ˆ 88
* 89
* <EFBFBD> 8d
* Ž 8e
* <EFBFBD> 8f
* <EFBFBD> 90
* 91
* 94
* 95
* 99
* <EFBFBD> 9d
* ž 9e
* (c) a9 (only c)
* oe cf
mx %00
xc
xc
rel
lst off
*-----------------------------------
* MACROS
@ -171,10 +184,10 @@ okMEM1 sty ptrTEXT
pha
pha
PushWord myID
PushWord #refIsPointer
PushLong #toolTBL
PushWord #refIsResource
PushLong #1
_StartUpTools
PullLong ssREC
PullLong ssREC
bcc okTOOL
pha
@ -249,8 +262,8 @@ okSHADOW
* IL FAUT JOUER MAINTENANT
*-----------------------------------
jsr initMIDI
jsr doSOUNDON
* jsr initMIDI
* jsr doSOUNDON
sei
PushLong #intTIME
@ -270,8 +283,8 @@ QUIT rep #$30
_DelHeartBeat
cli
meQUIT PushWord #refIsPointer
PushLong ssREC
meQUIT PushWord #refIsHandle
PushLong ssREC
_ShutDownTools
meQUIT1 PushWord myID
@ -324,7 +337,7 @@ make64KB pha
*-----------------------------------
saveBACK _HideCursor
PushLong #ptrE12000
PushLong ptrSCREEN
PushLong ptrBACKGND
PushLong #32768
_BlockMove
@ -337,7 +350,7 @@ saveBACK _HideCursor
loadBACK _HideCursor
PushLong ptrBACKGND
PushLong #ptrE12000
PushLong ptrSCREEN
PushLong #32768
_BlockMove
rts
@ -583,8 +596,20 @@ cyanPATTERN ds 32,$bb
ds 32,$ee
whitePATTERN ds 32,$ff
checkeredPATTERN
hex 0F0F0F0F
hex F0F0F0F0
hex 0F0F0F0F
hex F0F0F0F0
hex 0F0F0F0F
hex F0F0F0F0
hex 0F0F0F0F
hex F0F0F0F0
curPATTERN ds 32
curPENSIZE ds 4
*----------------------------------- Error messages
tolSTR1 str 'Error while loading tools'
@ -597,45 +622,45 @@ errSTR2 str ''
ssREC ds 4
toolTBL dw $0000 ; flags
dw $C000 ; videoMode (shadowing + fast port)
dw $0000 ; resFileID
ADRL $00000000 ; dPageHandle
dw $0011
dw $0003 ; Miscellaneous Tool
dw $0300
dw $0004 ; QuickDraw II
dw $0301
dw $0005 ; Desk Manager
dw $0302
dw $0006 ; Event Manager
dw $0300
dw $0008 ; Sound Tool Set
dw $0100
dw $000B ; Integer Math Tool Set
dw $0200
dw $000E ; Window Manager
dw $0301
dw $000F ; Menu Manager
dw $0301
dw $0010 ; Control Manager
dw $0301
dw $0012 ; QuickDraw II Auxiliary
dw $0301
dw $0014 ; LineEdit Tool Set
dw $0301
dw $0015 ; Dialog Manager
dw $0301
dw $0016 ; Scrap Manager
dw $0300
dw $0017 ; Standard File Tool Set
dw $0301
dw $001B ; Font Manager
dw $0301
dw $001C ; List Manager
dw $0301
dw $001E ; Resource Manager
dw $0100
*toolTBL dw $0000 ; flags
* dw $C000 ; videoMode (shadowing + fast port)
* dw $0000 ; resFileID
* ADRL $00000000 ; dPageHandle
* dw $0011
* dw $0003 ; Miscellaneous Tool
* dw $0300
* dw $0004 ; QuickDraw II
* dw $0301
* dw $0005 ; Desk Manager
* dw $0302
* dw $0006 ; Event Manager
* dw $0300
* dw $0008 ; Sound Tool Set
* dw $0100
* dw $000B ; Integer Math Tool Set
* dw $0200
* dw $000E ; Window Manager
* dw $0301
* dw $000F ; Menu Manager
* dw $0301
* dw $0010 ; Control Manager
* dw $0301
* dw $0012 ; QuickDraw II Auxiliary
* dw $0301
* dw $0014 ; LineEdit Tool Set
* dw $0301
* dw $0015 ; Dialog Manager
* dw $0301
* dw $0016 ; Scrap Manager
* dw $0300
* dw $0017 ; Standard File Tool Set
* dw $0301
* dw $001B ; Font Manager
* dw $0301
* dw $001C ; List Manager
* dw $0301
* dw $001E ; Resource Manager
* dw $0100
*----------------------------------- GS/OS

File diff suppressed because it is too large Load Diff

View File

@ -12,21 +12,32 @@
* SOFTSWITCHES AND FRIENDS
*-----------------------------------
ext picLORICIELS
ext txtINTRO1
ext txtINTRO2
ext txtINTRO3
ext txtINTRO4
ext txtINTRO5
ext txtINTRO6
ext txtINTRO7
ext picGENIUS
ext picMONDE
ext telexRECT
ext txtTELEX1
ext txtTELEX2
ext txtTELEX3
ext txtTELEX4
ext txtTELEX5
ext txtGENIUSTEXTE
ext txtSERPENT1
ext txtSERPENT2
ext txtSERPENT3
ext txtSERPENT4
ext txtTITRE1
ext txtTITRE2
ext txtTITRE3
ext ecritparRECT
ext txtECRITPAR1
ext txtECRITPAR2
@ -46,21 +57,116 @@
*-----------------------------------
intro
* jsr intro_telex
* bcs intro_end
* jsr intro_genius_texte
* bcs intro_end
* jsr intro_serpent
* bcs intro_end
jsr intro_ecritpar
jsr intro_intro ; faut soigner son ego
bcs intro_end
* jsr intro_monde
* bcs intro_end
* jsr intro_explications
* bcs intro_end
* jsr intro_genius_image
jsr intro_logo ; ok
bcs intro_end
jsr intro_telex ; ok
bcs intro_end
jsr intro_genius_texte ; ok
bcs intro_end
jsr intro_serpent ; ok
bcs intro_end
jsr intro_ecritpar ; ok (sauf les couleurs)
bcs intro_end
jsr intro_monde ; ok
bcs intro_end
jsr intro_explications ; ok
bcs intro_end
jsr intro_genius_image ; ok
intro_end rts
*-----------------------------------
* INTRO
*-----------------------------------
mx %00
iiY = 85
intro_intro
PushWord #0
_ClearScreen
ldy #198
lda #txtINTRO4
jsr centerME
ldy #iiY
lda #txtINTRO1
jsr centerME
ldy #iiY+20
lda #txtINTRO2
jsr centerME
ldy #iiY+40
lda #txtINTRO3
jsr centerME
ldy #60*1
jsr waitMS16
*----------- La suite du copyright
PushWord #0
_ClearScreen
ldy #iiY
lda #txtINTRO5
jsr centerME
ldy #iiY+20
lda #txtINTRO6
jsr centerME
ldy #iiY+40
lda #txtINTRO7
jsr centerME
ldy #60*1
jmp waitMS16
*----------- Merci La Belle Zohra
centerME sty theY
PushWord #^txtINTRO1 ; pointer to string
pha
PushWord #0 ; get string length
PushWord #^txtINTRO1
pha
_StringWidth ; return left on stack
lda #320 ; why 160?
sec
sbc 1,s
bpl cm1
lda #0
cm1 lsr
sta 1,s ; X
PushWord theY ; pour MoveTo
_MoveTo
_DrawString
ldy #60*1
jmp waitMS16
*-----------------------------------
* LE LOGO LORICIELS
*-----------------------------------
intro_logo
PushLong #picLORICIELS
PushLong ptrSCREEN
PushLong #32768
_BlockMove
ldy #60*5
jmp waitMS16
*-----------------------------------
* TELEX
*-----------------------------------
@ -71,15 +177,19 @@ it1STLINE = 18
it1stROW = 10
intro_telex
PushWord #0
_ClearScreen
PushWord #0
PushLong #palette320
_SetColorTable
PushLong #telexRECT
PushWord #$7777
PushWord #$7777
_SpecialRect
PushWord #$1000
PushWord #$fffe ; Shaston 16
PushWord #0
_InstallFont
jsr fontSHASTON16
PushWord #0
_GetTextMode
@ -155,10 +265,7 @@ intro_genius_texte
PushWord #0
_ClearScreen
PushWord #$0800
PushWord #$fffe ; Shaston 8
PushWord #0
_InstallFont
jsr fontSHASTON8
lda #txtGENIUSTEXTE
sta dpFROM
@ -217,57 +324,275 @@ igt_next ldy #4 ; wait 4/60eme
intro_serpent
PushWord #0
_ClearScreen
PushLong #curPATTERN
_GetPenPat
PushLong #redPATTERN
_SetPenPat
PushWord #$1000
PushWord #$fffe ; Shaston 16
PushWord #0
_InstallFont
PushWord #90
PushWord #80
_MoveTo
PushLong #txtSERPENT1
_DrawCString
jsr snake_1
jsr snake_2
PushLong #curPATTERN
_SetPenPat
PushWord #$0800
PushWord #$fffe ; Shaston 8
PushWord #0
_InstallFont
PushWord #92
PushWord #100
_MoveTo
PushLong #txtSERPENT2
_DrawCString
PushWord #110
PushWord #110
_MoveTo
PushLong #txtSERPENT3
_DrawCString
PushWord #102
PushWord #120
_MoveTo
PushLong #txtSERPENT4
_DrawCString
rts
*-----------
ldy #60*10
snake_1 PushLong #curPENSIZE
_GetPenSize
PushLong #checkeredPATTERN
_SetPenPat
PushWord #8
PushWord #8
_SetPenSize
jsr snake_draw
PushWord curPENSIZE
PushWord curPENSIZE+2
_SetPenSize
rts
*-----------
snake_draw stz theK
*--- For K=0 TO 7 STEP 2
sd_k lda theK
sta theN
lda #39
sec
sbc theK
sta maxN
]lp lda theN
asl
asl
asl
sta theX
lda theK
asl
asl
asl
sta theY
PushWord theX
PushWord theY
_MoveTo
PushWord #1
PushWord #1
_Line
jsr KEY ; retour en 8-bit
rep #$30
ldy #1 ; wait 4/60eme
jsr waitMS16
inc theN
lda maxN
cmp theN
bcs ]lp
*--- Loop 2 (line 420)
lda theK
sta theN
lda #25
sec
sbc theK
sta maxN
]lp lda #39
sec
sbc theK
asl
asl
asl
pha ; X
lda theN
asl
asl
asl
pha ; Y
_MoveTo
PushWord #1
PushWord #1
_Line
jsr KEY ; retour en 8-bit
rep #$30
ldy #1 ; wait 4/60eme
jsr waitMS16
inc theN
lda theN
cmp maxN
bcc ]lp
*--- Loop 3 (line 430)
lda #38
sec
sbc theK
sta theN
lda theK
sta maxN
]lp lda theN
asl
asl
asl
pha ; X
lda #24
sec
sbc theK
asl
asl
asl
pha ; Y
_MoveTo
PushWord #1
PushWord #1
_Line
jsr KEY ; retour en 8-bit
rep #$30
ldy #1 ; wait 4/60eme
jsr waitMS16
dec theN
lda maxN
cmp theN
bne ]lp
*--- Loop 4 (line 440)
lda #24
sec
sbc theK
sta theN
lda theK
inc
sta maxN
]lp lda theK
asl
asl
asl
pha ; X
lda theN
asl
asl
asl
pha ; Y
_MoveTo
PushWord #1
PushWord #1
_Line
jsr KEY ; retour en 8-bit
rep #$30
ldy #1 ; wait 4/60eme
jsr waitMS16
dec theN
lda maxN
cmp theN
bcc ]lp
*--- Line 450
lda theK
cmp #6
beq sd_nextk
lda theK
inc
asl
asl
asl
pha
lda theK
inc
inc
asl
asl
asl
pha
_MoveTo
PushWord #1
PushWord #1
_Line
*----------- NEXT K
sd_nextk lda theK
clc
adc #2
sta theK
cmp #8
bcs sd_end
jmp sd_k
sd_end rts
*-----------
theK ds 2
theN ds 2
maxN ds 2
*-----------
snake_2 PushWord #0
_GetForeColor
PushWord #7
_SetForeColor
jsr fontSHASTON16
ldy #80
lda #txtSERPENT1
jsr centerME
_SetForeColor
jsr fontSHASTON8
ldy #105
lda #txtSERPENT2
jsr centerME
ldy #118
lda #txtSERPENT3
jsr centerME
ldy #131
lda #txtSERPENT4
jsr centerME
*-----------
ldy #60*2
jmp waitMS16
*-----------------------------------
@ -318,21 +643,182 @@ pgLOOP ldy #0
cpx #84*160 ; 84 lignes
bcc pgLOOP
*----------- Affiche le titre
PushWord #0
_GetForeColor
PushWord #0
_SetForeColor
PushWord #0
_GetTextMode
PushWord #modeForeCopy
_SetTextMode
PushWord #70
PushWord #110
_MoveTo
PushLong #txtTITRE1
_DrawCString
PushWord #70
PushWord #120
_MoveTo
PushLong #txtTITRE2
_DrawCString
jsr fontSHASTON16
PushWord #160
PushWord #118
_MoveTo
PushLong #txtTITRE3
_DrawCString
*----------- Affiche les anneaux
PushLong #curPATTERN
_GetPenPat
PushLong #blackPATTERN
_SetPenPat
*--- Boucle 1
ovalHEIGHT = 8
ovalX1 = 30
ovalX2 = 290
ovalY1 = 130
ovalY2 = 180
lda #ovalY1
sta ovalRECT
clc
adc #ovalHEIGHT
sta ovalRECT+4
lda #ovalX1
]lp sta ovalRECT+2
clc
adc #ovalHEIGHT
sta ovalRECT+6
jsr outputOVAL
lda ovalRECT+2
clc
adc #5
cmp #ovalX2
bcc ]lp
*--- Boucle 2
lda #ovalX2
sta ovalRECT+2
clc
adc #ovalHEIGHT
sta ovalRECT+6
lda #ovalY1
]lp sta ovalRECT
clc
adc #ovalHEIGHT
sta ovalRECT+4
jsr outputOVAL
lda ovalRECT
clc
adc #5
cmp #ovalY2
bcc ]lp
*--- Boucle 3
lda #ovalY2
sta ovalRECT
clc
adc #ovalHEIGHT
sta ovalRECT+4
lda #ovalX2
]lp sta ovalRECT+2
clc
adc #ovalHEIGHT
sta ovalRECT+6
jsr outputOVAL
lda ovalRECT+2
sec
sbc #5
cmp #ovalX1
bcs ]lp
*--- Boucle 4
lda #ovalX1
sta ovalRECT+2
clc
adc #ovalHEIGHT
sta ovalRECT+6
lda #ovalY2
]lp sta ovalRECT
clc
adc #ovalHEIGHT
sta ovalRECT+4
jsr outputOVAL
lda ovalRECT
sec
sbc #5
cmp #ovalY1
bcs ]lp
*--- La suite...
PushLong #curPATTERN
_SetPenPat
*----------- Affiche les noms
* TO DO
jsr fontSHASTON8
ldy #150
lda #txtECRITPAR1
jsr centerME
ldy #162
lda #txtECRITPAR2
jsr centerME
ldy #174
lda #txtECRITPAR3
jsr centerME
*----------- Affiche le cadre
*---
_SetTextMode
_SetForeColor
jsr initMIDI
jsr doSOUNDON
ldy #60*60*2
jsr waitMS16
*----------- Boucle sur les couleurs (ou pas)
*----------- Affiche la suite
PushLong #ecritparRECT
PushWord #$4444
PushWord #$4444
_SpecialRect
PushWord #$1000
PushWord #$fffe ; Shaston 16
PushWord #0
_InstallFont
jsr fontSHASTON16
PushWord #0
_GetForeColor
@ -346,27 +832,20 @@ pgLOOP ldy #0
PushWord #11
_SetForeColor
PushWord #40
PushWord #179
_MoveTo
PushLong #txtECRITPAR6
_DrawCString
ldy #179
lda #txtECRITPAR6
jsr centerME
PushWord #34
PushWord #199
_MoveTo
PushLong #txtECRITPAR7
_DrawCString
ldy #199
lda #txtECRITPAR7
jsr centerME
_SetTextMode
_SetForeColor
PushWord #$0800
PushWord #$fffe ; Shaston 8
PushWord #0
_InstallFont
jsr fontSHASTON8
ldy #60*3
ldy #60*1
jmp waitMS16
*-----------
@ -442,6 +921,19 @@ outputPG6 lda dpPX
ply
rts
*---
outputOVAL
PushLong #ovalRECT
_FrameOval
ldy #1 ; wait 2/60eme
jmp waitMS16
*---
ovalRECT ds 8
*-----------------------------------
* LA UNE DU MONDE
*-----------------------------------
@ -919,6 +1411,21 @@ outputIG6B phy
mx %00
*-----------------------------------
* QUELQUES ROUTINES
*-----------------------------------
fontSHASTON8
PushWord #$0800
bra fontSHASTON
fontSHASTON16
PushWord #$1000
fontSHASTON
PushWord #$fffe ; Shaston 16
PushWord #0
_InstallFont
rts
*-----------------------------------
* DATA INTRO
*-----------------------------------

View File

@ -11,6 +11,23 @@
* LES TEXTES DE L'INTRO
*-----------------------------------
txtINTRO1 ENT
str 'Brutal Deluxe Software'
txtINTRO2 ENT
str 'Antoine Vignau & Olivier Zardini'
txtINTRO3 ENT
str 'pr'8e'sentent'
txtINTRO4 ENT
str 'Merci XavSnap'
txtINTRO5 ENT
str 'LE RETOUR DU DR GENIUS'
txtINTRO6 ENT
str '(c) 1984 - 2024'
txtINTRO7 ENT
str 'Laurent Benes & Loriciels'
*-----------------------------------
telexRECT ENT
dw 0,0,102,320
@ -19,53 +36,57 @@ txtTELEX1 ENT
txtTELEX2 ENT
asc '(heure francaise)'00
txtTELEX3 ENT
asc 'sur tous les telex'00
asc 'sur tous les t'8e'lex'00
txtTELEX4 ENT
asc 'du monde apparait ce'00
asc 'du monde appara'94't ce'00
txtTELEX5 ENT
asc 'message angoissant...'00
*-----------------------------------
txtGENIUSTEXTE ENT
asc ' Moi, GENIUS, je defie le monde. J'27'ai'0d
asc 'invente une nouvelle arme capable de'0d
asc ' Moi, GENIUS, je d'8e'fie le monde. J'27'ai'0d
asc 'invent'8e' une nouvelle arme capable de'0d
asc 'raser la terre, ce que je ferai dans'0d
asc 'deux semaines... Mais, comme je ne suis'0d
asc 'pas un monstre, je vous laisse une'0d
asc 'chance. J'27'accepte que des hommes de'0d
asc 'tout pays se rendent sur mon vaisseau'0d
asc 'en orbite autour de la terre afin de'0d
asc 'tenter de desamorcer mes armes. Mais,'0d
asc 'jamais plus d'27'un homme a la fois....'00
asc 'en orbite autour de la Terre afin de'0d
asc 'tenter de d'8e'samorcer mes armes. Mais,'0d
asc 'jamais plus d'27'un homme '88' la fois....'00
*-----------------------------------
txtSERPENT1 ENT
asc 'LORICIELS'00
str 'LORICIELS'
txtSERPENT2 ENT
asc 'vous propose ce que'00
str 'vous propose ce que'
txtSERPENT3 ENT
asc 'vous redoutiez'00
str 'vous redoutiez'
txtSERPENT4 ENT
asc 'depuis longtemps'00
str 'depuis longtemps'
*-----------------------------------
txtTITRE1 ENT
asc 'Le retour'00
txtTITRE2 ENT
asc 'du Docteur'00
txtTITRE3 ENT
asc 'Genius'00
txtECRITPAR1 ENT
asc 'Ecrit par Laurent Benes'00
str 'Ecrit par Laurent Benes'
txtECRITPAR2 ENT
asc 'Assiste de Karine Le Pors'00
str 'Assist'8e' de Karine Le Pors'
txtECRITPAR3 ENT
asc 'Version Apple IIgs'00
txtECRITPAR4 ENT
asc 'Brutal Deluxe Software'00
txtECRITPAR5 ENT
asc 'Merci XavSnap'00
str '('A9') LORICIELS ao'9e't 1984'
txtECRITPAR6 ENT
asc '3 jours plus tard'00
str '3 jours plus tard'
txtECRITPAR7 ENT
asc 'dans les journaux'00
str 'dans les journaux'
ecritparRECT ENT
dw 160,0,200,320
@ -73,45 +94,45 @@ ecritparRECT ENT
*-----------------------------------
txtMONDE ENT
asc 'C'27'est ainsi que vous decidez de'0d
asc 'vous rendre aux autorites pour combat-'0d
asc 'tre a nouveau le Dr Genius.'
asc 'Le lendemain, on vous emmene au vais-'0d
asc 'seau ou vous allez maintenant tenter'0d
asc 'C'27'est ainsi que vous d'8e'cidez de'0d
asc 'vous rendre aux autorit'8e's pour combat-'0d
asc 'tre de nouveau le Dr Genius.'0d
asc 'Le lendemain, on vous emm'8f'ne au vais-'0d
asc 'seau o'9e' vous allez maintenant tenter'0d
asc 'de vaincre le Dr Genius afin de sauver'0d
asc 'la terre.'0d0d0d
asc 'la Terre.'0d0d0d
asc ' BON COURAGE...'0d0d0d
asc 'Vous en aurez besoin !'00
*-----------------------------------
txtEXPLICATIONS1 ENT
asc 'Voici quelques explications'0d0d
asc 'Le jeu est en temps reel, un chronome-'0d
asc 'tre sera affiche en permanence.'0d
asc 'Voici quelques explications'0d
asc 'Le jeu est en temps r'8e'el, un chronom'8f'-'0d
asc 'tre sera affich'8e' en permanence.'0d
asc 'D'27'autre part, vous devrez prendre'0d
asc 'garde a votre energie qui diminuera au'0d
asc 'garde '88' votre '8e'nergie qui diminuera au'0d
asc 'fil de la partie.'0d
asc 'Attention, plus vous transportez'0d
asc 'd'27'objets, plus votre force decroit.'0d0d
asc 'd'27'objets, plus votre force d'8e'croit.'0d0d
asc 'Pour converser avec l'27'ordinateur, vous'0d
asc 'pouvez utiliser un vocabulaire choisi'0d
asc 'parmi pres de 150 mots que vous allez'0d
asc 'donc decouvrir au fur et a mesure...'0d
asc 'et oui, c'27'est ca l'27'aventure.'0d0d
asc 'parmi pr'8f's de 150 mots que vous allez'0d
asc 'donc d'8e'couvrir au fur et '88' mesure...'0d
asc 'et oui, c'27'est '8d'a l'27'aventure.'0d0d
asc 'D'27'autre part, l'27'ordinateur ne prendra'0d
asc 'en compte que les 4 premieres lettres'0d
asc 'en compte que les 4 premi'8f'res lettres'0d
asc 'de chaque mot, ainsi : PRENDS CARTON'0d
asc 'sera compris comme : PREN CART'00
txtEXPLICATIONS2 ENT
asc 'L'27'ordinateur ne prend en compte en'0d
asc 'general que deux mots, exemple :'0d
asc 'g'8e'n'8e'ral que deux mots, exemple :'0d
asc '- ALLUME SALLE'0d
asc '- EST ou E ou AVANCE EST'0d0d
asc 'Dans certains cas,l'27'ordinateur prendra'0d
asc 'en compte trois mots. Il s'27'agit de cas'0d
asc 'ou un qualificatif est necessaire, ou'0d
asc 'ou un qualificatif est n'8e'cessaire, ou'0d
asc 'lorsque l'27'on veut mettre une chose'0d
asc 'dans une autre. Exemple :'0d0d
asc 'PRENDS LIVRE VERT'0d
@ -119,23 +140,23 @@ txtEXPLICATIONS2 ENT
asc ' ou'0d
asc 'CRAYON DANS BOITE'0d0d
asc 'Ce dernier cas indiquera qu'27'il faut'0d
asc 'mettre le crayon dans la boite.'0d
asc 'a condition que vous possediez crayon'0d
asc 'et boite, evidemment.'00
asc 'mettre le crayon dans la bo'94'te.'0d
asc 88' condition que vous poss'8e'diez crayon'0d
asc 'et bo'94'te, '8e'videmment.'00
txtEXPLICATIONS3 ENT
asc 'Une derniere chose, il est possible de'0d
asc 'Une derni'8f're chose, il est possible de'0d
asc 'sauver une partie en cours, et de la'0d
asc 'recharger, mais a vous de trouver le'0d
asc 'vocabulaire adequat...'0d0d0d0d
asc 'Et maintenant, tres bonne aventure...'0d0d
asc 'et prenez garde a vous !'0d0d0d
asc 'recharger, mais '88' vous de trouver le'0d
asc 'vocabulaire ad'8e'quat...'0d0d0d0d
asc 'Et maintenant, tr'8f's bonne aventure...'0d0d
asc 'et prenez garde '88' vous !'0d0d0d
* asc 'Tapez une touche pour charger le'0d
* asc 'programme de jeu.'00 ; Fond rouge, encre
asc 'Tapez une touche pour jouer.'00
txtEXPLICATIONS4 ENT
asc 'Voulez-vous revoir la presentation (O/N) '00
asc 'Voulez-vous revoir la pr'8e'sentation (O/N) '00
*-----------------------------------
* IMAGE DU DR GENIUS (DRACULA)

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@
* Expansion linker file
DSK iigs
DSK RetourDrGenius
TYP $B3
* Assemble files
@ -16,9 +16,11 @@
KND $0000
SNA LeRetour
* Assemble files
ASM data.s
KND $0000
SNA Du
ASM loriciels.s
KND $0000
SNA DrGenius

Binary file not shown.

After

Width:  |  Height:  |  Size: 388 KiB