diff --git a/billpalmer/_FileInformation.txt b/billpalmer/_FileInformation.txt new file mode 100644 index 0000000..e69de29 diff --git a/billpalmer/en/Bill Palmer Master EN.2mg b/billpalmer/en/Bill Palmer Master EN.2mg new file mode 100644 index 0000000..994fa04 Binary files /dev/null and b/billpalmer/en/Bill Palmer Master EN.2mg differ diff --git a/billpalmer/en/Notice b/billpalmer/en/Notice new file mode 100644 index 0000000..8ff9797 --- /dev/null +++ b/billpalmer/en/Notice @@ -0,0 +1 @@ +Bill palmer Instructions for use LAUNCHING THE GAME Double click on the Bill icon to view the title page and hear the great introductory music, or on the Palmer icon to play. PROTECTION Well, there is none in the Apple IIgs version. THE GAME There is only one floppy disk, so the game can begin. You control all of Bill Palmer's actions with the mouse. MOVES When possible, the four arrows allow Bill to move forward, backward, left and right respectively. SPECIAL ACTIONS The three icons hand, eye and mouth represent elementary actions. For example to look at a character, click on the eye so that it is reversed then on the part of the image where this character is located. The program may give you a lesson or an indication. To open a door, click on the hand then on this door, etc. ITEMS Under the image will be placed objects that Bill can take with him. An object represented on a white background is present near Bill, an object represented on a black background is in Bill's bag. To pick up and drop an item, simply click on it making sure that no eye, hand, or mouth icon is lit. If it did, click on it again to turn it off. To look at an object in detail, click on the eye and then on this object. The program will give you a hint about it. To use an object, click on the hand and then on this object. You may only view or use items that Bill is actually wearing. SAVING AND READING GAME STATUS The floppy disk symbols save and re-read the state of the game on the floppy disk and allow you to resume a game where you left off. VARIOUS Not all actions can be predicted. This is why it will happen that the program does not give any details following, for example, a request to use an object. It just means that there is nothing special about the use of this item. KEYBOARD SHORTCUTS We have integrated keyboard shortcuts in the Apple IIgs version: - open-apple-? to display the copyright, - open-apple-D to restart a game, - open-apple-L to load a game, - open-apple-S to save a game, - apple-open-Z to start or stop the music (because in the Apple IIgs version, we hear the nice music Adventure Time - I'm just your problem retrieved from bitmidi.com), - H, E and M to activate the Hand, the Eye or the Mouth, - direction arrows to facilitate movement, and that's probably all ... HAVE FUN ! ! THANKS We thank Franois Coulon who accepted that we carry Bill Palmer on Apple IIgs. We also thank Hugo Labrande who put us in touch with Franois Coulon. DISCLAIMER A game by Franois Coulon, drawings by Dominique Petter. Apple IIgs version by Brutal Deluxe Software: Antoine Vignau & Olivier Zardini For more information : francoiscoulon.com brutaldeluxe.fr \ No newline at end of file diff --git a/billpalmer/en/PALMEREN.S b/billpalmer/en/PALMEREN.S new file mode 100644 index 0000000..86338be --- /dev/null +++ b/billpalmer/en/PALMEREN.S @@ -0,0 +1,5176 @@ + +*---------------------------------------------------------* +* Disassembled with The Flaming Bird Disassembler * +* (c) Phoenix corp. 1992,93 - All rights reserved * +*---------------------------------------------------------* + + REL + + PHK + PLB + _TLStartUp + PHA + _MMStartUp + PLA + STA L0E72 + TDC + STA L0E74 + JSL GSOS + DW $202A ; GetVersion + ADRL L1155 + LDA L1157 + AND #$7FFF + CMP #$0402 + BCS L0052 + PHA + PEA ^L0E8C + PEA L0E8C + PEA ^L0EA3 + PEA L0EA3 + PEA ^L0EF9 + PEA L0EF9 + PEA ^L0EFE + PEA L0EFE + _TLTextMountVolume + PLA + BRL L0D16 +L0052 JSR L0D3F + BCC L007B +L0057 PHA + PEA ^L0ED1 + PEA L0ED1 + PEA ^L0EFE + PEA L0EFE + PEA ^L0EF9 + PEA L0EF9 + PEA ^L0EFE + PEA L0EFE + _TLTextMountVolume + PLA + BRL L0D16 +L007B STY L0E7A + STY L0A0B + STX L0E7A+2 + STX L0A0B+2 + SEP #$10 + STX L0E1E+3 + STX L0E38+3 + REP #$10 + JSR L0D3F + BCS L0057 + STY L0E7E + STX L0E7E+2 + STX L0E82+2 + STX L08A7+2 + PHA + PHA + LDA L0E72 + PHA + PEA $0002 + PEA $0000 + PEA $0001 + _StartUpTools + PLA + STA L0E76 + PLA + STA L0E76+2 + BCC L00E6 + PHA + PEA ^L0EB7 + PEA L0EB7 + PEA ^L0EFE + PEA L0EFE + PEA ^L0EF9 + PEA L0EF9 + PEA ^L0EFE + PEA L0EFE + _TLTextMountVolume + PLA + BRL L0D01 +L00E6 JSR L5C6C + LDA #L1169 + LDX L0E7E+2 + LDY L0E7E + JSR L106E + BCC L011B + PHA + PEA ^L0EE8 + PEA L0EE8 + PEA ^L0EFE + PEA L0EFE + PEA ^L0EF9 + PEA L0EF9 + PEA ^L0EFE + PEA L0EFE + _TLTextMountVolume + PLA + BRL L0D16 +L011B TYA + JSR L0D6C + LDA L0E7A+2 + PHA + LDA L0E7A + PHA + LDA L0E82+2 + PHA + LDA L0E82 + PHA + PEA $0000 + PEA $8000 + _BlockMove + _HideMenuBar + PEA $0000 + PEA $FFFF + PEA $0000 + _FlushEvents + PLA + _InitCursor + PEA $0000 + PEA $0000 + PEA $0005 + PEA $4000 + PEA $00F0 + _Desktop + PLA + PLA + PHA + PHA + PEA $0000 + PEA $0000 + PEA $0000 + PEA $0001 + PEA ^L029C + PEA L029C + PEA $0000 + PEA $0000 + PEA $0002 + PEA $0000 + PEA $0001 + PEA $800E + _NewWindow2 + PLA + STA L0E6E + PLA + STA L0E6E+2 + JSR L0A41 + JSR L0970 + JSR L5F0B +L01B1 PEA $0000 + PEA $0000 + PEA $C000 + PEA $0000 + _HandleDiskInsert + PLA + PLA + JSR L5F64 + PEA $0000 + PEA $FFFF + PEA ^L0EFF + PEA L0EFF + _TaskMaster + PLA + BEQ L01B1 + ASL + TAX + JSR (L0F2D,X) + LDA L0AB3 + ORA L0AB5 + ORA L0AB7 + ORA L0AB9 + BEQ L0208 + JSR L0555 + JSR L05D7 + JSR L0455 + LDA L0AB3 + BEQ L0208 + LDA L0AAF + ASL + TAX + JSR (L4414,X) +L0208 STZ L0AB9 + STZ L0AB5 + JSR L0970 + BRA L01B1 +L0213 LDA L0F0D + AND #$0100 + CMP #$0100 + BEQ L0246 + LDA L0F01 + LDX #$0015 + CMP #$000B + BEQ L0242 + LDX #$0016 + CMP #$000A + BEQ L0242 + LDX #$0017 + CMP #$0008 + BEQ L0242 + LDX #$0018 + CMP #$0015 + BEQ L0242 + RTS + +L0242 STX L0AB7 + RTS + +L0246 LDX #$FFFF + SEP #$20 +L024B INX + LDA L0263,X + CMP #$FF + BEQ L0260 + CMP L0F01 + BNE L024B + REP #$20 + TXA + ASL + TAX + JSR (L0272,X) +L0260 REP #$20 + RTS + +L0263 ASC 'QqLlSs??DdCcZz' + HEX FF +L0272 DA L0CDE + DA L0CDE + DA L0AD5 + DA L0AD5 + DA L0B27 + DA L0B27 + DA L0ABB + DA L0ABB + DA L0C40 + DA L0C40 + DA L0C66 + DA L0C66 + DA L5EF6 + DA L5EF6 +L028E JSR L04BA + JMP L04F3 + +L0294 LDA L0F25 + ASL + TAX + JMP (L0F73,X) + +L029C LDA L0E6E+2 + PHA + LDA L0E6E + PHA + _DrawControls + PEA $0001 + PEA $00A0 + _MoveTo + PEA $013D + PEA $00A0 + _LineTo + PEA $013D + PEA $00C6 + _LineTo + PEA $0001 + PEA $00C6 + _LineTo + PEA $0001 + PEA $00A0 + _LineTo + PEA $0001 + PEA $0001 + _MoveTo + PEA $0111 + PEA $0001 + _LineTo + PEA $0111 + PEA $006E + _LineTo + PEA $0001 + PEA $006E + _LineTo + PEA $0001 + PEA $0001 + _LineTo + RTL + +L032E LDA L0F25 + STA L0AB7 + RTS + +L0335 LDA L044F + EOR #$0001 + STA L044F + LDA L044F + LDX #$0019 + STX L0AB3 + JSR L041D + LDA L044F + BNE L0358 + STZ L0AB3 + LDX #$0019 + JMP L0430 + +L0358 STZ L0451 + STZ L0453 + LDA #$0000 + LDX #$001A + JSR L041D + LDX #$001A + JSR L0430 + LDA #$0000 + LDX #$001B + JSR L041D + LDX #$001B + JMP L0430 + +L037C LDA L0451 + EOR #$0001 + STA L0451 + LDA L0451 + LDX #$001A + STX L0AB3 + JSR L041D + LDA L0451 + BNE L039F + STZ L0AB3 + LDX #$001A + JMP L0430 + +L039F STZ L044F + STZ L0453 + LDA #$0000 + LDX #$0019 + JSR L041D + LDX #$0019 + JSR L0430 + LDA #$0000 + LDX #$001B + JSR L041D + LDX #$001B + JMP L0430 + +L03C3 LDA L0453 + EOR #$0001 + STA L0453 + LDX #$001B + STX L0AB3 + JSR L041D + LDA L0453 + BNE L03E3 + STZ L0AB3 + LDX #$001B + JMP L0430 + +L03E3 STZ L044F + STZ L0451 + LDA #$0000 + LDX #$0019 + JSR L041D + LDX #$0019 + JSR L0430 + LDA #$0000 + LDX #$001A + JSR L041D + LDX #$001A + JMP L0430 + + PEA $0000 + PEA $0000 + PEA $0000 + PEA $0000 + PHX + _GetCtlValueByID + PLA + RTS + +L041D PHA + PEA $0000 + PEA $0000 + PEA $0000 + PHX + _SetCtlValueByID + RTS + +L0430 PEA $0000 + PEA $0000 + PEA $0000 + PEA $0000 + PEA $0000 + PHX + _GetCtlHandleFromID + _DrawOneCtl + RTS + +L044F DW $0000 +L0451 DW $0000 +L0453 DW $0000 +L0455 LDA L0AB3 + CMP #$001A + BNE L047D + LDA L0AB5 + BNE L0463 + RTS + +L0463 CMP #$0014 + BCC L0469 + RTS + +L0469 TAX + LDA L12AD+$13,X + AND #$00FF + BNE L0473 + RTS + +L0473 TXA + DEC + ASL + TAX + LDA L12D5,X + JMP L0945 + +L047D LDA L0AB3 + BEQ L0483 + RTS + +L0483 LDA L0AB5 + BNE L0489 + RTS + +L0489 CMP #$0014 + BCC L048F + RTS + +L048F TAX + LDA L129C+$10,X + AND #$00FF + CMP #$0063 + BNE L04A8 + SEP #$20 + LDA L0AAF + STA L129C+$10,X + REP #$20 + JMP L08D1 + +L04A8 CMP L0AAF + BNE L04B9 + SEP #$20 + LDA #$63 + STA L129C+$10,X + REP #$20 + JMP L084A +L04B9 RTS + +L04BA STZ L0AB5 + LDA #$0000 +L04C0 PHA + ASL + ASL + ASL + TAX + LDA L0F0B + CMP L118E,X + BCC L04EB + LDA L1192,X + CMP L0F0B + BCC L04EB + LDA L0F09 + CMP L1190,X + BCC L04EB + LDA L1194,X + CMP L0F09 + BCC L04EB + PLA + INC + STA L0AB5 + RTS + +L04EB PLA + INC + CMP #$0014 + BCC L04C0 + RTS + +L04F3 STZ L0AB9 + LDA L0AAF + DEC + ASL + TAX + LDA L1666,X + STA $14 + LDY #$0000 + LDA ($14),Y + STA L0553 + LDA $14 + CLC + ADC #$000A + STA $14 + LDA #$0000 +L0514 PHA + LDY #$0000 + LDA L0F0B + CMP ($14),Y + BCC L0543 + LDY #$0004 + LDA ($14),Y + CMP L0F0B + BCC L0543 + LDY #$0002 + LDA L0F09 + CMP ($14),Y + BCC L0543 + LDY #$0006 + LDA ($14),Y + CMP L0F09 + BCC L0543 + PLA + INC + STA L0AB9 + RTS + +L0543 LDA $14 + CLC + ADC #$000E + STA $14 + PLA + INC + CMP L0553 + BCC L0514 + RTS + +L0553 DW $0000 +L0555 LDA L0AB9 + BNE L055B + RTS + +L055B LDY #$0000 + LDA L0AB3 + CMP #$0019 + BEQ L0577 + LDY #$0002 + CMP #$001A + BEQ L0577 + LDY #$0004 + CMP #$001B + BEQ L0577 + RTS + +L0577 LDA L0AAF + DEC + ASL + TAX + LDA L1666,X + CLC + ADC #$0012 + STA $14 + LDA #$0000 + LDX L0AB9 +L058C DEX + BEQ L0595 + CLC + ADC #$000E + BRA L058C +L0595 CLC + ADC $14 + STA $14 + LDA ($14),Y + JMP L0945 + +L059F PHA + LDA L12AD+$13,X + AND #$00FF + BNE L05D5 + SEP #$20 + LDA L0AAF + STA L129C+$10,X + LDA #$FF + STA L12AD+$13,X + REP #$20 + JSR L08D1 + BRA L05D1 +L05BC PHA + LDA L12AD+$13,X + AND #$00FF + BEQ L05D5 + SEP #$20 + LDA #$61 + STA L129C+$10,X + REP #$20 + JSR L0802 +L05D1 PLA + JMP L0945 + +L05D5 PLA + RTS + +L05D7 LDA L0AAF + CMP #$0026 + BNE L05ED + LDA L0AB7 + CMP #$0018 + BNE L05ED + LDA #L071E + JSR L0945 +L05ED LDA L0AAF + CMP #$0024 + BNE L0603 + LDA L0AB7 + CMP #$0015 + BNE L0603 + LDA #L0744 + JSR L0945 +L0603 LDA L0AAF + CMP #$0016 + BNE L0619 + LDA L0AB7 + CMP #$0017 + BNE L0619 + LDA #L0785 + JSR L0945 +L0619 LDA L0AAF + CMP #$0015 + BNE L062F + LDA L0AB7 + CMP #$0017 + BNE L062F + LDA #L07BF + JSR L0945 +L062F LDA L0AAF + CMP #$000B + BNE L0645 + LDA L0AB7 + CMP #$0018 + BNE L0645 + LDA #L07ED + JSR L0945 +L0645 LDA L0AB7 + CMP #$0015 + BCC L0675 + LDA #$0018 + CMP L0AB7 + BCC L0675 + LDA L0AAF + DEC + ASL + TAX + LDA L1666,X + INC + INC + STA $14 + LDA L0AB7 + SEC + SBC #$0015 + ASL + TAY + LDA ($14),Y + BEQ L0672 + STA L0AAF +L0672 STZ L0AB7 +L0675 LDA L0AAF + CMP #$0019 + BNE L0691 + LDX #$0004 + LDA L127E+$1D,X + AND #$00FF + CMP #$00FF + BNE L0691 + LDA #$001A + STA L0AAF +L0691 LDA L0AAF + CMP #$001C + BNE L06AD + LDX #$0007 + LDA L127E+$1D,X + AND #$00FF + CMP #$00FF + BNE L06AD + LDA #$001B + STA L0AAF +L06AD LDA L0AAF + CMP #$001D + BNE L06C9 + LDX #$0007 + LDA L127E+$1D,X + AND #$00FF + CMP #$00FF + BNE L06C9 + LDA #$001E + STA L0AAF +L06C9 LDA L0AAF + CMP #$0020 + BNE L06E5 + LDX #$0007 + LDA L127E+$1D,X + AND #$00FF + CMP #$00FF + BNE L06E5 + LDA #$001F + STA L0AAF +L06E5 LDA L0AAF + CMP #$0022 + BNE L0701 + LDX #$0009 + LDA L127E+$1D,X + AND #$00FF + CMP #$00FF + BNE L0701 + LDA #$0023 + STA L0AAF +L0701 LDA L0AAF + CMP #$0024 + BNE L071D + LDX #$000A + LDA L127E+$1D,X + AND #$00FF + CMP #$0000 + BNE L071D + LDA #$0021 + STA L0AAF +L071D RTS + +L071E STR 'Better not to follow the Professor...' +L0744 STR 'You just have to push the door... (are you afraid of something?)' +L0785 STR 'Bill easily jumps off the train and waits for it to leave' +L07BF STR 'This kind of jump only works in the movies...' +L07ED STR 'Bill flies to Africa' +L0802 CPX #$0000 + BEQ L0840 + TXA + DEC + ASL + ASL + ASL + TAX + LDA L1190,X + STA L0841 + LDA L118E,X + STA L0843 + LDA L1194,X + STA L0845 + LDA L1192,X + STA L0847 + _HideCursor + PEA ^L0841 + PEA L0841 + _EraseRect + _ShowCursor +L0840 RTS + +L0841 DW $0000 +L0843 DW $0000 +L0845 DW $0000 +L0847 DW $0000 + RTS + +L084A CPX #$0000 + BEQ L088E + TXA + DEC + ASL + ASL + ASL + TAX + LDA L1190,X + STA L08C5 + STA L08CD + LDA L118E,X + STA L08C7 + STA L08CF + LDA L1194,X + STA L08C9 + LDA L1192,X + STA L08CB + _HideCursor + PEA ^L088F + PEA L088F + _PaintPixels + _ShowCursor +L088E RTS + +L088F ADRL L08A5 + ADRL L08B5 + ADRL L08C5 + ADRL L08CD + DW $0000 + ADRL $00000000 +L08A5 DW $0000 ; SCB byte +L08A7 ADRL $00008000 ; Pointer to pixel image + DW $00A0 ; Width + DW $0000 ; Bounds rect + DW $0000 + DW $00C7 + DW $013F +L08B5 DW $0000 ; SCB byte + ADRL $00012000 ; Pointer to pixel image + DW $00A0 ; Width + DW $0000 ; Bounds rect + DW $0000 + DW $00C7 + DW $013F +L08C5 DW $0003 +L08C7 DW $0000 +L08C9 DW $006D +L08CB DW $0110 +L08CD DW $0003 +L08CF DW $0000 +L08D1 CPX #$0000 + BEQ L0913 + PHX + JSR L084A + PLA + DEC + ASL + ASL + ASL + TAX + LDA L1190,X + STA L0914 + LDA L118E,X + STA L0916 + LDA L1194,X + STA L0918 + LDA L1192,X + STA L091A + _HideCursor + PEA ^L0914 + PEA L0914 + _InvertRect + _ShowCursor +L0913 RTS + +L0914 DW $0000 +L0916 DW $0000 +L0918 DW $0000 +L091A DW $0000 +L091C LDX #$0001 +L091F PHX + JSR L0802 + PLX + PHX + LDA L129C+$10,X + AND #$00FF + CMP L0AAF + BNE L0935 + JSR L08D1 + BRA L093D +L0935 CMP #$0063 + BNE L093D + JSR L084A +L093D PLX + INX + CPX #$0014 + BCC L091F + RTS + +L0945 STA $00 + LDA ($00) + AND #$00FF + BNE L094F + RTS + +L094F PEA ^L4413 + LDX $00 + INX + PHX + PHA + PEA ^L0968 + PEA L0968 + PEA $0000 + _LETextBox2 + RTS + +L0968 DW $00A1 + DW $0002 + DW $00C6 + DW $013D +L0970 LDA L0AAF + CMP L0AB1 + BNE L0979 + RTS + +L0979 STA L0AB1 + JSR L0A6D + JSR L091C + JMP L0985 + +L0985 LDA L0AAF + PHA + PEA ^L09A8 + PEA L09A8 + PEA $0002 + PEA $0000 + _Int2Dec + LDA L09A8 + ORA #$3030 + STA L1159+$A + JMP L09AC + +L09A8 HEX 00000000 +L09AC LDA #L1159 + LDX L0E7E+2 + LDY L0E7E + JSR L106E + BCS L09F2 +L09BA TYA + JSR L0D6C + _HideCursor + PEA ^L09F3 + PEA L09F3 + _PaintPixels + PEA $0000 + LDA L0E7A+2 + PHA + LDA L0E7A + CLC + ADC #$7E00 + PHA + _SetColorTable + JSR L0C72 + _ShowCursor +L09F2 RTS + +L09F3 ADRL L0A09 + ADRL L0A19 + ADRL L0A29 + ADRL L0A31 + DW $0000 + ADRL $00000000 +L0A09 DW $0000 ; SCB byte +L0A0B ADRL $00000000 ; Pointer to pixel image + DW $00A0 ; Width + DW $0000 ; Bounds rect + DW $0000 + DW $00C7 + DW $013F +L0A19 DW $0000 ; SCB byte + ADRL $00012000 ; Pointer to pixel image + DW $00A0 ; Width + DW $0000 ; Bounds rect + DW $0000 + DW $00C7 + DW $013F +L0A29 DW $0003 + DW $0000 + DW $006D + DW $0110 +L0A31 DW $0003 + DW $0000 +L0A35 JSR L0945 + JSR L0A41 + LDA #$0005 + JMP L0E4A + +L0A41 SEP #$20 + LDX #$0014 + LDA #$62 +L0A48 STA L129C+$10,X + DEX + BNE L0A48 + LDX #$0014 + LDA #$00 +L0A53 STA L12AD+$13,X + DEX + BNE L0A53 + LDX #$0011 +L0A5C STA L127E+$1D,X + DEX + BNE L0A5C + REP #$20 + LDA #$0004 + STA L0AAF + STZ L0AB1 +L0A6D STZ L0AB3 + STZ L0AB5 + STZ L0AB7 + STZ L0AB9 + STZ L044F + STZ L0451 + STZ L0453 + LDX #$0019 + LDA #$0000 + JSR L041D + LDX #$001A + LDA #$0000 + JSR L041D + LDX #$001B + LDA #$0000 + JSR L041D + LDX #$0019 + JSR L0430 + LDX #$001A + JSR L0430 + LDX #$001B + JMP L0430 + +L0AAF DW $0000 +L0AB1 DW $0000 +L0AB3 DW $0000 +L0AB5 DW $0000 +L0AB7 DW $0000 +L0AB9 DW $0000 +L0ABB LDA #$0000 +L0ABE PHA + ASL + TAX + LDA L421B,X + JSR L0945 + LDA #$0003 + JSR L0E4A + PLA + INC + CMP #$000B + BCC L0ABE + RTS + +L0AD5 JSR L5F27 + JSR L0E10 + PEA $001E + PEA $002B + PEA ^L0FB1 + PEA L0FB1 + PEA $0000 + PEA $0000 + PEA ^L0FD4 + PEA L0FD4 + PEA ^L0FD6 + PEA L0FD6 + _SFGetFile + JSR L0E2E + JSR L5F0B + LDA L0FD6 + BNE L0B0C + RTS + +L0B0C JSR L0B67 + JSR L0B80 + STZ L0AB1 + STZ L0AB3 + STZ L0AB5 + STZ L0AB7 + JSR L0A6D + LDA #L4413 + JMP L0945 + +L0B27 JSR L5F27 + JSR L0E10 + PEA $0019 + PEA $0024 + PEA ^L0FC3 + PEA L0FC3 + PEA ^L0FDC + PEA L0FDC + PEA $000F + PEA ^L0FD6 + PEA L0FD6 + _SFPutFile + JSR L0E2E + JSR L5F0B + LDA L0FD6 + BNE L0B5B + RTS + +L0B5B JSR L0B67 + JSR L0BD5 + LDA #L4413 + JMP L0945 + +L0B67 SEP #$20 + LDX #$000F +L0B6C LDA L0FDD,X + STA L117B+4,X + DEX + BPL L0B6C + LDA L0FDC + INC + INC + STA L117B + REP #$20 + RTS + +L0B80 JSL GSOS + DW $2010 ; Open + ADRL L10E1 + BCS L0BA2 + LDA L10E3 + STA L10EB + STA L114B + JSR L0BA3 + JSL GSOS + DW $2014 ; Close + ADRL L1149 +L0BA2 RTS + +L0BA3 LDX #$0011 + LDY #L129C + JSR L0BC4 + LDX #$0014 + LDY #L12AD + JSR L0BC4 + LDX #$0014 + LDY #L12C1 + JSR L0BC4 + LDX #$0001 + LDY #L0AAF +L0BC4 STX L10F1 + STY L10ED + JSL GSOS + DW $2012 ; Read + ADRL L10E9 + RTS + +L0BD5 JSL GSOS + DW $2002 ; Destroy + ADRL L10DB + JSL GSOS + DW $2001 ; Create + ADRL L10C3 + BCS L0C0D + JSL GSOS + DW $2010 + ADRL L10E1 + BCS L0C0D + LDA L10E3 + STA L10FB + STA L114B + JSR L0C0E + JSL GSOS + DW $2014 ; Close + ADRL L1149 +L0C0D RTS + +L0C0E LDX #$0011 + LDY #L129C + JSR L0C2F + LDX #$0014 + LDY #L12AD + JSR L0C2F + LDX #$0014 + LDY #L12C1 + JSR L0C2F + LDX #$0001 + LDY #L0AAF +L0C2F STX L1101 + STY L10FD + JSL GSOS + DW $2013 ; Write + ADRL L10F9 + RTS + +L0C40 JSR L0E10 + PEA $0000 + PEA $0005 + PEA $0000 + PEA $0000 + PEA $0000 + PEA $0002 + _AlertWindow + JSR L0E2E + PLA + BEQ L0C63 + RTS +L0C63 JMP L0A41 + +L0C66 LDA L0CD4 + EOR #$0001 + STA L0CD4 + JMP L09BA + +L0C72 LDA L0CD4 + BNE L0C78 + RTS + +L0C78 LDA L0AAF + DEC + ASL + TAX + LDA L1666,X + STA $14 + LDY #$0000 + LDA ($14),Y + STA L0553 + LDA $14 + CLC + ADC #$000A + STA $14 + LDA #$0000 +L0C96 PHA + LDY #$0000 + LDA ($14),Y + STA L0CD8 + LDY #$0002 + LDA ($14),Y + STA L0CD6 + LDY #$0004 + LDA ($14),Y + STA L0CDC + LDY #$0006 + LDA ($14),Y + STA L0CDA + PEA ^L0CD6 + PEA L0CD6 + _FrameRect + LDA $14 + CLC + ADC #$000E + STA $14 + PLA + INC + CMP L0553 + BCC L0C96 + RTS + +L0CD4 DW $0000 +L0CD6 DW $0000 +L0CD8 DW $0000 +L0CDA DW $0000 +L0CDC DW $0000 +L0CDE JSR L0E10 + PEA $0000 + PEA $0005 + PEA $0000 + PEA $0000 + PEA $0000 + PEA $0001 + _AlertWindow + JSR L0E2E + PLA + BEQ L0D01 + RTS + +L0D01 JSR L5C47 + PEA $0001 + LDA L0E76+2 + PHA + LDA L0E76 + PHA + _ShutDownTools +L0D16 LDA L0E72 + PHA + _DisposeAll + LDA L0E72 + PHA + _MMShutDown + _TLShutDown + JSL GSOS + DW $2029 ; Quit + ADRL L114D + BRK $BD +L0D3F PHA + PHA + PEA $0001 + PEA $0000 + LDA L0E72 + PHA + PEA $C01C + PEA $0000 + PEA $0000 + _NewHandle + PHD + TSC + TCD + LDA [$03] + TAX + LDY #$0002 + LDA [$03],Y + TXY + TAX + PLD + PLA + PLA + RTS + +L0D6C STA L0DB8+1 + JSR L5F44 + SEP #$20 + LDA L0E7E+2 + STA L0DB3+2 + STA L0D97+3 + STA L0DBF+3 + STA L0DEC+3 + LDA L0E7A+2 + STA L0DB3+1 + STA L0DDE+1 + STA L0DDE+2 + REP #$20 + LDY #$0000 + LDX #$0010 +L0D97 LDAL $AA0000,X + INX + STA L0DC8+1 + AND #$00F0 + BEQ L0DB8 + CMP #$00F0 + BNE L0DAE + JSR L0DE6 + BRA L0DB2 +L0DAE LSR + LSR + LSR + LSR +L0DB2 DEC +L0DB3 MVN $AA0000,$BB0000 + PHK + PLB +L0DB8 CPX #$AAAA + BEQ L0E06 + TYA + SEC +L0DBF SBCL $AA0000,X + INX + INX + STA L0DDB+1 +L0DC8 LDA #$0000 + AND #$000F + CMP #$000F + BNE L0DD6 + JSR L0DE9 +L0DD6 CLC + ADC #$0003 + PHX +L0DDB LDX #$AAAA +L0DDE MVN $BB0000,$BB0000 + PHK + PLB + PLX + BRA L0D97 +L0DE6 LDA #$000F +L0DE9 STA L0DFA+1 +L0DEC LDAL $AA0000,X + INX + AND #$00FF + CMP #$00FF + BNE L0E02 + CLC +L0DFA ADC #$000F + STA L0DFA+1 + BRA L0DEC +L0E02 ADC L0DFA+1 + RTS + +L0E06 STY L0E0C + JMP L5F54 + +L0E0C ADRL $00000000 +L0E10 _HideCursor + LDX #$7FFE +L0E1A LDAL $E12000,X +L0E1E STAL $008000,X + DEX + DEX + BPL L0E1A +L0E26 _ShowCursor + RTS + +L0E2E _HideCursor + LDX #$7FFE +L0E38 LDAL $008000,X + STAL $012000,X + STAL $E12000,X + DEX + DEX + BPL L0E38 + BMI L0E26 +L0E4A DEC + TAX + LDA #$0000 +L0E4F CLC + ADC #$003C + CPX #$0000 + BEQ L0E5B + DEX + BRA L0E4F +L0E5B PHA +L0E5C LDAL $E0C018 + BPL L0E5C +L0E62 LDAL $E0C018 + BMI L0E62 + PLA + DEC + BNE L0E5B + SEC + RTS + +L0E6E ADRL $00000000 +L0E72 DW $0000 +L0E74 DW $0000 +L0E76 ADRL $00000000 +L0E7A ADRL $00000000 +L0E7E ADRL $00000000 +L0E82 ADRL $00008000 + DW $0000 + DW $0000 + DW $0000 +L0E8C STR 'System 6.0.1 Required!' +L0EA3 STR 'Press a key to quit' +L0EB7 STR 'Error while loading tools' +L0ED1 STR 'Cannot allocate memory' +L0EE8 STR 'Cannot load file' +L0EF9 STR 'Quit' +L0EFE DB $00 +L0EFF DW $0000 ; event code +L0F01 ADRL $00000000 ; event message + ADRL $00000000 ; tick count +L0F09 DW $0000 ; mouse location +L0F0B DW $0000 +L0F0D DW $0000 ; modifiers + ADRL $00000000 ; task data + ADRL $001FFFFF ; task mask + ADRL $00000000 + DW $0000 + ADRL $00000000 + ADRL $00000000 +L0F25 ADRL $00000000 + ADRL $00000000 +L0F2D DA L0260 + DA L0260 + DA L028E + DA L0213 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0294 + DA L0260 +L0F73 DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L0260 + DA L032E + DA L032E + DA L032E + DA L032E + DA L0335 + DA L037C + DA L03C3 + DA L0ABB + DA L0B27 + DA L0AD5 +L0FB1 STR 'Load which party?' +L0FC3 STR 'Save party as...' +L0FD4 HEX 015D +L0FD6 DW $0000 + DW $0000 + DW $0000 +L0FDC HEX 05 +L0FDD ASC 'Party' + HEX 00000000000000000000 + HEX 00 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00000000000000000000000000000000 + HEX 00 +L106E STA L110F + STY L113D + STX L113D+2 + STZ L10C1 + JSL GSOS + DW $2010 ; Open + ADRL L110B + BCS L10B8 + LDA L110D + STA L113B + STA L114B + LDA L1135 + STA L1141 + LDA L1135+2 + STA L1141+2 + JSL GSOS + DW $2012 ; Read + ADRL L1139 + BCS L10B8 +L10A7 JSL GSOS + DW $2014 ; Close + ADRL L1149 + LDY L1145 + LDX L1145+2 + RTS + +L10B8 JSR L10A7 + LDY #$0000 + TYX + SEC + RTS + +L10C1 DW $0000 +L10C3 DW $0007 ; Parms for Create + ADRL L117B ; file name + DW $00C3 ; access + DW $005D ; file type + ADRL $0000801B ; aux type + DW $0000 ; storage + ADRL $00000000 ; end of file + ADRL $00000000 ; resource eof +L10DB DW $0001 ; Parms for Destroy + ADRL L117B ; file name +L10E1 DW $0002 ; Parms for Open +L10E3 DW $0000 ; ref num + ADRL L117B ; path name +L10E9 DW $0004 ; Parms for Read +L10EB DW $0000 ; ref num +L10ED ADRL L117B ; buffer ptr +L10F1 ADRL $00000000 ; request count + ADRL $00000000 ; transfer count +L10F9 DW $0005 ; Parms for Write +L10FB DW $0000 ; ref num +L10FD ADRL L117B ; buffer ptr +L1101 ADRL $00000000 ; request count + ADRL $00000000 ; transfer count + DW $0001 ; cache priority +L110B DW $000C ; Parms for Open +L110D DW $0000 ; ref num +L110F ADRL L1159 ; path name + DW $0000 ; req access + DW $0000 ; res num + DW $0000 ; access + DW $0000 ; file type + ADRL $00000000 ; aux type + DW $0000 ; storage + DS 8 ; creation date + DS 8 ; modification date + ADRL $00000000 ; option list +L1135 ADRL $00000000 ; end of file +L1139 DW $0004 ; Parms for Read +L113B DW $0000 ; ref num +L113D ADRL $00000000 ; buffer ptr +L1141 ADRL $00000000 ; request count +L1145 ADRL $00000000 ; transfer count +L1149 DW $0001 ; Parms for Close +L114B DW $0000 ; ref num +L114D DW $0002 ; Parms for Quit + ADRL $00000000 ; path name + DW $0000 ; flags +L1155 DW $0001 ; Parms for GetVersion +L1157 DW $0000 ; version number +L1159 STRL '1/data/p00.lz4' +L1169 STRL '1/data/icons.lz4' +L117B STRL '0/ ' +L118E DW $0004 +L1190 DW $0075 +L1192 DW $0019 +L1194 DW $0089 + DW $001A + DW $0075 + DW $002F + DW $0089 + DW $0030 + DW $0075 + DW $0045 + DW $0089 + DW $0046 + DW $0075 + DW $005B + DW $0089 + DW $005C + DW $0075 + DW $0071 + DW $0089 + DW $0072 + DW $0075 + DW $0087 + DW $0089 + DW $0088 + DW $0075 + DW $009D + DW $0089 + DW $009E + DW $0075 + DW $00B3 + DW $0089 + DW $00B4 + DW $0075 + DW $00C9 + DW $0089 + DW $00CA + DW $0075 + DW $00DF + DW $0089 + DW $0004 + DW $008A + DW $0019 + DW $009E + DW $001A + DW $008A + DW $002F + DW $009E + DW $0030 + DW $008A + DW $0045 + DW $009E + DW $0046 + DW $008A + DW $005B + DW $009E + DW $005C + DW $008A + DW $0071 + DW $009E + DW $0072 + DW $008A + DW $0087 + DW $009E + DW $0088 + DW $008A + DW $009D + DW $009E + DW $009E + DW $008A + DW $00B3 + DW $009E + DW $00B4 + DW $008A + DW $00C9 + DW $009E + DW $00CA + DW $008A + DW $00DF + DW $009E + DW $00E6 + DW $0070 + DW $00FA + DW $0086 + DW $00FE + DW $0070 + DW $0112 + DW $0086 + DW $00E6 + DW $0089 + DW $00FA + DW $009F + DW $00FE + DW $0089 + DW $0112 + DW $009F + DW $0115 + DW $004A + DW $013D + DW $0064 + DW $0115 + DW $0067 + DW $013D + DW $0081 + DW $0115 + DW $0084 + DW $013D + DW $009E + DW $0115 + DW $0002 + DW $013D + DW $000D + DW $0115 + DW $0010 + DW $013D + DW $002A + DW $0115 + DW $002D + DW $013D + DW $0047 +L127E HEX 00000000000000000000000000000000 + HEX 0000000000000000000000000000 +L129C HEX 00000000000000000000000000000000 + HEX 00 +L12AD HEX 00000000000000000000000000000000 + HEX 00000000 +L12C1 HEX 00000000000000000000000000000000 + HEX 00000000 +L12D5 DA L12FD + DA L1316 + DA L1334 + DA L1371 + DA L13A3 + DA L13C9 + DA L13E0 + DA L13FF + DA L1416 + DA L143F + DA L1471 + DA L14B0 + DA L14D3 + DA L14E0 + DA L1527 + DA L1545 + DA L15D0 + DA L1603 + DA L1636 + DA L1665 +L12FD STR 'A photo of Professor X.!' +L1316 STR 'A plane ticket to N'27'Gwanal'8E'l'8E +L1334 STR 'A credit card. There must be some money left in the account.' +L1371 STR 'Passport. Inseparable companion of the Adventurer' +L13A3 STR 'Twigs. It must be able to burn easily' +L13C9 STR 'A machete (calm down!)' +L13E0 STR 'The famous fetish so coveted!!' +L13FF STR 'Click click, a lighter' +L1416 STR 'Bill'27's ID card when he takes the subway.' +L143F STR 'An old salad. Not edible for a civilized being...' +L1471 STR 'A mechanical mouse. It shakes a few seconds after being raised' +L14B0 STR 'A box of paella. No time to eat...' +L14D3 STR 'A can opener' +L14E0 STR 'The Perfect Adventurer'27's Guide. Bill hasn'27't needed it for a long time!' +L1527 STR 'The bomb seems to be disarmed' +L1545 STR 'The Adventurer'27's Gazette. A freelance writer reveals that a fetish was stolen from N'27'Gwanal'8E'l'8E' by Professor X., this scholar of sad renown' +L15D0 STR 'Let'27's keep calm: this submachine gun is loaded ...' +L1603 STR 'A call. It makes a weird noise when you blow in it' +L1636 STR 'This gun should only be used for a good cause!' +L1665 STR '' +L1666 DA L16D6 + DA L18D3 + DA L1AB9 + DA L1B64 + DA L1C33 + DA L1C8F + DA L1D2E + DA L1E00 + DA L1E1B + DA L1F6A + DA L2144 + DA L22ED + DA L238F + DA L2424 + DA L256A + DA L2679 + DA L2694 + DA L26AF + DA L27BE + DA L287A + DA L29B3 + DA L29CE + DA L29E9 + DA L2A2C + DA L2A9B + DA L2B2B + DA L2BA4 + DA L2C5D + DA L2CB2 + DA L2D72 + DA L2DFB + DA L2E16 + DA L2E57 + DA L2EDD + DA L2FB7 + DA L30B3 + DA L314E + DA L3169 + DA L32BF + DA L337B + DA L33D2 + DA L33ED + DA L351B + DA L3536 + DA L366E + DA L377D + DA L3798 + DA L37B3 + DA L394F + DA L3A09 + DA L3A7F + DA L3CAC + DA L3F3D + DA L41CA + DA L41E5 + DA L4200 +L16D6 DW $0007 + DW $0002 + DW $0004 + DW $0000 + DW $0000 + DW $007B + DW $0054 + DW $008A + DW $006A + DA L1742 + DA L1743 + DA L1756 + DW $0036 + DW $0047 + DW $0044 + DW $0054 + DA L1757 + DA L1758 + DA L1764 + DW $004F + DW $0044 + DW $0075 + DW $006C + DA L1765 + DA L1773 + DA L177B + DW $0013 + DW $002B + DW $0036 + DW $0062 + DA L17BE + DA L17BF + DA L17E8 + DW $004D + DW $0017 + DW $0096 + DW $0039 + DA L17E9 + DA L1811 + DA L182F + DW $009E + DW $0025 + DW $00F7 + DW $006C + DA L1830 + DA L183D + DA L187D + DW $001B + DW $0036 + DW $002A + DW $003B + DA L187E + DA L18A7 + DA L18D2 +L1742 STR '' +L1743 STR 'An old packing box' +L1756 STR '' +L1757 STR '' +L1758 STR 'The mailbox' +L1764 STR '' +L1765 STR 'Disgusting...' +L1773 STR 'A tramp' +L177B STR "RA little politeness! I was an adventurer game developer, me Sir!S" +L17BE STR '' +L17BF STR 'What if Bill was looking out the window?' +L17E8 STR '' +L17E9 STR 'How about you walk in through the door?' +L1811 STR 'It is inside Bill'27's apartment' +L182F STR '' +L1830 STR 'Don'27't touch!' +L183D STR 'He is Bill Palmer, hero of heroes on the way to a new adventure' +L187D STR '' +L187E STR 'Bill is not going to tear the plate off!' +L18A7 STR "RBill Palmer. Adventurer. On appointment.S" +L18D2 STR '' +L18D3 DW $0007 + DW $0003 + DW $0001 + DW $0000 + DW $0000 + DW $004D + DW $001A + DW $0062 + DW $0033 + DA L193F + DA L196B + DA L196C + DW $0052 + DW $0035 + DW $0059 + DW $003D + DA L196D + DA L196E + DA L1979 + DW $0002 + DW $0014 + DW $0037 + DW $002F + DA L197A + DA L197B + DA L19AC + DW $0016 + DW $003C + DW $0054 + DW $0055 + DA L19AD + DA L19BC + DA L19C6 + DW $00BB + DW $0031 + DW $00CB + DW $0048 + DA L19C7 + DA L19E2 + DA L19FC + DW $0047 + DW $0008 + DW $0061 + DW $0017 + DA L19FD + DA L1A1C + DA L1A47 + DW $00AC + DW $002C + DW $00B3 + DW $0032 + DA L1A48 + DA L1AA7 + DA L1AB8 +L193F STR 'Bill is already sporting his leather jacket' +L196B STR '' +L196C STR '' +L196D STR '' +L196E STR 'The pocket' +L1979 STR '' +L197A STR '' +L197B STR 'A shelf full of old books and computer magazines' +L19AC STR '' +L19AD STR 'A little soggy' +L19BC STR 'The couch' +L19C6 STR '' +L19C7 STR 'Be careful, it is fragile!' +L19E2 STR 'A worthless old Ming vase' +L19FC STR '' +L19FD STR 'The hole is already big enough' +L1A1C STR 'Hey Bill! Should see to redo the plasters!' +L1A47 STR '' +L1A48 STR 'Damn! The blind is stuck. We will have to find another trick to watch the neighbor get dressed' +L1AA7 STR 'The blind zipper' +L1AB8 STR '' +L1AB9 DW $0003 + DW $0002 + DW $0002 + DW $0002 + DW $0002 + DW $008A + DW $0044 + DW $0099 + DW $0051 + DA L1AED + DA L1AEE + DA L1B08 + DW $0056 + DW $005B + DW $0068 + DW $0067 + DA L1B09 + DA L1B0A + DA L1B0B + DW $00CD + DW $0000 + DW $00E3 + DW $0015 + DA L1B0C + DA L1B32 + DA L1B63 +L1AED STR '' +L1AEE STR 'The lock. Currently open.' +L1B08 STR '' +L1B09 STR '' +L1B0A STR '' +L1B0B STR '' +L1B0C STR 'Not yet the time to draw the curtains' +L1B32 STR 'Not very clean. Should see to wash it all, Bill!' +L1B63 STR '' +L1B64 DW $0003 + DW $0006 + DW $0001 + DW $0000 + DW $0000 + DW $00C9 + DW $0027 + DW $010E + DW $0061 + DA L1B98 + DA L1B99 + DA L1BAE + DW $0002 + DW $0035 + DW $009D + DW $006D + DA L1BC9 + DA L1BE6 + DA L1C0D + DW $00B1 + DW $003A + DW $00BB + DW $0043 + DA L1C1D + DA L1C1E + DA L1C32 +L1B98 STR '' +L1B99 STR 'It was a nice car...' +L1BAE STR 'Do you speak car language?' +L1BC9 STR 'It would leave fingerprints!' +L1BE6 STR 'No, no. Not this one. The other one!!!' +L1C0D STR 'We would eat...' +L1C1D STR '' +L1C1E STR 'The hood open there' +L1C32 STR '' +L1C33 DW $0002 + DW $0004 + DW $0004 + DW $0004 + DW $0004 + DW $0090 + DW $0035 + DW $00BC + DW $0049 + DA L1C59 + DA L1C6D + DA L1C6E + DW $002C + DW $0050 + DW $0076 + DW $006B + DA L1C6F + DA L1C70 + DA L1C8E +L1C59 STR 'Fix it? To do what?' +L1C6D STR '' +L1C6E STR '' +L1C6F STR '' +L1C70 STR 'Just for a few extra parts...' +L1C8E STR '' +L1C8F DW $0004 + DW $0004 + DW $0004 + DW $0004 + DW $0004 + DW $00DE + DW $0031 + DW $00E9 + DW $003E + DA L1CD1 + DA L1CD2 + DA L1CE3 + DW $00D1 + DW $0033 + DW $00D9 + DW $003D + DA L1CE4 + DA L1CE5 + DA L1CF3 + DW $00EA + DW $0038 + DW $0109 + DW $004A + DA L1CF4 + DA L1CF5 + DA L1D03 + DW $00BC + DW $0040 + DW $00C9 + DW $004C + DA L1D04 + DA L1D1E + DA L1D2D +L1CD1 STR '' +L1CD2 STR 'The ignition key' +L1CE3 STR '' +L1CE4 STR '' +L1CE5 STR 'The altimeter' +L1CF3 STR '' +L1CF4 STR '' +L1CF5 STR 'The glove box' +L1D03 STR '' +L1D04 STR 'It is okay, it is stalled' +L1D1E STR 'The gear lever' +L1D2D STR '' +L1D2E DW $0003 + DW $0009 + DW $0000 + DW $0000 + DW $0004 + DW $0002 + DW $0048 + DW $004D + DW $0060 + DA L1D62 + DA L1D7F + DA L1DA2 + DW $005F + DW $0017 + DW $0086 + DW $0024 + DA L1DA3 + DA L1DC6 + DA L1DDC + DW $00B1 + DW $002C + DW $010F + DW $006D + DA L1DDD + DA L1DDE + DA L1DFF +L1D62 STR 'It cannot be taken like that' +L1D7F STR 'Quickly, he leaves to N'27'Gwanal'8E'l'8E'!' +L1DA2 STR '' +L1DA3 STR 'Would take a lot of moment to jump' +L1DC6 STR 'Too late for that one' +L1DDC STR '' +L1DDD STR '' +L1DDE STR 'She does not get better with age' +L1DFF STR '' +L1E00 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L1E18 + DA L1E19 + DA L1E1A +L1E18 STR '' +L1E19 STR '' +L1E1A STR '' +L1E1B DW $0004 + DW $0000 + DW $0007 + DW $0000 + DW $0000 + DW $0013 + DW $000F + DW $0046 + DW $003D + DA L1E5D + DA L1E7F + DA L1E86 + DW $008F + DW $000E + DW $00C0 + DW $003C + DA L1E8F + DA L1EB4 + DA L1EE1 + DW $00B8 + DW $0032 + DW $00D2 + DW $003D + DA L1F1B + DA L1F41 + DA L1F4D + DW $00C2 + DW $0010 + DW $00E2 + DW $0017 + DA L1F4E + DA L1F4F + DA L1F69 +L1E5D STR 'Let'27's see, a little discretion!!!' +L1E7F STR 'Glup!!' +L1E86 STR 'Schmack!' +L1E8F STR 'Instead, keep your hand on the mouse' +L1EB4 STR 'Bill should first think about his mission...' +L1EE1 STR "RWe have special promotions for tickets to South Africa!S" +L1F1B STR 'Above all, you are not embarrassed...' +L1F41 STR 'A telephone' +L1F4D STR '' +L1F4E STR '' +L1F4F STR 'Credit cards are accepted' +L1F69 STR '' +L1F6A DW $0005 + DW $0000 + DW $0000 + DW $0000 + DW $0009 + DW $00C0 + DW $001C + DW $00E0 + DW $0062 + DA L1FBA + DA L1FE4 + DA L2016 + DW $0079 + DW $003C + DW $0099 + DW $006C + DA L203D + DA L2056 + DA L2084 + DW $0018 + DW $0015 + DW $004A + DW $0064 + DA L2099 + DA L209A + DA L20C1 + DW $00EF + DW $000A + DW $010B + DW $006A + DA L20DD + DA L20DE + DA L2100 + DW $0004 + DW $0010 + DW $0018 + DW $0032 + DA L212F + DA L2135 + DA L213C +L1FBA STR "RIt is very nice to help me my good sir!S" +L1FE4 STR 'Too bad he is White. He looked like Stevie Wonder' +L2016 STR "RSorry, is this the soccer game here?S" +L203D STR 'Come on!!! At her age!!!' +L2056 STR 'If you are already looking at little girls...' +L2084 STR "RYou want my photo?S" +L2099 STR '' +L209A STR 'Be careful, it is the customs officer!' +L20C1 STR 'Show your passport, please!' +L20DD STR '' +L20DE STR 'It must be a diplomat coming home' +L2100 STR "RAnothe' one who thinks he is Ha'ison Fowd...S" +L212F STR 'Stop!' +L2135 STR "RStopS" +L213C STR 'Re-stop' +L2144 DW $0004 + DW $0000 + DW $0000 + DW $000A + DW $000C + DW $0027 + DW $004C + DW $006B + DW $005B + DA L2186 + DA L21A2 + DA L21E0 + DW $002F + DW $0037 + DW $0052 + DW $005B + DA L21E1 + DA L21E2 + DA L21F6 + DW $0081 + DW $0011 + DW $00BF + DW $0057 + DA L2236 + DA L2244 + DA L227F + DW $00BE + DW $0008 + DW $0106 + DW $003F + DA L2288 + DA L229B + DA L22BF +L2186 STR 'Bill already has his ticket' +L21A2 STR 'It is a plane ticket to Auckland. A one-way ticket is enough!' +L21E0 STR '' +L21E1 STR '' +L21E2 STR 'Is he the pilot?!?!' +L21F6 STR "RThink that there is only one parachute for the whole plane...S" +L2236 STR 'To push him??' +L2244 STR 'What if Bill did the same before he encountered the worst?' +L227F STR "RArgh!!S" +L2288 STR 'Don'27't be afraid...' +L229B STR "RPoids weight without load: 213 KgS" +L22BF STR "RAren't you gonna get off on our honeymoon!?S" +L22ED DW $0004 + DW $0000 + DW $000D + DW $0000 + DW $0000 + DW $0006 + DW $004F + DW $0023 + DW $005B + DA L232F + DA L2330 + DA L2336 + DW $002B + DW $0040 + DW $0036 + DW $004F + DA L2337 + DA L2338 + DA L2348 + DW $0029 + DW $0052 + DW $003D + DW $0062 + DA L2349 + DA L234A + DA L236E + DW $0047 + DW $000E + DW $0068 + DW $0031 + DA L236F + DA L2386 + DA L238E +L232F STR '' +L2330 STR 'Mecca' +L2336 STR '' +L2337 STR '' +L2338 STR 'Alaska 13583 km' +L2348 STR '' +L2349 STR '' +L234A STR 'Maubeuge (city center) : first left' +L236E STR '' +L236F STR 'Be careful, it cuts!!!' +L2386 STR 'A helix' +L238E STR '' +L238F DW $0003 + DW $000F + DW $000C + DW $000C + DW $000E + DW $0096 + DW $000C + DW $00AD + DW $0018 + DA L23C3 + DA L23C4 + DA L23D6 + DW $00B2 + DW $0019 + DW $00CE + DW $0025 + DA L23D7 + DA L23D8 + DA L23EC + DW $001C + DW $005B + DW $0059 + DW $0065 + DA L23ED + DA L23EE + DA L2423 +L23C3 STR '' +L23C4 STR "RDromacar dealerS" +L23D6 STR '' +L23D7 STR '' +L23D8 STR "RWalk this way!!!!S" +L23EC STR '' +L23ED STR '' +L23EE STR 'Hum! There seems to be something under these stones!' +L2423 STR '' +L2424 DW $0003 + DW $0000 + DW $000D + DW $0000 + DW $0000 + DW $00C3 + DW $0016 + DW $00E1 + DW $003C + DA L2458 + DA L2459 + DA L2479 + DW $00E7 + DW $0021 + DW $00F5 + DW $003B + DA L24CB + DA L24FD + DA L2506 + DW $0002 + DW $003C + DW $003C + DW $006A + DA L2507 + DA L2508 + DA L2531 +L2458 STR '' +L2459 STR 'He is the curator of the museum' +L2479 STR "RIf you bring the Stolen Fetish back to us, you will get a big reward right now!S" +L24CB STR 'It would be too easy if that was the one to find!' +L24FD STR 'A fetish' +L2506 STR '' +L2507 STR '' +L2508 STR 'It was either that or end up in cat food' +L2531 STR 'Either way, it is not now that he is gonna start talking' +L256A DW $0003 + DW $0010 + DW $000D + DW $0000 + DW $0000 + DW $0045 + DW $003E + DW $0079 + DW $006C + DA L259E + DA L259F + DA L25B7 + DW $0002 + DW $000E + DW $0044 + DW $0038 + DA L25E2 + DA L2605 + DA L261F + DW $0067 + DW $000B + DW $00C2 + DW $0039 + DA L2651 + DA L265D + DA L2678 +L259E STR '' +L259F STR 'A seller of dromedaries' +L25B7 STR "RI only deal with real adventurers there!S" +L25E2 STR 'Did you hope he was going to purr?' +L2605 STR 'Un cam... No, a dromadary' +L261F STR 'Dromedaries do not speak, even in adventure games' +L2651 STR 'Good boy...' +L265D STR 'He must be malnourished...' +L2678 STR '' +L2679 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L2691 + DA L2692 + DA L2693 +L2691 STR '' +L2692 STR '' +L2693 STR '' +L2694 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L26AC + DA L26AD + DA L26AE +L26AC STR '' +L26AD STR '' +L26AE STR '' +L26AF DW $0004 + DW $0014 + DW $0000 + DW $0000 + DW $0013 + DW $0004 + DW $0034 + DW $0027 + DW $004D + DA L26F1 + DA L26F2 + DA L2714 + DW $0024 + DW $0020 + DW $0075 + DW $0056 + DA L2715 + DA L2716 + DA L2731 + DW $0075 + DW $0024 + DW $00E2 + DW $0061 + DA L2732 + DA L2733 + DA L277D + DW $00EB + DW $0024 + DW $0108 + DW $0061 + DA L277E + DA L277F + DA L2795 +L26F1 STR '' +L26F2 STR 'It must be the fourth class wagon' +L2714 STR '' +L2715 STR '' +L2716 STR 'The adventurer class wagon' +L2731 STR '' +L2732 STR '' +L2733 STR 'The reformed model 1865 locomotive 1917 is just waiting for Bill to leave' +L277D STR '' +L277E STR '' +L277F STR 'A hitchhiker no doubt' +L2795 STR "RTchou tchou!! T'wain is going to leav'S" +L27BE DW $0002 + DW $0000 + DW $0000 + DW $0012 + DW $0000 + DW $00AB + DW $0018 + DW $010E + DW $004D + DA L27E4 + DA L2802 + DA L2830 + DW $00B5 + DW $0059 + DW $00EB + DW $006B + DA L2848 + DA L285C + DA L2879 +L27E4 STR 'Slowly, it might wake him up!' +L2802 STR 'He sells tickets. But the break seems long...' +L2830 STR "RLater, coco, later...S" +L2848 STR 'Ugh! Human bones...' +L285C STR 'Well, some people eat rabbit' +L2879 STR '' +L287A DW $0005 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $00A9 + DW $000F + DW $00DB + DW $006C + DA L28CA + DA L28CB + DA L28FB + DW $00E1 + DW $000A + DW $010F + DW $006B + DA L2908 + DA L2909 + DA L2943 + DW $00C7 + DW $0002 + DW $00D1 + DW $0008 + DA L2944 + DA L2945 + DA L299C + DW $005B + DW $0010 + DW $0068 + DW $001A + DA L299D + DA L299E + DA L29AF + DW $000C + DW $000F + DW $0052 + DW $0044 + DA L29B0 + DA L29B1 + DA L29B2 +L28CA STR '' +L28CB STR 'Blistering barnacles! Would we be in the Congo?' +L28FB STR "RBy crikey!S" +L2908 STR '' +L2909 STR 'So what? The first class is also allowed to Black people.' +L2943 STR '' +L2944 STR '' +L2945 STR "REat at Joe's. On the menu: missionnary, businessman, freelance writer. Ketchup extraS" +L299C STR '' +L299D STR '' +L299E STR 'The alarm signal' +L29AF STR '' +L29B0 STR '' +L29B1 STR '' +L29B2 STR '' +L29B3 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0014 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L29CB + DA L29CC + DA L29CD +L29CB STR '' +L29CC STR '' +L29CD STR '' +L29CE DW $0001 + DW $0000 + DW $0017 + DW $0017 + DW $0014 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L29E6 + DA L29E7 + DA L29E8 +L29E6 STR '' +L29E7 STR '' +L29E8 STR '' +L29E9 DW $0001 + DW $0000 + DW $0000 + DW $0018 + DW $0000 + DW $0050 + DW $004F + DW $006C + DW $005A + DA L2A01 + DA L2A02 + DA L2A2B +L2A01 STR '' +L2A02 STR 'What if this stone was hiding something?' +L2A2B STR '' +L2A2C DW $0002 + DW $001C + DW $0017 + DW $0019 + DW $0000 + DW $003C + DW $004B + DW $0052 + DW $0069 + DA L2A52 + DA L2A53 + DA L2A68 + DW $0075 + DW $000F + DW $009C + DW $0030 + DA L2A69 + DA L2A6A + DA L2A9A +L2A52 STR '' +L2A53 STR "RWarning: elephantsS" +L2A68 STR '' +L2A69 STR '' +L2A6A STR 'The top of this mountain is hiding something...' +L2A9A STR '' +L2A9B DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $00A2 + DW $0002 + DW $0107 + DW $004B + DA L2AB3 + DA L2AC7 + DA L2B17 +L2AB3 STR 'Is that reasonable?' +L2AC7 STR 'In my opinion, the self control of this pachyderm seems to be seriously damaged' +L2B17 STR "RSlow down, buddy!S" +L2B2B DW $0001 + DW $0000 + DW $0018 + DW $0000 + DW $0018 + DW $00EE + DW $004A + DW $0110 + DW $006C + DA L2B43 + DA L2B5D + DA L2BA3 +L2B43 STR 'Cannot pull twigs by hand' +L2B5D STR 'A rare variety of an African herb renowned for its ease of combustion' +L2BA3 STR '' +L2BA4 DW $0003 + DW $0000 + DW $0000 + DW $0000 + DW $0018 + DW $0001 + DW $0002 + DW $0060 + DW $006E + DA L2BD8 + DA L2BD9 + DA L2BDA + DW $00E1 + DW $0047 + DW $0103 + DW $006D + DA L2BDB + DA L2BF7 + DA L2C26 + DW $0079 + DW $004D + DW $00D4 + DW $006A + DA L2C27 + DA L2C28 + DA L2C34 +L2BD8 STR '' +L2BD9 STR '' +L2BDA STR '' +L2BDB STR 'No need, no one is in sight' +L2BF7 STR 'The stone that comes to knock this wretch down' +L2C26 STR '' +L2C27 STR '' +L2C28 STR 'He is dead!' +L2C34 STR 'And you imagined he was going to answer?' +L2C5D DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0018 + DW $0001 + DW $0002 + DW $0060 + DW $006E + DA L2C75 + DA L2C76 + DA L2C95 +L2C75 STR '' +L2C76 STR 'We will have to climb all that' +L2C95 STR 'It is not a sacred mountain!' +L2CB2 DW $0003 + DW $0020 + DW $0000 + DW $0000 + DW $0000 + DW $0002 + DW $0011 + DW $0024 + DW $0031 + DA L2CE6 + DA L2CFB + DA L2D22 + DW $0028 + DW $002D + DW $0038 + DW $0039 + DA L2D23 + DA L2D24 + DA L2D48 + DW $005F + DW $005D + DW $008B + DW $006D + DA L2D49 + DA L2D4A + DA L2D67 +L2CE6 STR 'What about the SPCA?' +L2CFB STR 'You never know, sometimes Bill dies...' +L2D22 STR '' +L2D23 STR '' +L2D24 STR 'It would probably make a nice catch' +L2D48 STR '' +L2D49 STR '' +L2D4A STR 'Warning! It is chasing Bill!' +L2D67 STR "RUrk Urk!S" +L2D72 DW $0002 + DW $001F + DW $001B + DW $0000 + DW $001B + DW $0002 + DW $0011 + DW $0024 + DW $0031 + DA L2D98 + DA L2DAD + DA L2DD4 + DW $0028 + DW $002D + DW $0038 + DW $0039 + DA L2DD5 + DA L2DD6 + DA L2DFA +L2D98 STR 'What about the SPCA?' +L2DAD STR 'You never know, sometimes Bill dies...' +L2DD4 STR '' +L2DD5 STR '' +L2DD6 STR 'It would probably make a nice catch' +L2DFA STR '' +L2DFB DW $0001 + DW $0028 + DW $001E + DW $0021 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L2E13 + DA L2E14 + DA L2E15 +L2E13 STR '' +L2E14 STR '' +L2E15 STR '' +L2E16 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $00A2 + DW $002B + DW $00BC + DW $0046 + DA L2E2E + DA L2E2F + DA L2E56 +L2E2E STR '' +L2E2F STR 'It seems to be able to be moved easily' +L2E56 STR '' +L2E57 DW $0002 + DW $0024 + DW $001F + DW $0000 + DW $0000 + DW $0003 + DW $0004 + DW $001B + DW $001B + DA L2E7D + DA L2E9A + DA L2EB0 + DW $00C8 + DW $0003 + DW $00E9 + DW $0015 + DA L2EC2 + DA L2ED3 + DA L2EDC +L2E7D STR 'Cannot tear off this camera!' +L2E9A STR 'A surveillance camera' +L2EB0 STR 'To mist the lens?' +L2EC2 STR 'Ouch! It is hot!' +L2ED3 STR 'Dazzling' +L2EDC STR '' +L2EDD DW $0003 + DW $0000 + DW $0000 + DW $0000 + DW $0024 + DW $0046 + DW $003D + DW $0070 + DW $0051 + DA L2F11 + DA L2F12 + DA L2F28 + DW $0002 + DW $0042 + DW $001B + DW $0069 + DA L2F29 + DA L2F67 + DA L2F68 + DW $00B0 + DW $0018 + DW $00DA + DW $003A + DA L2F69 + DA L2F83 + DA L2FB6 +L2F11 STR '' +L2F12 STR 'Some embers still hot' +L2F28 STR '' +L2F29 STR 'Some dressers must not contain anything. It would not be fun!' +L2F67 STR '' +L2F68 STR '' +L2F69 STR 'No time to make pancakes!' +L2F83 STR 'Stoves (you really have to tell him everything...)' +L2FB6 STR '' +L2FB7 DW $0003 + DW $0000 + DW $0000 + DW $0000 + DW $0024 + DW $0046 + DW $003D + DW $0070 + DW $0051 + DA L2FEB + DA L2FEC + DA L3024 + DW $0002 + DW $0042 + DW $001B + DW $0069 + DA L3025 + DA L3063 + DA L3064 + DW $00B0 + DW $0018 + DW $00DA + DW $003A + DA L3065 + DA L307F + DA L30B2 +L2FEB STR '' +L2FEC STR 'The fire gives off smoke which escapes through the flue' +L3024 STR '' +L3025 STR 'Some dressers must not contain anything. It would not be fun!' +L3063 STR '' +L3064 STR '' +L3065 STR 'No time to make pancakes!' +L307F STR 'Stoves (you really have to tell him everything...)' +L30B2 STR '' +L30B3 DW $0002 + DW $0000 + DW $0021 + DW $0022 + DW $0027 + DW $004A + DW $000C + DW $0088 + DW $005E + DA L30D9 + DA L30DA + DA L30EC + DW $00D4 + DW $0002 + DW $00EF + DW $005D + DA L30FD + DA L3113 + DA L314D +L30D9 STR '' +L30DA STR 'Shall we open it?' +L30EC STR "RSomeone there?S" +L30FD STR 'Too heavy to be moved' +L3113 STR "RFernand loves GeorgetteS is engraved with a pocket knife" +L314D STR '' +L314E DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L3166 + DA L3167 + DA L3168 +L3166 STR '' +L3167 STR '' +L3168 STR '' +L3169 DW $0005 + DW $0000 + DW $0000 + DW $0024 + DW $0000 + DW $0092 + DW $0026 + DW $00A8 + DW $002D + DA L31B9 + DA L31BA + DA L31DE + DW $0092 + DW $0037 + DW $00A7 + DW $003E + DA L31DF + DA L31E0 + DA L320D + DW $00AC + DW $0027 + DW $00BB + DW $003A + DA L320E + DA L320F + DA L3229 + DW $00DE + DW $0028 + DW $00EC + DW $003B + DA L322A + DA L3256 + DA L326D + DW $00F2 + DW $002D + DW $0110 + DW $0055 + DA L3283 + DA L329A + DA L32BE +L31B9 STR '' +L31BA STR 'What if I tell you it iss a drawer?' +L31DE STR '' +L31DF STR '' +L31E0 STR 'However, it is not complicated to open it...' +L320D STR '' +L320E STR '' +L320F STR 'We could drink it well...' +L3229 STR '' +L322A STR 'It is the fetish that must be brought back!' +L3256 STR 'Maybe a predecessor...' +L326D STR 'Not very talkative...' +L3283 STR 'Better not to touch it' +L329A STR 'Barely more complex than an Atari..' +L32BE STR '' +L32BF DW $0002 + DW $0024 + DW $0000 + DW $0000 + DW $0000 + DW $00CB + DW $0004 + DW $00F7 + DW $005E + DA L32E5 + DA L3306 + DA L3315 + DW $00EA + DW $0034 + DW $00F1 + DW $003C + DA L3316 + DA L3317 + DA L337A +L32E5 STR 'Nothing to do, it remains closed' +L3306 STR 'We open it up?' +L3315 STR '' +L3316 STR '' +L3317 STR 'Bill sees through the keyhole dozens of people bustling around the fetish plugged into electrodes!' +L337A STR '' +L337B DW $0002 + DW $0000 + DW $001F + DW $0000 + DW $0000 + DW $0015 + DW $0003 + DW $0062 + DW $002F + DA L33A1 + DA L33A2 + DA L33C4 + DW $004C + DW $004B + DW $009A + DW $005C + DA L33CF + DA L33D0 + DA L33D1 +L33A1 STR '' +L33A2 STR 'It seems to lose interest in Bill' +L33C4 STR 'Chip chip?' +L33CF STR '' +L33D0 STR '' +L33D1 STR '' +L33D2 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L33EA + DA L33EB + DA L33EC +L33EA STR '' +L33EB STR '' +L33EC STR '' +L33ED DW $0004 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0009 + DW $000F + DW $0034 + DW $0043 + DA L342F + DA L345B + DA L3477 + DW $0040 + DW $0019 + DW $006B + DW $004C + DA L3493 + DA L3494 + DA L34AE + DW $00A7 + DW $0025 + DW $00D8 + DW $0042 + DA L34CE + DA L34CF + DA L34D0 + DW $00E3 + DW $000B + DW $0110 + DW $006B + DA L350C + DA L350D + DA L350E +L342F STR 'Bill should not attempt hand-to-hand combat' +L345B STR 'He looks very aggressive...' +L3477 STR "RSay your prayers, rascal!S" +L3493 STR '' +L3494 STR 'If you want my opinion...' +L34AE STR "RYou are living your last hourS" +L34CE STR '' +L34CF STR '' +L34D0 STR "RThe Professor instructed us to come and give you flowers!S" +L350C STR '' +L350D STR '' +L350E STR "RHurk Hurk!S" +L351B DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L3533 + DA L3534 + DA L3535 +L3533 STR '' +L3534 STR '' +L3535 STR '' +L3536 DW $0003 + DW $002D + DW $0000 + DW $0000 + DW $0000 + DW $0015 + DW $0008 + DW $0081 + DW $006B + DA L356A + DA L356B + DA L3589 + DW $0057 + DW $0021 + DW $0081 + DW $006B + DA L3598 + DA L3599 + DA L35C0 + DW $0085 + DW $001D + DW $00D5 + DW $005C + DA L361A + DA L361B + DA L361C +L356A STR '' +L356B STR 'That guy is completely bugged' +L3589 STR "RDo not push!S" +L3598 STR '' +L3599 STR 'The SOS Adventurers team! It was time!' +L35C0 STR "RGo north if you want to follow us to the rest of the adventure and meet the Professeur!S" +L361A STR '' +L361B STR '' +L361C STR "RWe are the members of SOS Adventurers. We are here to help keep the game going!S" +L366E DW $0003 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0021 + DW $0008 + DW $0058 + DW $0068 + DA L36A2 + DA L36BF + DA L36DF + DW $00C7 + DW $0001 + DW $00D7 + DW $0013 + DA L36FF + DA L3700 + DA L3722 + DW $0080 + DW $003D + DW $00B1 + DW $006B + DA L3723 + DA L374D + DA L376F +L36A2 STR 'He does very well on his own' +L36BF STR 'What the hell is he doing here?' +L36DF STR "RIt is not Leader Board here!!S" +L36FF STR '' +L3700 STR 'The flag indicating the golf hole' +L3722 STR '' +L3723 STR "RPass me the Iron 5 while you are at it!S" +L374D STR "RNot very Mediterranean all thatS" +L376F STR "RPut put putS" +L377D DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L3795 + DA L3796 + DA L3797 +L3795 STR '' +L3796 STR '' +L3797 STR '' +L3798 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L37B0 + DA L37B1 + DA L37B2 +L37B0 STR '' +L37B1 STR '' +L37B2 STR '' +L37B3 DW $0005 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0060 + DW $003A + DW $0073 + DW $0047 + DA L3803 + DA L3804 + DA L382E + DW $00EB + DW $0005 + DW $010F + DW $006D + DA L382F + DA L3830 + DA L3864 + DW $0001 + DW $0015 + DW $0053 + DW $005B + DA L38DE + DA L38DF + DA L38EA + DW $00A2 + DW $0001 + DW $00CB + DW $0062 + DA L38EB + DA L38EC + DA L390A + DW $0091 + DW $0019 + DW $009D + DW $0022 + DA L3915 + DA L393A + DA L394E +L3803 STR '' +L3804 STR 'Bill has already managed to free his hand' +L382E STR '' +L382F STR '' +L3830 STR 'The Professor visibly uses the energy of the fetish' +L3864 STR "RYou are lost, Palmer!! This fetish contains an unkonwn material which will allow me to become the master of the world!!S" +L38DE STR '' +L38DF STR 'Hurry up!!' +L38EA STR '' +L38EB STR '' +L38EC STR 'A lieutenant of the Professor' +L390A STR "RShut up!S" +L3915 STR 'Cannot reach it while being tied up!' +L393A STR 'The electric switch' +L394E STR '' +L394F DW $0003 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0091 + DW $0019 + DW $009D + DW $0022 + DA L3983 + DA L3984 + DA L3998 + DW $00EB + DW $0005 + DW $010F + DW $006D + DA L3999 + DA L399A + DA L39B7 + DW $00A2 + DW $0001 + DW $00CB + DW $0062 + DA L39E3 + DA L39E4 + DA L3A08 +L3983 STR '' +L3984 STR 'The electric switch' +L3998 STR '' +L3999 STR '' +L399A STR 'Luckily je did not spot Bill' +L39B7 STR "REvil will finally triumph! Gniark gniark!S" +L39E3 STR '' +L39E4 STR 'Luckily the bad guys do not care...' +L3A08 STR '' +L3A09 DW $0003 + DW $0000 + DW $0000 + DW $0033 + DW $0000 + DW $0085 + DW $0029 + DW $009C + DW $0034 + DA L3A3D + DA L3A3E + DA L3A54 + DW $0032 + DW $002C + DW $004C + DW $0037 + DA L3A55 + DA L3A56 + DA L3A6F + DW $00E0 + DW $003B + DW $00F5 + DW $0045 + DA L3A70 + DA L3A71 + DA L3A7E +L3A3D STR '' +L3A3E STR 'Bill'27's beautiful eyes' +L3A54 STR '' +L3A55 STR '' +L3A56 STR 'The Professor'27's henchman' +L3A6F STR '' +L3A70 STR '' +L3A71 STR 'Professor X.' +L3A7E STR '' +L3A7F DW $0009 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0038 + DW $003D + DW $003D + DW $003F + DA L3B07 + DA L3B17 + DA L3B32 + DW $003C + DW $003D + DW $0048 + DW $003F + DA L3B33 + DA L3B34 + DA L3B51 + DW $0040 + DW $0041 + DW $0046 + DW $0043 + DA L3B52 + DA L3B84 + DA L3BA0 + DW $004A + DW $0040 + DW $004F + DW $0043 + DA L3BA1 + DA L3BA2 + DA L3BAD + DW $007F + DW $002C + DW $008F + DW $003B + DA L3BAE + DA L3BAF + DA L3BBC + DW $0040 + DW $004A + DW $0057 + DW $005D + DA L3BDF + DA L3BE0 + DA L3C11 + DW $001B + DW $0002 + DW $0072 + DW $0024 + DA L3C12 + DA L3C13 + DA L3C58 + DW $0055 + DW $0038 + DW $0078 + DW $0041 + DA L3C59 + DA L3C7A + DA L3C90 + DW $0005 + DW $004A + DW $002C + DW $0066 + DA L3C91 + DA L3C92 + DA L3CAB +L3B07 STR 'Nothing happens' +L3B17 STR "RCoffee, (out of service)S" +L3B32 STR '' +L3B33 STR '' +L3B34 STR "RImmediate self-destructionS" +L3B51 STR '' +L3B52 STR "RSelf-destruction engagedS says a synthetic voice" +L3B84 STR "RDeferred self-destructionS" +L3BA0 STR '' +L3BA1 STR '' +L3BA2 STR "REjectingS" +L3BAD STR '' +L3BAE STR '' +L3BAF STR 'A microphone' +L3BBC STR "ROne, two, one, two, three, four!S" +L3BDF STR '' +L3BE0 STR 'Just enough to store your small personal effects' +L3C11 STR '' +L3C12 STR '' +L3C13 STR 'And says that Professor X. wants to become the master of all this...' +L3C58 STR '' +L3C59 STR 'Pfff... Does one know GFA BASIC?' +L3C7A STR 'Not even from RAtariS' +L3C90 STR '' +L3C91 STR '' +L3C92 STR 'The next Atari streamer?' +L3CAB STR '' +L3CAC DW $000A + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0038 + DW $003D + DW $003D + DW $003F + DA L3D42 + DA L3D52 + DA L3D6D + DW $003C + DW $003D + DW $0048 + DW $003F + DA L3D6E + DA L3D6F + DA L3D8C + DW $0040 + DW $0041 + DW $0046 + DW $0043 + DA L3D8D + DA L3DBF + DA L3DDB + DW $004A + DW $0040 + DW $004F + DW $0043 + DA L3DDC + DA L3DDD + DA L3DE8 + DW $007F + DW $002C + DW $008F + DW $003B + DA L3DE9 + DA L3DEA + DA L3DF7 + DW $0040 + DW $004A + DW $0057 + DW $005D + DA L3E1A + DA L3E1B + DA L3E4C + DW $001B + DW $0002 + DW $0072 + DW $0024 + DA L3E4D + DA L3E4E + DA L3E93 + DW $00C9 + DW $0005 + DW $00F7 + DW $0057 + DA L3E94 + DA L3E95 + DA L3EB7 + DW $0055 + DW $0038 + DW $0078 + DW $0041 + DA L3EEA + DA L3F0B + DA L3F21 + DW $0005 + DW $004A + DW $002C + DW $0066 + DA L3F22 + DA L3F23 + DA L3F3C +L3D42 STR 'Nothing happens' +L3D52 STR "RCoffee, (out of service)S" +L3D6D STR '' +L3D6E STR '' +L3D6F STR "RImmediate self-destructionS" +L3D8C STR '' +L3D8D STR "RSelf-destruction engagedS says a synthetic voice" +L3DBF STR "RDeferred self-destructionS" +L3DDB STR '' +L3DDC STR '' +L3DDD STR "REjectingS" +L3DE8 STR '' +L3DE9 STR '' +L3DEA STR 'A microphone' +L3DF7 STR "ROne, two, one, two, three, four!S" +L3E1A STR '' +L3E1B STR 'Just enough to store your small personal effects' +L3E4C STR '' +L3E4D STR '' +L3E4E STR 'And says that Professor X. wants to become the master of all this...' +L3E93 STR '' +L3E94 STR '' +L3E95 STR 'Quick! Bill has to do something!!' +L3EB7 STR "RYou will not espace me this time around, Palmer!S" +L3EEA STR 'Pfff... Does one know GFA BASIC?' +L3F0B STR 'Not even from RAtariS' +L3F21 STR '' +L3F22 STR '' +L3F23 STR 'The next Atari streamer?' +L3F3C STR '' +L3F3D DW $000A + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0038 + DW $003D + DW $003D + DW $003F + DA L3FD3 + DA L3FE3 + DA L3FFE + DW $003C + DW $003D + DW $0048 + DW $003F + DA L3FFF + DA L4000 + DA L401D + DW $0040 + DW $0041 + DW $0046 + DW $0043 + DA L401E + DA L4050 + DA L406C + DW $004A + DW $0040 + DW $004F + DW $0043 + DA L406D + DA L406E + DA L4079 + DW $007F + DW $002C + DW $008F + DW $003B + DA L407A + DA L407B + DA L4088 + DW $0040 + DW $004A + DW $0057 + DW $005D + DA L40AB + DA L40AC + DA L40DD + DW $001B + DW $0002 + DW $0072 + DW $0024 + DA L40DE + DA L40DF + DA L4124 + DW $00C9 + DW $0005 + DW $00F7 + DW $0057 + DA L4125 + DA L4126 + DA L414B + DW $0055 + DW $0038 + DW $0078 + DW $0041 + DA L4177 + DA L4198 + DA L41AE + DW $0005 + DW $004A + DW $002C + DW $0066 + DA L41AF + DA L41B0 + DA L41C9 +L3FD3 STR 'Nothing happens' +L3FE3 STR "RCoffee, (out of service)S" +L3FFE STR '' +L3FFF STR '' +L4000 STR "RImmediate self-destructionS" +L401D STR '' +L401E STR "RSelf-destruction engagedS says a synthetic voice" +L4050 STR "RDeferred self-destructionS" +L406C STR '' +L406D STR '' +L406E STR "REjectingS" +L4079 STR '' +L407A STR '' +L407B STR 'A microphone' +L4088 STR "ROne, two, one, two, three, four!S" +L40AB STR '' +L40AC STR 'Just enough to store your small personal effects' +L40DD STR '' +L40DE STR '' +L40DF STR 'And says that Professor X. wants to become the master of all this...' +L4124 STR '' +L4125 STR '' +L4126 STR 'Bill has the situation well in hand!' +L414B STR "RYou will not get away with this, Palmer!!S" +L4177 STR 'Pfff... Does one know GFA BASIC?' +L4198 STR 'Not even from RAtariS' +L41AE STR '' +L41AF STR '' +L41B0 STR 'The next Atari streamer?' +L41C9 STR '' +L41CA DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L41E2 + DA L41E3 + DA L41E4 +L41E2 STR '' +L41E3 STR '' +L41E4 STR '' +L41E5 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L41FD + DA L41FE + DA L41FF +L41FD STR '' +L41FE STR '' +L41FF STR '' +L4200 DW $0001 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DW $0000 + DA L4218 + DA L4219 + DA L421A +L4218 STR '' +L4219 STR '' +L421A STR '' +L421B DA L4231 + DA L4255 + DA L4270 + DA L428E + DA L42A5 + DA L42C6 + DA L42E1 + DA L4322 + DA L4363 + DA L43B3 + DA L4411 +L4231 STR 0D'BILL PALMER. Copyright 1987. ARCAN' +L4255 STR 0D'A game by FRANCOIS COULON' +L4270 STR 0D'Graphics by DOMINIQUE PETTER' +L428E STR 0D'Music by Alain Krausz' +L42A5 STR 0D'Coproduced by Emmanuel Lasmezas' +L42C6 STR 0D'Used programs and tools..' +L42E1 STR 0D'GFA Basic and GFA Compiler (GfA Systemtechnik/Franck Ostrowski)' +L4322 STR 0D'Degas Elite (Batteries Included/Tom Hudson), CRP graphic tablet' +L4363 STR 'Yamaha and Akai musical hardware, ST Replay digitizer (2 bits System/A. Racine)' +L43B3 STR 'Apple IIgs version written in 2021'0D'by Brutal Deluxe Software'0D'Antoine Vignau & Olivier Zardini' +L4411 STR ' ' +L4413 STR '' +L4414 DA L4486 + DA L4487 + DA L450C + DA L4587 + DA L4638 + DA L464F + DA L46E9 + DA L47E5 + DA L47E6 + DA L47E7 + DA L483D + DA L4893 + DA L4894 + DA L4895 + DA L48F5 + DA L48F6 + DA L4A5B + DA L4AB6 + DA L4AB7 + DA L4AB8 + DA L4B73 + DA L4C1F + DA L4C20 + DA L4C21 + DA L4C82 + DA L4C83 + DA L4D4D + DA L4D86 + DA L4D9D + DA L4DD8 + DA L4E27 + DA L4E8B + DA L4E8C + DA L4F62 + DA L5013 + DA L50C0 + DA L50C1 + DA L5174 + DA L5175 + DA L5271 + DA L52C5 + DA L5378 + DA L5416 + DA L550F + DA L5510 + DA L5511 + DA L55BD + DA L55BE + DA L55BF + DA L5680 + DA L573E + DA L579A + DA L588A + DA L5A1E + DA L5AD2 + DA L5C45 + DA L5C46 +L4486 RTS + +L4487 LDA L0AB3 + CMP #$0019 + BNE L44B9 + LDA L0AB9 + CMP #$0001 + BNE L44A0 + LDX #$000A + LDA #L44BA + JMP L059F + +L44A0 CMP #$0002 + BNE L44AE + LDX #$0010 + LDA #L44E1 + JMP L059F + +L44AE CMP #$0004 + BNE L44B9 + LDA #$0002 + STA L0AAF +L44B9 RTS + +L44BA STR 'Bill collects a not very fresh lettuce' +L44E1 STR 'Here, the newspaper of the day has arrived' +L450C LDA L0AB3 + CMP #$0019 + BNE L4533 + LDA L0AB9 + CMP #$0003 + BNE L4525 + LDX #$000E + LDA #L4534 + JMP L059F + +L4525 CMP #$0002 + BNE L4533 + LDX #$0003 + LDA #L454F + JMP L059F +L4533 RTS + +L4534 STR 'Bill notices an old manual' +L454F STR 'By crikey! The credit card Bill thought he lost forever' +L4587 LDA L0AB3 + CMP #$0019 + BNE L45D2 + LDA L0AB9 + CMP #$0001 + BNE L45C4 + LDX #$0006 + LDA #L4413 + JSR L059F + LDX #$000B + LDA #L4413 + JSR L059F + LDX #$0009 + LDA #L4413 + JSR L059F + LDX #$000C + LDA #L4413 + JSR L059F + LDX #$000D + LDA #L4413 + JMP L059F + +L45C4 CMP #$0002 + BNE L45D2 + LDX #$0004 + LDA #L45D3 + JMP L059F +L45D2 RTS + +L45D3 STR 'Damn! The passport that Bill in his heroic disorganization had lost after a stay in South Africa ...' +L4638 LDA L0AB3 + CMP #$0019 + BNE L464E + LDA L0AB9 + CMP #$0003 + BNE L464E + LDA #$0005 + STA L0AAF +L464E RTS + +L464F LDA L0AB3 + CMP #$001A + BNE L4668 + LDA L0AB9 + CMP #$0001 + BNE L4668 + LDX #$000F + LDA #L4669 + JMP L059F +L4668 RTS + +L4669 STR 'Gently exploring the recesses of the vehicle'27's engine, Bill notices a curious device visibly placed there for hostile purposes.' +L46E9 LDA L0AB3 + CMP #$0019 + BNE L4728 + LDA L0AB9 + CMP #$0001 + BNE L471A + LDX #$000F + LDA L129C+$10,X + AND #$00FF + CMP #$0062 + BNE L470D + LDA #L4729 + JMP L0A35 + +L470D LDA #L47B1 + JSR L0945 + LDA #$0007 + STA L0AAF + RTS + +L471A CMP #$0003 + BNE L4728 + LDX #$0008 + LDA #L47C3 + JMP L059F +L4728 RTS + +L4729 STR 'Baaaaooooouuuuummmmm!!!!!! Without Bill having had time to react, the car explodes into a thousand pieces. Fail so close to the goal...' +L47B1 STR 'The car starts...' +L47C3 STR 'A brick was lying around there...' +L47E5 RTS +L47E6 RTS + +L47E7 LDA L0AB3 + CMP #$0019 + BNE L480B + LDA L0AB5 + CMP #$0003 + BNE L4800 + LDX #$0002 + LDA #L480C + JMP L059F + +L4800 CMP #$0002 + BNE L480B + LDA #$000A + STA L0AAF +L480B RTS + +L480C STR 'The hostess gives Bill his ticket to N'27'Gwanal'8E'l'8E +L483D LDA L0AB3 + CMP #$0018 + BNE L484B + LDA #L4865 + JMP L0945 + +L484B CMP #$0019 + BNE L4864 + LDA L0AB5 + CMP #$0004 + BNE L4864 + LDA #$000B + STA L0AAF + LDA #L4875 + JMP L0945 +L4864 RTS + +L4865 STR 'We do not pass!' +L4875 STR 'It is in order, you can pass!' +L4893 RTS +L4894 RTS + +L4895 LDA L0AB3 + CMP #$0019 + BNE L48AB + LDA L0AB9 + CMP #$0003 + BNE L48AB + LDA #L48AC + JMP L0A35 +L48AB RTS + +L48AC STR 'Stones can hide a lot of animals. And snakes are often very dangerous...' +L48F5 RTS + +L48F6 LDA L0AB3 + CMP #$0019 + BNE L494E + LDA L0AB5 + CMP #$0003 + BNE L490C + LDA #L494F + JMP L0945 + +L490C CMP #$000E + BNE L4926 + LDX #$000E + LDA #L497B + JSR L05BC + SEP #$20 + LDX #$0003 + LDA #$FF + STA L127E+$1D,X + REP #$20 +L4926 LDA L0AB5 + CMP #$000A + BNE L494E + LDX #$0003 + LDA L127E+$1D,X + AND #$00FF + BEQ L4948 + LDA #$0011 + STA L0AAF + LDX #$000A + LDA #L49D9 + JMP L05BC + +L4948 LDA #L4A2A + JMP L0945 +L494E RTS + +L494F STR 'What is that? You don'27't pay it like that...' +L497B STR 'You'27're a real adventurer then !! I keep the book there for you and you go with the dromedary!' +L49D9 STR 'The dromedary swallows the lettuce and bends down so that Bill goes on his back.' +L4A2A STR 'The man refuses to let Bill feed the dromaderies' +L4A5B SEP #$20 + LDX #$0008 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0004 + BNE L4A76 + LDA #L4A77 + JMP L0A35 +L4A76 RTS + +L4A77 STR 'Without safe and fast transportation, Bill soon dies exhausted' +L4AB6 RTS +L4AB7 RTS + +L4AB8 LDA L0AB3 + CMP #$0019 + BNE L4AD9 + LDA L0AB5 + CMP #$0003 + BNE L4ACE + LDA #L4ADA + JMP L0945 + +L4ACE CMP #$0006 + BNE L4AD9 + LDA #L4B2F + JMP L0945 +L4AD9 RTS + +L4ADA STR 'Credit cards are not accepted. Bill'27's gonna have to take the train without a ticket.' +L4B2F STR 'We do not play proudly in my station. The man goes back to sleep...' +L4B73 LDA L0AB3 + CMP #$0019 + BNE L4BD1 + LDA L0AB9 + CMP #$0004 + BNE L4B95 + LDA #L4BD2 + JSR L0945 + SEP #$20 + LDX #$0001 + LDA #$FF + STA L127E+$1D,X + REP #$20 +L4B95 LDA L0AB9 + CMP #$0005 + BNE L4BB6 + LDX #$0001 + LDA L127E+$1D,X + AND #$00FF + BEQ L4BB0 + LDA #$0016 + STA L0AAF + BRA L4BB6 +L4BB0 LDA #$0017 + STA L0AAF +L4BB6 SEP #$20 + LDX #$0002 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0008 + BCC L4BD1 + LDA #L4BE7 + JMP L0A35 +L4BD1 RTS + +L4BD2 STR 'The train is stopped' +L4BE7 STR 'The controller comes and stops Bill, who has no ticket.' +L4C1F RTS +L4C20 RTS + +L4C21 LDA L0AB3 + CMP #$0019 + BNE L4C37 + LDA L0AB9 + CMP #$0001 + BNE L4C37 + LDA #L4C38 + JMP L0A35 +L4C37 RTS + +L4C38 STR 'The stone hid a scorpion. And scorpions hate to be disturbed... Bad plan.' +L4C82 RTS + +L4C83 SEP #$20 + LDX #$0005 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0006 + BCC L4C9E + LDA #L4CC7 + JMP L0A35 + +L4C9E LDA L0AB3 + CMP #$0019 + BNE L4CC6 + LDA L0AB5 + CMP #$000B + BNE L4CC6 + LDA #L4D02 + JSR L0945 + SEP #$20 + LDX #$0004 + LDA #$FF + STA L127E+$1D,X + REP #$20 + LDA #$001A + STA L0AAF +L4CC6 RTS + +L4CC7 STR 'Bill is rolled, squashed and atomized by the raving mammal' +L4D02 STR 'Frightened by the machine, the animal takes its legs to its neck and flees' +L4D4D LDA L0AB3 + CMP #$0019 + BNE L4D66 + LDA L0AB5 + CMP #$0006 + BNE L4D66 + LDX #$0005 + LDA #L4D67 + JMP L059F +L4D66 RTS + +L4D67 STR 'Bill manages to cut some twigs' +L4D86 LDA L0AB3 + CMP #$0019 + BNE L4D9C + LDA L0AB9 + CMP #$0001 + BNE L4D9C + LDA #$000A + STA L0AAF +L4D9C RTS + +L4D9D LDA L0AB3 + CMP #$0019 + BNE L4DB9 + LDA L0AB9 + CMP #$0001 + BNE L4DB9 + LDA #L4DBA + JSR L0945 + LDA #$001D + STA L0AAF +L4DB9 RTS + +L4DBA STR 'Bill starts to climb the hill' +L4DD8 SEP #$20 + LDX #$0006 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0004 + BCC L4DF3 + LDA #L4DF4 + JMP L0A35 +L4DF3 RTS + +L4DF4 STR 'The dastardly fellow strangles Bill with his knife' +L4E27 LDA L0AB3 + CMP #$0019 + BNE L4E3D + LDA L0AB9 + CMP #$0002 + BNE L4E3D + LDA #L4E3E + JMP L0A35 +L4E3D RTS +L4E3E STR 'Bad luck, the tuft of grass breaks off the rock and Bill falls into the void' +L4E8B RTS + +L4E8C SEP #$20 + LDX #$0006 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0008 + BCC L4EA7 + LDA #L4ED0 + JMP L0A35 + +L4EA7 LDA L0AB3 + CMP #$0019 + BNE L4ECF + LDA L0AB9 + CMP #$0001 + BNE L4ECF + LDA #L4F0C + JSR L0945 + SEP #$20 + LDX #$0007 + LDA #$FF + STA L127E+$1D,X + REP #$20 + LDA #$001F + STA L0AAF +L4ECF RTS + +L4ED0 STR 'The Professor'27's henchman catches up with Bill. It'27's over...' +L4F0C STR 'Bill knocks the stone back into the void. She knocks out the villain who followed him' +L4F62 LDX #$000A + LDA L127E+$1D,X + AND #$00FF + BNE L4F88 + SEP #$20 + LDX #$000B + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0008 + BCC L4F88 + LDA #L4FAB + JMP L0A35 + +L4F88 LDA L0AB3 + CMP #$0019 + BNE L4FAA + LDA L0AB5 + CMP #$0001 + BNE L4FAA + LDA #L4FDB + JSR L0945 + SEP #$20 + LDX #$000A + LDA #$FF + STA L127E+$1D,X + REP #$20 +L4FAA RTS + +L4FAB STR 'Suddenly a ray pulverizes Bill (gniark gniark!)' +L4FDB STR 'Bill shows the photo to the camera which seems to react' +L5013 LDA L0AB3 + CMP #$0019 + BNE L505E + LDA L0AB5 + CMP #$0008 + BNE L5053 + LDX #$0005 + LDA L129C+$10,X + AND #$00FF + CMP #$0063 + BNE L504D + LDX #$0005 + LDA #L5084 + JSR L05BC + SEP #$20 + LDX #$0009 + LDA #$FF + STA L127E+$1D,X + REP #$20 + LDA #$0023 + STA L0AAF + RTS + +L504D LDA #L5084 + JMP L0945 + +L5053 CMP #$0005 + BNE L505E + LDA #L50A9 + JMP L0945 +L505E RTS + + STR 'Bill lights a fire with the twigs...' +L5084 STR 'There is nothing to burn in the room' +L50A9 STR 'And why not burn them?' +L50C0 RTS + +L50C1 LDA L0AB3 + CMP #$0019 + BNE L50F1 + LDA L0AB9 + CMP #$0001 + BNE L50F1 + LDX #$000C + LDA L127E+$1D,X + AND #$00FF + CMP #$0004 + BCS L50E5 + LDA #L50F2 + JMP L0A35 + +L50E5 LDA #$0026 + STA L0AAF + LDA #L50F2 + JMP L0945 +L50F1 RTS + +L50F2 STR 'Before Bill can enter Professor X'27's lab, Professor X grabs a submachine gun and turns it into a strainer.' + STR 'Phew... The door opens!' +L5174 RTS + +L5175 LDA L0AB3 + CMP #$0019 + BNE L51A7 + LDA L0AB9 + CMP #$0001 + BNE L518E + LDX #$0012 + LDA #L51BE + JMP L059F + +L518E CMP #$0002 + BNE L519C + LDX #$0011 + LDA #L51D2 + JMP L059F + +L519C CMP #$0003 + BNE L51A7 + LDA #L51E8 + JMP L0A35 + +L51A7 LDA L0AB3 + CMP #$001B + BNE L51BD + LDA L0AB9 + CMP #$0003 + BNE L51BD + LDA #L5239 + JMP L0A35 +L51BD RTS + +L51BE STR 'Bill find a call...' +L51D2 STR 'Wow! A submachine gun' +L51E8 STR 'Bill should have known that it is better to handle toxic products with gloves...' +L5239 STR 'Damn it! It was poison! Bill chokes and dies in minutes' +L5271 LDA L0AB3 + CMP #$001A + BNE L529C + LDA L0AB9 + CMP #$0002 + BNE L529C + SEP #$20 + LDX #$000C + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0004 + BCC L529C + LDA #L529D + JMP L0945 +L529C RTS + +L529D STR 'The Professor stays to inspect his men!' +L52C5 LDA L0AB3 + CMP #$001B + BNE L52E1 + LDA L0AB5 + CMP #$0012 + BNE L52E1 + LDA #$0029 + STA L0AAF + LDA #L5309 + JSR L0945 +L52E1 LDA L0AB3 + CMP #$001A + BNE L5308 + LDA L0AB9 + CMP #$0002 + BNE L5308 + LDX #$0009 + LDA L127E+$1D,X + AND #$00FF + BEQ L5302 + LDA #L533A + JMP L0945 + +L5302 LDA #L5352 + JMP L0945 +L5308 RTS + +L5309 STR 'Attracted by the call, the bird comes to rest...' +L533A STR 'Hot smoke rises from it' +L5352 STR 'It looks like the flue of a fireplace' +L5378 LDX #$0009 + LDA L127E+$1D,X + AND #$00FF + BNE L538F + LDA #$0028 + STA L0AAF + LDA #L539C + JMP L0945 + +L538F LDA #$002A + STA L0AAF + LDA #L53B7 + JMP L0945 + RTS + +L539C STR 'The bird leaves immediatly' +L53B7 STR 'The bird clogs the flue of the chimney, immediately the professor'27's men come out suffocated...' +L5416 SEP #$20 + LDX #$0011 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0008 + BCC L5431 + LDA #L546F + JMP L0A35 + +L5431 LDA L0AB3 + CMP #$0019 + BNE L546E + LDA L0AB5 + CMP #$0011 + BNE L5463 + LDA #$002B + STA L0AAF + LDA #L5488 + JSR L0945 + JSR L0970 + LDA #L54A9 + JSR L0945 + LDA #$0003 + JSR L0E4A + LDA #$002C + STA L0AAF + RTS + +L5463 CMP #$0006 + BNE L546E + LDA #L54C8 + JMP L0A35 +L546E RTS + +L546F STR 'Professor'27's men gut Bill' +L5488 STR 'Bill draws his submachine gun...' +L54A9 STR 'And massacres his attackers...' +L54C8 STR 'Bill engages in the fight with a machete but he falls under the number' +L550F RTS +L5510 RTS + +L5511 LDA L0AB3 + CMP #$0019 + BNE L5553 + LDA L0AB9 + CMP #$0002 + BNE L5553 + LDA #$002E + STA L0AAF + LDA #L5554 + JSR L0945 + JSR L0970 + LDA #L5575 + JSR L0945 + LDA #$0030 + STA L0AAF + LDA #$0003 + JSR L0E4A + LDX #$0001 +L5545 PHX + LDA #L4413 + JSR L05BC + PLX + INX + CPX #$0014 + BCC L5545 +L5553 RTS + +L5554 STR 'Bill pulls the flag. Suddenly...' +L5575 STR 'A trap door opens under his feet. Bill is captured by Professor X'27's men' +L55BD RTS +L55BE RTS + +L55BF SEP #$20 + LDX #$000D + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0006 + BCC L55DA + LDA #L55F7 + JMP L0A35 + +L55DA LDA L0AB3 + CMP #$0019 + BNE L55F6 + LDA L0AB9 + CMP #$0001 + BNE L55F6 + LDA #L5640 + JSR L0945 + LDA #$0031 + STA L0AAF +L55F6 RTS + +L55F7 STR 'The cannon cuts Bill to pieces. Professor X. becomes master of the world' +L5640 STR 'Bill manages to free himself discreetly and extinguish the fuse' +L5680 LDA L0AB3 + CMP #$0019 + BNE L56AC + LDA L0AB9 + CMP #$0002 + BEQ L5695 + CMP #$0003 + BNE L569B +L5695 LDA #L56AD + JMP L0A35 + +L569B CMP #$0001 + BNE L56AC + LDA #L56FA + JSR L0945 + LDA #$0032 + STA L0AAF +L56AC RTS +L56AD STR 'Bill makes a mistake and is fatally spotted by the Professor'27's lieutenant...' +L56FA STR 'Bill switches off the light, plunging the entire room into darkness' +L573E LDA L0AB3 + CMP #$0019 + BNE L5751 + LDA L0AB9 + BEQ L5751 + LDA #L5752 + JMP L0A35 +L5751 RTS + +L5752 STR 'Rather than quietly slipping away, Bill saw fit to show his presence...' +L579A LDA L0AB3 + CMP #$0019 + BNE L57C1 + LDA L0AB9 + CMP #$0002 + BNE L57B0 + LDA #L5828 + JMP L0A35 + +L57B0 CMP #$0003 + BNE L57C1 + SEP #$20 + LDX #$000E + LDA #$FF + STA L127E+$1D,X + REP #$20 +L57C1 LDX #$000E + LDA L127E+$1D,X + AND #$00FF + BEQ L57E7 + SEP #$20 + LDX #$000F + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0006 + BCC L57E7 + LDA #L5828 + JMP L0A35 + +L57E7 LDA L0AB3 + CMP #$0019 + BNE L5811 + LDA L0AB9 + CMP #$0004 + BNE L5803 + LDA #L5863 + JSR L0945 + LDA #$0036 + STA L0AAF +L5803 CMP #$0006 + BNE L5811 + LDX #$0013 + LDA #L5872 + JMP L059F + +L5811 LDA L0AB3 + CMP #$001B + BNE L5827 + LDA L0AB9 + CMP #$0005 + BNE L5827 + LDA #$0034 + STA L0AAF +L5827 RTS + +L5828 STR 'The base and everything in it explodes. Too expeditious...' +L5863 STR 'Bill ejects...' +L5872 STR 'This could be useful...' +L588A LDA L0AB3 + CMP #$0019 + BNE L58A9 + LDA L0AB5 + CMP #$0013 + BNE L58A9 + LDA #$0035 + STA L0AAF + LDX #$0007 + LDA #L593C + JSR L059F +L58A9 LDX #$0010 + SEP #$20 + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0004 + BCC L58C4 + LDA #L5995 + JMP L0A35 + +L58C4 LDA L0AB3 + CMP #$0019 + BNE L58EB + LDA L0AB9 + CMP #$0002 + BNE L58DA + LDA #L59BC + JMP L0A35 + +L58DA CMP #$0003 + BNE L58EB + SEP #$20 + LDX #$000E + LDA #$FF + STA L127E+$1D,X + REP #$20 +L58EB LDX #$000E + LDA L127E+$1D,X + AND #$00FF + BEQ L5911 + SEP #$20 + LDX #$000F + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0006 + BCC L5911 + LDA #L59BC + JMP L0A35 + +L5911 LDA L0AB3 + CMP #$0019 + BNE L593B + LDA L0AB9 + CMP #$0004 + BNE L592D + LDA #L59F7 + JSR L0945 + LDA #$0036 + STA L0AAF +L592D CMP #$0006 + BNE L593B + LDX #$0013 + LDA #L5A06 + JMP L059F +L593B RTS + +L593C STR 'Bill draws quickly and takes aim at the two men. The Professor must let go of the fetish' +L5995 STR 'Professor'27's henchman coldly kills Bill' +L59BC STR 'The base and everything in it explodes. Too expeditious...' +L59F7 STR 'Bill ejects...' +L5A06 STR 'This could be useful...' +L5A1E LDA L0AB3 + CMP #$0019 + BNE L5A45 + LDA L0AB9 + CMP #$0002 + BNE L5A34 + LDA #L5A88 + JMP L0A35 + +L5A34 CMP #$0003 + BNE L5A45 + SEP #$20 + LDX #$000E + LDA #$FF + STA L127E+$1D,X + REP #$20 +L5A45 LDX #$000E + LDA L127E+$1D,X + AND #$00FF + BEQ L5A6B + SEP #$20 + LDX #$000F + INC L127E+$1D,X + REP #$20 + LDA L127E+$1D,X + AND #$00FF + CMP #$0006 + BCC L5A6B + LDA #L5A88 + JMP L0A35 + +L5A6B LDA L0AB3 + CMP #$0019 + BNE L5A87 + LDA L0AB9 + CMP #$0004 + BNE L5A87 + LDA #L5AC3 + JSR L0945 + LDA #$0036 + STA L0AAF +L5A87 RTS + +L5A88 STR 'The base and everything in it explodes. Too expeditious...' +L5AC3 STR 'Bill ejects...' +L5AD2 LDA #$0037 + STA L0AAF + JSR L0970 + LDA #$0003 + JSR L0E4A + LDX #$000E + LDA L127E+$1D,X + AND #$00FF + BNE L5AF2 + LDA #L5B1C + JMP L0A35 + +L5AF2 LDX #$0007 + LDA L129C+$10,X + AND #$00FF + CMP #$0063 + BEQ L5B06 + LDA #L5B74 + JMP L0A35 + +L5B06 LDA #$0038 + STA L0AAF + JSR L0970 + LDA #$0003 + JSR L0E4A + LDA #L5BC7 + JMP L0A35 + RTS + +L5B1C STR 'When he falls, Bill is captured again. He can no longer thwart the professor'27's plans...' +L5B74 STR 'Professor X.'27's base is reduced to rubble. Alas, Bill failed to retrieve the Fetish' +L5BC7 STR 'CONGRATULATIONS!! Bill has recovered the fetish and destroyed Professor X'27's base. We can bet that he will take his revenge...' +L5C45 RTS +L5C46 RTS + +L5C47 LDA L6058 + BNE L5C6B + _KillAllNotes + _MSShutDown + PEA $0023 + _UnloadOneTool + _SoundShutDown +L5C6B RTS + +L5C6C PHA + _GetIRQEnable + PLA + AND #$0020 + BEQ L5C7E + INC L6058 + RTS + +L5C7E LDA L0E74 + CLC + ADC #$0100 + PHA + _SoundStartUp + PEA $0023 + PEA $0000 + _LoadOneTool + BCC L5CA0 + INC L6058 + RTS + +L5CA0 _MSStartUp + BCC L5CAD + INC L6058 + RTS + +L5CAD PEA $0000 + PEA $0000 + PEA $0001 + PEA $0000 + LDA L0E72 + PHA + PEA $C01C + PEA $0000 + PEA $0000 + _NewHandle + PHD + TSC + TCD + LDA [$03] + STA L604C + LDY #$0002 + LDA [$03],Y + STA L604C+2 + PLD + PLA + PLA + BCC L5CE6 + INC L6058 + RTS + +L5CE6 PEA $0000 + PEA $0000 + PEA $0001 + PEA $0000 + LDA L0E72 + PHA + PEA $C01C + PEA $0000 + PEA $0000 + _NewHandle + PHD + TSC + TCD + LDA [$03] + STA L6054 + LDY #$0002 + LDA [$03],Y + STA L6054+2 + PLD + PLA + PLA + BCC L5D1F + INC L6058 + RTS + +L5D1F PEA $0000 + PEA $0000 + PEA $0001 + PEA $0000 + LDA L0E72 + PHA + PEA $C01C + PEA $0000 + PEA $0000 + _NewHandle + PHD + TSC + TCD + LDA [$03] + STA L6050 + LDY #$0002 + LDA [$03],Y + STA L6050+2 + PLD + PLA + PLA + BCC L5D58 + INC L6058 + RTS + +L5D58 LDA #L6028 + STA L5FCF + JSL GSOS + DW $2010 ; Open + ADRL L5FCB + STA L5FC9 + LDA L5FCD + STA L600F + STA L5FFB + STA L600B + JSL GSOS + DW $2016 ; SetMark + ADRL L600D + LDA L6050 + STA L5FFD + LDA L6050+2 + STA L5FFD+2 + STZ L6001 + LDA #$0001 + STA L6001+2 + JSL GSOS + DW $2012 ; Read + ADRL L5FF9 + STA L5FC9 + JSL GSOS + DW $2014 ; Close + ADRL L6009 + LDA L5FC9 + BEQ L5DB6 + INC L6058 + RTS + +L5DB6 LDA #L603A + LDX L6054+2 + LDY L6054 + JSR L5F7C + LDA L5FC9 + BEQ L5DCB + INC L6058 + RTS + +L5DCB LDA #L6017 + LDX L604C+2 + LDY L604C + JSR L5F7C + LDA L5FC9 + BEQ L5DE0 + INC L6058 + RTS + +L5DE0 LDA L604C + STA L5DFD+1 + STA L5E0D+1 + LDA L604C+2 + STA L5E02+1 + STA L5E16+1 + _KillAllNotes + LDA L0E74 + TCD +L5DFD LDA #$BDBD + STA $F8 +L5E02 LDA #$BDBD + STA $FA + LDY #$0006 + LDA [$F8],Y + CLC +L5E0D ADC #$BDBD + STA L605E + LDA #$0000 +L5E16 ADC #$BDBD + STA L605E+2 + LDY #$018A + LDA [$F8],Y + ASL + SEC + SBC #$000A + PHA + _SetTempo + LDY #$0190 + LDA [$F8],Y + PHA + _SetBeat + LDA L6054 + CLC + ADC #$0400 + STA L605A + LDA L6054+2 + ADC #$0000 + STA L605A+2 + STZ L5FC7 +L5E51 LDA L5FC7 + PHA + PEA $8000 + _SetPlayTrack + LDA L5FC7 + PHA + PEA $FFFF + _TrackToChannel + LDA L5FC7 + PHA + PEA $0002 + _SetTrackOut + LDA L605A+2 + PHA + LDA L605A + PHA + LDA L5FC7 + PHA + _SetInstrument + LDA L605A + CLC + ADC #$0120 + STA L605A + LDA L605A+2 + ADC #$0000 + STA L605A+2 + INC L5FC7 + LDA L5FC7 + CMP #$0010 + BNE L5E51 + SEI + LDA L6050+2 + PHA + LDA L6050 + PHA + PEA $0000 + PEA $0000 + _WriteRamBlock + PEA ^L6074 + PEA L6074 + _SetCallBack + PEA $0000 + PEA $0000 + LDA L6070+2 + PHA + LDA L6070 + PHA + LDA L605E+2 + PHA + LDA L605E + PHA + _Locate + PLA + STA L605E + PLA + STA L605E+2 + CLI + RTS + +L5EF6 LDA L6058 + BNE L5F08 + LDA L5F09 + EOR #$0001 + STA L5F09 + BEQ L5F0B + BNE L5F27 +L5F08 RTS + +L5F09 BRK $00 +L5F0B LDA L6058 + BNE L5F26 + LDA #$0100 + STA L606E + PEA ^L605E + PEA L605E + _SeqPlayer + STZ L5F7A +L5F26 RTS + +L5F27 LDA L6058 + BNE L5F43 + STZ L606E + PEA ^L605E + PEA L605E + _SeqPlayer + _KillAllNotes +L5F43 RTS + +L5F44 LDA L6058 + ORA L5F09 + BNE L5F53 + _MSSuspend +L5F53 RTS + +L5F54 LDA L6058 + ORA L5F09 + BNE L5F63 + _MSResume +L5F63 RTS + +L5F64 LDA L6058 + BNE L5F71 + LDA L5F7A + BEQ L5F71 + JSR L5F0B +L5F71 RTS + +L5F72 LDA #$FFFF + STAL L5F7A + RTL + +L5F7A DW $FFFF +L5F7C STA L5FCF + STY L5FFD + STX L5FFD+2 + STZ L5FC9 + JSL GSOS + DW $2010 ; Open + ADRL L5FCB + BCS L5FC0 + LDA L5FCD + STA L5FFB + STA L600B + LDA L5FF5 + STA L6001 + LDA L5FF5+2 + STA L6001+2 + JSL GSOS + DW $2012 ; Read + ADRL L5FF9 + BCS L5FC0 +L5FB5 JSL GSOS + DW $2014 ; Close + ADRL L6009 + RTS + +L5FC0 JSR L5FB5 + INC L6058 + RTS + +L5FC7 DW $0000 +L5FC9 DW $0000 +L5FCB DW $000C ; Parms for Open +L5FCD DW $0000 ; ref num +L5FCF ADRL L6017 ; path name + DW $0000 ; req access + DW $0000 ; res num + DW $0000 ; access + DW $0000 ; file type + ADRL $00000000 ; aux type + DW $0000 ; storage + DS 8 ; creation date + DS 8 ; modification date + ADRL $00000000 ; option list +L5FF5 ADRL $00000000 ; end of file +L5FF9 DW $0004 ; Parms for Read +L5FFB DW $0000 ; ref num +L5FFD ADRL $00000000 ; buffer ptr +L6001 ADRL $00000000 ; request count + ADRL $00000000 ; transfer count +L6009 DW $0001 ; Parms for Close +L600B DW $0000 ; ref num +L600D DW $0003 ; Parms for SetMark +L600F DW $0000 ; ref num + DW $0000 ; base + ADRL $00000900 ; displacement +L6017 STRL '1/data/Sequence' +L6028 STRL '1/data/Piano.Wav' +L603A STRL '1/data/Piano.Bnk' +L604C ADRL $00000000 +L6050 ADRL $00000000 +L6054 ADRL $00000000 +L6058 DW $0000 +L605A ADRL $00000000 +L605E ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 +L606E DW $0000 +L6070 ADRL $00000000 +L6074 ADRL L5F72 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + ADRL $00000000 + diff --git a/billpalmer/en/_FileInformation.txt b/billpalmer/en/_FileInformation.txt new file mode 100644 index 0000000..e69de29 diff --git a/billpalmer/en/bill b/billpalmer/en/bill new file mode 100644 index 0000000..d0b9210 Binary files /dev/null and b/billpalmer/en/bill differ diff --git a/billpalmer/en/bill_ResourceFork.bin b/billpalmer/en/bill_ResourceFork.bin new file mode 100644 index 0000000..a84b247 Binary files /dev/null and b/billpalmer/en/bill_ResourceFork.bin differ diff --git a/billpalmer/en/dataen.asm b/billpalmer/en/dataen.asm new file mode 100644 index 0000000..5c91323 --- /dev/null +++ b/billpalmer/en/dataen.asm @@ -0,0 +1,1606 @@ +* +* Bill Palmer +* + +nombre_icones = 30 + +* TABLEAUX DE COORDONNEES DES ICONES + +icones_coordonnees + dw 4,117,25,137 + dw 26,117,47,137 + dw 48,117,69,137 + dw 70,117,91,137 + dw 92,117,113,137 + dw 114,117,135,137 + dw 136,117,157,137 + dw 158,117,179,137 + dw 180,117,201,137 + dw 202,117,223,137 + dw 4,138,25,158 + dw 26,138,47,158 + dw 48,138,69,158 + dw 70,138,91,158 + dw 92,138,113,158 + dw 114,138,135,158 + dw 136,138,157,158 + dw 158,138,179,158 + dw 180,138,201,158 + dw 202,138,223,158 + +* ces icônes font 22 x 23 soit 16h x 17h + + dw 230,112,250,134 ; haut E6, 70, FA, 86 - E6 70 FC 87 + dw 254,112,274,134 ; bas FE, 70, 112, 86 - FE 70 114 87 + dw 230,137,250,159 ; gauche E6, 89, FA, 9F - E6 89 FC A0 + dw 254,137,274,159 ; droite FE, 89, 112, 9F - FE 89 114 A0 + +* ces icônes font 40 x 27 soit 28h x 1Bh + + dw 277,74,317,100 ; main - 278, 74, 318, 101 => 4A, 116, 65, 13E + dw 277,103,317,129 ; oeil - 278, 103, 318, 130 => 67, 116, 82, 13E + dw 277,132,317,158 ; bouche - 278, 132, 318, 159 => 84, 116, 9F, 13E + + dw 277,2,317,13 ; about - 2, 116, D, 13E + dw 277,16,317,42 ; save - 10, 116, 2B, 13E + dw 277,45,317,71 ; load - 2E, 116, 49, 13E + +* CHAINES CONTENANT LES BLOCS DES ICONES + +icones ds nombre_icones + +* VARIABLES CONTENANT LES NUMEROS DES ICONES + +photo = 1 +billet_davion = 2 +carte_de_credit = 3 +passeport = 4 +brindilles = 5 +machette = 6 +fetiche = 7 +briquet = 8 +carte_didentite = 9 +laitue = 10 +souris_mecanique = 11 +boite_de_conserve = 12 +ouvre_boite = 13 +livre = 14 +bombe = 15 +journal = 16 +mitraillette = 17 +appeau = 18 +revolver = 19 +* +animation = 20 +* +nord = 21 +sud = 22 +gauche = 23 +droite = 24 +main = 25 +oeil = 26 +bouche = 27 +copyright = 28 +sauvegarde = 29 +chargement = 30 + +* INDICATEURS + +nombre_indicateurs = 17 ; LOGO - was 16 in original source code + +indicateur ds nombre_indicateurs + +train_arrete = 1 +controleur_passe = 2 +livre_donne = 3 +elephant_enfuis = 4 +elephant_arrive = 5 +mechant = 6 +mechant_assome = 7 +bill_desert = 8 +feu_allume = 9 +photo_montree = 10 +camera_mort = 11 +professeur_parti = 12 +canon = 13 +destruction_base = 14 +compte_a_rebours = 15 +lieutenant = 16 +homme_attaque = 17 + +* TABLEAU DE L'ETAT DES OBJETS + +nombre_objets = 20 + +objet ds nombre_objets +objet_apparu ds nombre_objets + +objet_pris = 99 +objet_inexistant = 98 +objet_detruit = 97 + +* DESCRIPTION DES OBJETS + +description_objet + da descr_objet1 + da descr_objet2 + da descr_objet3 + da descr_objet4 + da descr_objet5 + da descr_objet6 + da descr_objet7 + da descr_objet8 + da descr_objet9 + da descr_objet10 + da descr_objet11 + da descr_objet12 + da descr_objet13 + da descr_objet14 + da descr_objet15 + da descr_objet16 + da descr_objet17 + da descr_objet18 + da descr_objet19 + da descr_objet20 + +descr_objet1 str 'Une photo du Professeur X. !' +descr_objet2 str 'Un billet d'27'avion pour le N'27'Gwanal'8e'l'8e +descr_objet3 str 'Une carte de cr'8e'dit. Il doit bien rester un peu d'27'argent sur le compte' +descr_objet4 str 'Le passeport. Ins'8e'parable compagnon de l'27'Aventurier' +descr_objet5 str 'Des brindilles. Ca doit pouvoir br'9e'ler facilement' +descr_objet6 str 'Une machette (du calme !)' +descr_objet7 str 'Le fameux f'8e'tiche tant convoit'8e' ! !' +descr_objet8 str 'Click click, un briquet' +descr_objet9 str 'La carte d'27'identit'8e' de Bill, quand il prend le m'8e'tro.' +descr_objet10 str 'Une vieille salade. Inavalable pour un '90'tre un civilis'8e'...' +descr_objet11 str 'Une souris m'8e'canique. Elle s'27'agite quelques secondes apr'8f's avoir '8e't'8e' remont'8e'e' +descr_objet12 str 'Une bo'94'te de pa'91'lla. Pas le moment de manger...' +descr_objet13 str 'Un ouvre-bo'94'te' +descr_objet14 str 'Le Guide du Parfait Aventurier. Bill n'27'en a plus besoin depuis longtemps !' +descr_objet15 str 'La bombe semble '90'tre d'8e'sarmorc'8e'e' +descr_objet16 str 'La Gazette des Aventuriers. Un pigiste r'8e'v'8f'le qu'27'un f'8e'tiche a '8e't'8e' d'8e'rob'8e' au N'27'Gwanal'8e'l'8e' par le Professeur X., ce savant de triste renomm'8e'e' +descr_objet17 str 'Gardons notre calme : cette mitraillette est charg'8e'e...' +descr_objet18 str 'Un appeau. Il '8e'met un bruit bizarre quand on souffle dedans' +descr_objet19 str 'Ce pistolet doit '90'tre utilis'8e' uniquement pour la bonne cause !' +descr_objet20 str '' + +* COORDONNEES DES ZONES, COMMENTAIRES ET DIRECTIONS + +nombre_salles = 56 +nombre_zones = 10 + +* ATARI ST +* zones (nombre de zones cliquables dans la salle) +* x1(nombre_salles, nombre_zones) +* x2(nombre_salles, nombre_zones) +* y1(nombre_salles, nombre_zones) +* y2(nombre_salles, nombre_zones) +* commentaire_main(nombre_salles, nombre_zones) +* commentaire_oeil(nombre_salles, nombre_zones) +* commentaire_bouche(nombre_salles, nombre_zones) +* directions(nombre_salles, 4) +* +* APPLE IIGS +* 1 word for number of zones +* 4 word for directions +* For each zone +* 4 word for zone area +* 1 ptr to commentaire main +* 1 ptr to commentaire oeil +* 1 ptr to commentaire bouche + +table_salle + da salle1,salle2,salle3,salle4,salle5,salle6,salle7,salle8,salle9,salle10 + da salle11,salle12,salle13,salle14,salle15,salle16,salle17,salle18,salle19,salle20 + da salle21,salle22,salle23,salle24,salle25,salle26,salle27,salle28,salle29,salle30 + da salle31,salle32,salle33,salle34,salle35,salle36,salle37,salle38,salle39,salle40 + da salle41,salle42,salle43,salle44,salle45,salle46,salle47,salle48,salle49,salle50 + da salle51,salle52,salle53,salle54,salle55,salle56 + +salle1 + dw 7 ; +00 + dw 2,4,0,0 ; +02 + dw 123,84,138,106 ; +10 - chaque zone fait 14 octets + da salle1_zone1_main ; +18 + da salle1_zone1_oeil ; +20 + da salle1_zone1_bouche ; +22 + dw 54,71,68,84 ; +24 + da salle1_zone2_main + da salle1_zone2_oeil + da salle1_zone2_bouche + dw 79,68,117,108 + da salle1_zone3_main + da salle1_zone3_oeil + da salle1_zone3_bouche + dw 19,43,54,98 + da salle1_zone4_main + da salle1_zone4_oeil + da salle1_zone4_bouche + dw 77,23,150,57 + da salle1_zone5_main + da salle1_zone5_oeil + da salle1_zone5_bouche + dw 158,37,247,108 + da salle1_zone6_main + da salle1_zone6_oeil + da salle1_zone6_bouche + dw 27,54,42,59 + da salle1_zone7_main + da salle1_zone7_oeil + da salle1_zone7_bouche +salle1_zone1_main str '' +salle1_zone1_oeil str 'Une vieille caisse d'27'emballage' +salle1_zone1_bouche str '' +salle1_zone2_main str '' +salle1_zone2_oeil str 'La bo'94'te aux lettres' +salle1_zone2_bouche str '' +salle1_zone3_main str 'D'8e'go'9e'tant...' +salle1_zone3_oeil str 'Un clochard' +salle1_zone3_bouche str d2'Un peu de politesse! J'27'ai '8e't'8e' d'8e'veloppeur de jeux d'27'aventures, moi Monsieur !'d3 +salle1_zone4_main str '' +salle1_zone4_oeil str 'Et si Bill regardait par la fen'90'tre ?' +salle1_zone4_bouche str '' +salle1_zone5_main str 'Et si vous entriez par la porte ?' +salle1_zone5_oeil str 'C'27'est bien l'27'int'8e'rieur de Bill' +salle1_zone5_bouche str '' +salle1_zone6_main str 'Pas touche !' +salle1_zone6_oeil str 'C'27'est Bill Palmer, h'8e'ros des h'8e'ros en route vers une nouvelle aventure' +salle1_zone6_bouche str '' +salle1_zone7_main str 'Bill ne va tout de m'90'me pas arracher la plaque !' +salle1_zone7_oeil str d2'Bill Palmer. Aventurier. Sur rendez-vous.'d3 +salle1_zone7_bouche str '' + +salle2 + dw 7 + dw 3,1,0,0 + dw 77,26,98,51 + da salle2_zone1_main + da salle2_zone1_oeil + da salle2_zone1_bouche + dw 82,53,89,61 + da salle2_zone2_main + da salle2_zone2_oeil + da salle2_zone2_bouche + dw 2,20,55,47 + da salle2_zone3_main + da salle2_zone3_oeil + da salle2_zone3_bouche + dw 22,60,84,85 + da salle2_zone4_main + da salle2_zone4_oeil + da salle2_zone4_bouche + dw 187,49,203,72 + da salle2_zone5_main + da salle2_zone5_oeil + da salle2_zone5_bouche + dw 71,8,97,23 + da salle2_zone6_main + da salle2_zone6_oeil + da salle2_zone6_bouche + dw 172,44,179,50 + da salle2_zone7_main + da salle2_zone7_oeil + da salle2_zone7_bouche +salle2_zone1_main str 'Bill arbore d'8e'j'88' son cuir' +salle2_zone1_oeil str '' +salle2_zone1_bouche str '' +salle2_zone2_main str '' +salle2_zone2_oeil str 'La poche' +salle2_zone2_bouche str '' +salle2_zone3_main str '' +salle2_zone3_oeil str 'Une '8e'tag'8f're pleine de vieux bouquins et de magazines d'27'informatique' +salle2_zone3_bouche str '' +salle2_zone4_main str 'Un peu ramoli' +salle2_zone4_oeil str 'Le canap'8e +salle2_zone4_bouche str '' +salle2_zone5_main str 'Attention, c'27'est fragile !' +salle2_zone5_oeil str 'Une vieux vase Ming sans aucune valeur' +salle2_zone5_bouche str '' +salle2_zone6_main str 'Le trou est d'8e'j'88' assez grand' +salle2_zone6_oeil str 'H'8e' Bill ! Faudrait voir '88' refaire les platres !' +salle2_zone6_bouche str '' +salle2_zone7_main str 'Zut ! Le store est coinc'8e'. Faudra trouver une autre combine pour regarder la voisine se d'8e'shabiller' +salle2_zone7_oeil str 'La tirette du store' +salle2_zone7_bouche str '' + +salle3 + dw 3 + dw 2,2,2,2 + dw 138,68,153,81 + da salle3_zone1_main + da salle3_zone1_oeil + da salle3_zone1_bouche + dw 86,91,104,103 + da salle3_zone2_main + da salle3_zone2_oeil + da salle3_zone2_bouche + dw 205,0,227,21 + da salle3_zone3_main + da salle3_zone3_oeil + da salle3_zone3_bouche +salle3_zone1_main str '' +salle3_zone1_oeil str 'Le cadenas. Pr'8e'sentement ouvert' +salle3_zone1_bouche str '' +salle3_zone2_main str '' +salle3_zone2_oeil str '' +salle3_zone2_bouche str '' +salle3_zone3_main str 'Pas encore l'27'heure de tirer les rideaux' +salle3_zone3_oeil str 'Pas tr'8f's propre. Faudrait voir '88' laver tout '8d'a Bill !' +salle3_zone3_bouche str '' + +salle4 + dw 3 + dw 6,1,0,0 + dw 201,39,270,97 ; LOGO - original code is 101, + da salle4_zone1_main + da salle4_zone1_oeil + da salle4_zone1_bouche + dw 2,53,157,109 + da salle4_zone2_main + da salle4_zone2_oeil + da salle4_zone2_bouche + dw 177,58,187,67 + da salle4_zone3_main + da salle4_zone3_oeil + da salle4_zone3_bouche +salle4_zone1_main str '' +salle4_zone1_oeil str 'Ce fut une belle voiture...' +salle4_zone1_bouche str 'Vous parlez le langage voiture ?' +salle4_zone2_main str 'Ca laisserait des traces de doigts !' +salle4_zone2_oeil str 'Non, non. Pas celle l'88'. L'27'autre ! !' +salle4_zone2_bouche str 'On en mangerait...' +salle4_zone3_main str '' +salle4_zone3_oeil str 'Le capot s'27'ouvre par l'88 +salle4_zone3_bouche str '' + +salle5 + dw 2 + dw 4,4,4,4 + dw 144,53,188,73 + da salle5_zone1_main + da salle5_zone1_oeil + da salle5_zone1_bouche + dw 44,80,118,107 + da salle5_zone2_main + da salle5_zone2_oeil + da salle5_zone2_bouche +salle5_zone1_main str 'La r'8e'parer ? Pour quoi faire...' +salle5_zone1_oeil str '' +salle5_zone1_bouche str '' +salle5_zone2_main str '' +salle5_zone2_oeil str 'Juste pour quelques pi'8f'ces en trop' +salle5_zone2_bouche str '' + +salle6 + dw 4 + dw 4,4,4,4 + dw 222,49,233,62 + da salle6_zone1_main + da salle6_zone1_oeil + da salle6_zone1_bouche + dw 209,51,217,61 + da salle6_zone2_main + da salle6_zone2_oeil + da salle6_zone2_bouche + dw 234,56,265,74 + da salle6_zone3_main + da salle6_zone3_oeil + da salle6_zone3_bouche + dw 188,64,201,76 + da salle6_zone4_main + da salle6_zone4_oeil + da salle6_zone4_bouche +salle6_zone1_main str '' +salle6_zone1_oeil str 'La cl'8e' de contact' +salle6_zone1_bouche str '' +salle6_zone2_main str '' +salle6_zone2_oeil str 'L'27'altim'8f'tre' +salle6_zone2_bouche str '' +salle6_zone3_main str '' +salle6_zone3_oeil str 'La bo'94'te '88' gants' +salle6_zone3_bouche str '' +salle6_zone4_main str 'Ca va, c'27'est au point mort' +salle6_zone4_oeil str 'Le levier de vitesse' +salle6_zone4_bouche str '' + +salle7 + dw 3 + dw 9,0,0,4 + dw 2,72,77,96 + da salle7_zone1_main + da salle7_zone1_oeil + da salle7_zone1_bouche + dw 95,23,134,36 + da salle7_zone2_main + da salle7_zone2_oeil + da salle7_zone2_bouche + dw 177,44,271,109 + da salle7_zone3_main + da salle7_zone3_oeil + da salle7_zone3_bouche +salle7_zone1_main str 'Ca ne se prend pas comme '8d'a..' +salle7_zone1_oeil str 'Vite, il part pour le N'27'Gwanal'8e'l'8e'!' +salle7_zone1_bouche str '' +salle7_zone2_main str 'Faudrait prendre beaucoup d'27''8e'lan' +salle7_zone2_oeil str 'Trop tard pour celui l'88'' +salle7_zone2_bouche str '' +salle7_zone3_main str '' +salle7_zone3_oeil str 'Elle s'27'arrange pas avec l'2789'ge' +salle7_zone3_bouche str '' + +salle8 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle8_zone1_main + da salle8_zone1_oeil + da salle8_zone1_bouche +salle8_zone1_main str '' +salle8_zone1_oeil str '' +salle8_zone1_bouche str '' + +salle9 + dw 4 + dw 0,7,0,0 + dw 19,15,70,61 + da salle9_zone1_main + da salle9_zone1_oeil + da salle9_zone1_bouche + dw 143,14,192,60 + da salle9_zone2_main + da salle9_zone2_oeil + da salle9_zone2_bouche + dw 184,50,210,61 + da salle9_zone3_main + da salle9_zone3_oeil + da salle9_zone3_bouche + dw 194,16,226,23 + da salle9_zone4_main + da salle9_zone4_oeil + da salle9_zone4_bouche +salle9_zone1_main str 'Voyons, un peu de discr'8e'tion ! !' +salle9_zone1_oeil str 'Glup ! !' +salle9_zone1_bouche str 'Schmack !' +salle9_zone2_main str 'Gardez plut'99't la main sur la souris' +salle9_zone2_oeil str 'Bill devrait d'27'abord penser '88' sa mission...' +salle9_zone2_bouche str d2'Nous avons des promotions sp'8e'ciales pour les billets vers l'27'Afrique du Sud !'d3 +salle9_zone3_main str 'Vous g'90'nez pas surtout...' +salle9_zone3_oeil str 'Un t'8e'l'8e'phone' +salle9_zone3_bouche str '' +salle9_zone4_main str '' +salle9_zone4_oeil str 'Les cartes de cr'8e'dit sont accept'8e'es' +salle9_zone4_bouche str '' + +salle10 + dw 5 + dw 0,0,0,9 + dw 192,28,224,98 + da salle10_zone1_main + da salle10_zone1_oeil + da salle10_zone1_bouche + dw 121,60,153,108 + da salle10_zone2_main + da salle10_zone2_oeil + da salle10_zone2_bouche + dw 24,21,74,100 + da salle10_zone3_main + da salle10_zone3_oeil + da salle10_zone3_bouche + dw 239,10,267,106 + da salle10_zone4_main + da salle10_zone4_oeil + da salle10_zone4_bouche + dw 4,16,24,50 + da salle10_zone5_main + da salle10_zone5_oeil + da salle10_zone5_bouche +salle10_zone1_main str d2'C'27'est bien gentil de m'27'aider mon brave Monsieur !'d3 +salle10_zone1_oeil str 'Dommage qu'27'il soit blanc. On aurait cru Stevie Wonder' +salle10_zone1_bouche str d2'Pardon, c'27'est bien ici le match de football ?'d3 +salle10_zone2_main str 'Voyons ! ! ! A son '89'ge ! !' +salle10_zone2_oeil str 'Si vous regardez d'8e'j'88' les petites filles...' +salle10_zone2_bouche str d2'Tu veux ma photo ?'d3 +salle10_zone3_main str '' +salle10_zone3_oeil str 'Attention, c'27'est le douanier !' +salle10_zone3_bouche str 'Pr'8e'sentez votre passeport s'27'il vous plait !' +salle10_zone4_main str '' +salle10_zone4_oeil str 'Ca doit '90'tre un diplomate qui rentre au pays' +salle10_zone4_bouche str d2'Encow'27' un qui se pwend pou'27' Ha'27'isson Fowd...'d3 +salle10_zone5_main str 'Stop !' +salle10_zone5_oeil str d2'Stop'd3 +salle10_zone5_bouche str 'Re-stop' + +salle11 + dw 4 + dw 0,0,10,12 + dw 39,76,107,91 + da salle11_zone1_main + da salle11_zone1_oeil + da salle11_zone1_bouche + dw 47,55,82,91 + da salle11_zone2_main + da salle11_zone2_oeil + da salle11_zone2_bouche + dw 129,17,191,87 + da salle11_zone3_main + da salle11_zone3_oeil + da salle11_zone3_bouche + dw 190,8,262,63 + da salle11_zone4_main + da salle11_zone4_oeil + da salle11_zone4_bouche +salle11_zone1_main str 'Bill a d'8e'j'88' son billet' +salle11_zone1_oeil str 'C'27'est un billet d'27'avion pour Auckland. Un aller simple, '8d'a suffit' +salle11_zone1_bouche str '' +salle11_zone2_main str '' +salle11_zone2_oeil str 'C'27'est '8d'a le pilote ? ! ? !' +salle11_zone2_bouche str d2'Et dire qu'27'il n'27'y a qu'27'un parachute pour tout l'27'avion...'d3 +salle11_zone3_main str 'Pour le pousser ? ?' +salle11_zone3_oeil str 'Et si Bill en faisait autant avant de rencontrer le pire ?' +salle11_zone3_bouche str d2'Argh ! !'d3 +salle11_zone4_main str 'Z'27'avez pas peur...' +salle11_zone4_oeil str d2'Poids total hors charge: 213 Kg'd3 +salle11_zone4_bouche str d2'Tu vas pas te tirer pour notre lune de miel ! ?'d3 + +salle12 + dw 4 + dw 0,13,0,0 + dw 6,79,35,91 + da salle12_zone1_main + da salle12_zone1_oeil + da salle12_zone1_bouche + dw 43,64,54,79 + da salle12_zone2_main + da salle12_zone2_oeil + da salle12_zone2_bouche + dw 41,82,61,98 + da salle12_zone3_main + da salle12_zone3_oeil + da salle12_zone3_bouche + dw 71,14,104,49 + da salle12_zone4_main + da salle12_zone4_oeil + da salle12_zone4_bouche +salle12_zone1_main str '' +salle12_zone1_oeil str 'La Mecque' +salle12_zone1_bouche str '' +salle12_zone2_main str '' +salle12_zone2_oeil str 'Alaska 13583 km' +salle12_zone2_bouche str '' +salle12_zone3_main str '' +salle12_zone3_oeil str 'Maubeuge (centre ville) : premi'8f're '88' gauche' +salle12_zone3_bouche str '' +salle12_zone4_main str 'Attention '8d'a coupe ! !' +salle12_zone4_oeil str 'Une h'8e'lice' +salle12_zone4_bouche str '' + +salle13 + dw 3 + dw 15,12,12,14 + dw 150,12,173,24 + da salle13_zone1_main + da salle13_zone1_oeil + da salle13_zone1_bouche + dw 178,25,206,37 + da salle13_zone2_main + da salle13_zone2_oeil + da salle13_zone2_bouche + dw 28,91,89,101 + da salle13_zone3_main + da salle13_zone3_oeil + da salle13_zone3_bouche +salle13_zone1_main str '' +salle13_zone1_oeil str d2'Concessionnaire Dromacar'd3 +salle13_zone1_bouche str '' +salle13_zone2_main str '' +salle13_zone2_oeil str d2'Walk this way! ! ! !'d3 +salle13_zone2_bouche str '' +salle13_zone3_main str '' +salle13_zone3_oeil str 'Tiens ! Il semble y avoir quelque chose sous ces pierres !' +salle13_zone3_bouche str '' + +salle14 + dw 3 + dw 0,13,0,0 + dw 195,22,225,60 + da salle14_zone1_main + da salle14_zone1_oeil + da salle14_zone1_bouche + dw 231,33,245,59 + da salle14_zone2_main + da salle14_zone2_oeil + da salle14_zone2_bouche + dw 2,60,60,106 + da salle14_zone3_main + da salle14_zone3_oeil + da salle14_zone3_bouche +salle14_zone1_main str '' +salle14_zone1_oeil str 'C'27'est le conservateur du mus'8e'e' +salle14_zone1_bouche str d2'Si vous nous rapportez le F'8e'tiche vol'8e', vous aurez droit '88' une forte r'8e'compense, pr'8e'sentement!'d3 +salle14_zone2_main str 'Ca serait bien trop facile si c'27''8e'tait celui-l'88' qu'27'il fallait retrouver !' +salle14_zone2_oeil str 'Un f'8e'tiche' +salle14_zone2_bouche str '' +salle14_zone3_main str '' +salle14_zone3_oeil str 'C'27''8e'tait '8d'a ou finir en aliment pour chats' +salle14_zone3_bouche str 'De toutes les fa'8d'ons, ce n'27'est pas maintenant qu'27'il va se mettre '88' parler' + +salle15 + dw 3 + dw 16,13,0,0 + dw 69,62,121,108 + da salle15_zone1_main + da salle15_zone1_oeil + da salle15_zone1_bouche + dw 2,14,68,56 + da salle15_zone2_main + da salle15_zone2_oeil + da salle15_zone2_bouche + dw 103,11,194,57 + da salle15_zone3_main + da salle15_zone3_oeil + da salle15_zone3_bouche +salle15_zone1_main str '' +salle15_zone1_oeil str 'Un vendeur de dromadaires' +salle15_zone1_bouche str d2'J'27'y traite qu'27'avec li vrais aventuriers moi !'d3 +salle15_zone2_main str 'Vous esp'8e'riez qu'27'il allait ronronner ?' +salle15_zone2_oeil str 'Un cham... Non un dromadaire' +salle15_zone2_bouche str 'Les dromadaires ne parlent pas, m'90'me dans les jeux d'27'aventure' +salle15_zone3_main str 'Brave b'90'te..' +salle15_zone3_oeil str 'Il doit '90'tre mal nourri...' +salle15_zone3_bouche str '' + +salle16 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle16_zone1_main + da salle16_zone1_oeil + da salle16_zone1_bouche +salle16_zone1_main str '' +salle16_zone1_oeil str '' +salle16_zone1_bouche str '' + +salle17 + dw 1 + dw 0,0,18,0 + dw 0,0,0,0 + da salle17_zone1_main + da salle17_zone1_oeil + da salle17_zone1_bouche +salle17_zone1_main str '' +salle17_zone1_oeil str '' +salle17_zone1_bouche str '' + +salle18 + dw 4 + dw 20,0,0,19 + dw 4,52,39,77 + da salle18_zone1_main + da salle18_zone1_oeil + da salle18_zone1_bouche + dw 36,32,117,86 + da salle18_zone2_main + da salle18_zone2_oeil + da salle18_zone2_bouche + dw 117,36,226,97 + da salle18_zone3_main + da salle18_zone3_oeil + da salle18_zone3_bouche + dw 235,36,264,97 + da salle18_zone4_main + da salle18_zone4_oeil + da salle18_zone4_bouche +salle18_zone1_main str '' +salle18_zone1_oeil str 'Ca doit '90'tre le wagon quatri'8f'me classe' +salle18_zone1_bouche str '' +salle18_zone2_main str '' +salle18_zone2_oeil str 'Le wagon classe aventuriers' +salle18_zone2_bouche str '' +salle18_zone3_main str '' +salle18_zone3_oeil str 'La locomotive mod'8f'le 1865 reform'8e' 1917 n'27'attend plus que Bill pour partir' +salle18_zone3_bouche str '' +salle18_zone4_main str '' +salle18_zone4_oeil str 'Un auto-stoppeur sans doute' +salle18_zone4_bouche str d2'Tchou tchou ! ! T'27'wain va pa'27'tiw'27d3 + +salle19 + dw 2 + dw 0,0,18,0 + dw 171,24,270,77 + da salle19_zone1_main + da salle19_zone1_oeil + da salle19_zone1_bouche + dw 181,89,235,107 + da salle19_zone2_main + da salle19_zone2_oeil + da salle19_zone2_bouche +salle19_zone1_main str 'Doucement, '8d'a pourrait le r'8e'veiller !' +salle19_zone1_oeil str 'Il vend des billets. Mais la pause a l'27'air longue...' +salle19_zone1_bouche str d2'Plus tard coco, plus tard...'d3 +salle19_zone2_main str 'Pouah ! Des os humains...' +salle19_zone2_oeil str 'Certains mangent bien du lapin' +salle19_zone2_bouche str '' + +salle20 + dw 5 + dw 0,0,0,0 + dw 169,15,219,108 + da salle20_zone1_main + da salle20_zone1_oeil + da salle20_zone1_bouche + dw 225,10,271,107 + da salle20_zone2_main + da salle20_zone2_oeil + da salle20_zone2_bouche + dw 199,2,209,8 + da salle20_zone3_main + da salle20_zone3_oeil + da salle20_zone3_bouche + dw 91,16,104,26 + da salle20_zone4_main + da salle20_zone4_oeil + da salle20_zone4_bouche + dw 12,15,82,68 + da salle20_zone5_main + da salle20_zone5_oeil + da salle20_zone5_bouche +salle20_zone1_main str '' +salle20_zone1_oeil str 'Mille sabords ! Serions-nous au Congo ?' +salle20_zone1_bouche str d2'Saperlipopette !'d3 +salle20_zone2_main str '' +salle20_zone2_oeil str 'Et alors ? La premi'8f're classe est aussi autoris'8e'e aux Noirs...' +salle20_zone2_bouche str '' +salle20_zone3_main str '' +salle20_zone3_oeil str d2'Eat at Joe'27's. Au menu: missionnaire, homme d'27'affaire, pigiste. Ketchup en suppl'8e'ment'd3 +salle20_zone3_bouche str '' +salle20_zone4_main str '' +salle20_zone4_oeil str 'Le signal d'27'alarme' +salle20_zone4_bouche str '' +salle20_zone5_main str '' +salle20_zone5_oeil str '' +salle20_zone5_bouche str '' + +salle21 + dw 1 + dw 0,0,0,20 + dw 0,0,0,0 + da salle21_zone1_main + da salle21_zone1_oeil + da salle21_zone1_bouche +salle21_zone1_main str '' +salle21_zone1_oeil str '' +salle21_zone1_bouche str '' + +salle22 + dw 1 + dw 0,23,23,20 + dw 0,0,0,0 + da salle22_zone1_main + da salle22_zone1_oeil + da salle22_zone1_bouche +salle22_zone1_main str '' +salle22_zone1_oeil str '' +salle22_zone1_bouche str '' + +salle23 + dw 1 + dw 0,0,24,0 + dw 80,79,108,90 + da salle23_zone1_main + da salle23_zone1_oeil + da salle23_zone1_bouche +salle23_zone1_main str '' +salle23_zone1_oeil str 'Et si cette pierre cachait quelque chose ?' +salle23_zone1_bouche str '' + +salle24 + dw 2 + dw 28,23,25,0 + dw 60,75,82,105 + da salle24_zone1_main + da salle24_zone1_oeil + da salle24_zone1_bouche + dw 117,15,156,48 + da salle24_zone2_main + da salle24_zone2_oeil + da salle24_zone2_bouche +salle24_zone1_main str '' +salle24_zone1_oeil str d2'Danger: '8e'l'8e'phants'd3 +salle24_zone1_bouche str '' +salle24_zone2_main str '' +salle24_zone2_oeil str 'Le sommet de cette montagne cache quelque chose...' +salle24_zone2_bouche str '' + +salle25 + dw 1 + dw 0,0,0,0 + dw 162,2,263,75 + da salle25_zone1_main + da salle25_zone1_oeil + da salle25_zone1_bouche +salle25_zone1_main str 'Est-ce bien raisonnable ?' +salle25_zone1_oeil str 'A mon avis, le self control de ce pachyderme semble s'8e'rieusement entam'8e +salle25_zone1_bouche str d2'Tout doux petit !'d3 + +salle26 + dw 1 + dw 0,24,0,24 + dw 238,74,272,108 + da salle26_zone1_main + da salle26_zone1_oeil + da salle26_zone1_bouche +salle26_zone1_main str 'Impossible d'27'arracher des brindilles '88' la main' +salle26_zone1_oeil str 'Une vari'8e't'8e' rare d'27'une herbe africaine r'8e'put'8e'e pour sa facilit'8e' de combustion' +salle26_zone1_bouche str '' + +salle27 + dw 3 + dw 0,0,0,24 + dw 1,2,96,110 + da salle27_zone1_main + da salle27_zone1_oeil + da salle27_zone1_bouche + dw 225,71,259,109 + da salle27_zone2_main + da salle27_zone2_oeil + da salle27_zone2_bouche + dw 121,77,212,106 + da salle27_zone3_main + da salle27_zone3_oeil + da salle27_zone3_bouche +salle27_zone1_main str '' +salle27_zone1_oeil str '' +salle27_zone1_bouche str '' +salle27_zone2_main str 'Pas la peine, personne n'27'est en vue' +salle27_zone2_oeil str 'La pierre qui vient d'27'assommer ce mis'8e'rable' +salle27_zone2_bouche str '' +salle27_zone3_main str '' +salle27_zone3_oeil str 'Il a son compte !' +salle27_zone3_bouche str 'Et vous imaginiez qu'27'il allait r'8e'pondre ?' + +salle28 + dw 1 + dw 0,0,0,24 + dw 1,2,96,110 + da salle28_zone1_main + da salle28_zone1_oeil + da salle28_zone1_bouche +salle28_zone1_main str '' +salle28_zone1_oeil str 'Et dire qu'27'il va falloir grimper tout '8d'a' +salle28_zone1_bouche str 'C'27'est pas un sol sacr'8e' !' + +salle29 + dw 3 + dw 32,0,0,0 + dw 2,17,36,49 + da salle29_zone1_main + da salle29_zone1_oeil + da salle29_zone1_bouche + dw 40,45,56,57 + da salle29_zone2_main + da salle29_zone2_oeil + da salle29_zone2_bouche + dw 95,93,139,109 + da salle29_zone3_main + da salle29_zone3_oeil + da salle29_zone3_bouche +salle29_zone1_main str 'Et la SPA alors ?' +salle29_zone1_oeil str 'On ne sait jamais, des fois que Bill meure...' +salle29_zone1_bouche str '' +salle29_zone2_main str '' +salle29_zone2_oeil str 'Ca ferait sans doute une bonne prise' +salle29_zone2_bouche str '' +salle29_zone3_main str '' +salle29_zone3_oeil str 'Attention ! Il poursuit Bill !' +salle29_zone3_bouche str d2'Urk Urk !'d3 + +salle30 + dw 2 + dw 31,27,0,27 + dw 2,17,36,49 + da salle30_zone1_main + da salle30_zone1_oeil + da salle30_zone1_bouche + dw 40,45,56,57 + da salle30_zone2_main + da salle30_zone2_oeil + da salle30_zone2_bouche +salle30_zone1_main str 'Et la SPA alors ?' +salle30_zone1_oeil str 'On ne sait jamais, des fois que Bill meure...' +salle30_zone1_bouche str '' +salle30_zone2_main str '' +salle30_zone2_oeil str 'Ca ferait sans doute une bonne prise' +salle30_zone2_bouche str '' + +salle31 + dw 1 + dw 40,30,33,0 + dw 0,0,0,0 + da salle31_zone1_main + da salle31_zone1_oeil + da salle31_zone1_bouche +salle31_zone1_main str '' +salle31_zone1_oeil str '' +salle31_zone1_bouche str '' + +salle32 + dw 1 + dw 0,0,0,0 + dw 162,43,188,70 + da salle32_zone1_main + da salle32_zone1_oeil + da salle32_zone1_bouche +salle32_zone1_main str '' +salle32_zone1_oeil str 'Elle semble pouvoir '90'tre d'8e'plac'8e'e facilement' +salle32_zone1_bouche str '' + +salle33 + dw 2 + dw 36,31,0,0 + dw 3,4,27,27 + da salle33_zone1_main + da salle33_zone1_oeil + da salle33_zone1_bouche + dw 200,3,233,21 + da salle33_zone2_main + da salle33_zone2_oeil + da salle33_zone2_bouche +salle33_zone1_main str 'Impossible d'27'arracher cette cam'8e'ra !' +salle33_zone1_oeil str 'Une cam'8e'ra de surveillance' +salle33_zone1_bouche str 'Pour faire de la bu'8e'e sur l'27'objectif ?' +salle33_zone2_main str 'Ouille ! C'27'est chaud !' +salle33_zone2_oeil str 'Eblouissant' +salle33_zone2_bouche str '' + +salle34 + dw 3 + dw 0,0,0,36 + dw 70,61,112,81 + da salle34_zone1_main + da salle34_zone1_oeil + da salle34_zone1_bouche + dw 2,66,27,105 + da salle34_zone2_main + da salle34_zone2_oeil + da salle34_zone2_bouche + dw 176,24,218,58 + da salle34_zone3_main + da salle34_zone3_oeil + da salle34_zone3_bouche +salle34_zone1_main str '' +salle34_zone1_oeil str 'Quelques braises encore chaudes' +salle34_zone1_bouche str '' +salle34_zone2_main str 'Faut bien que certaines commodes ne contiennent rien. Ca ne serait pas rigolo...' +salle34_zone2_oeil str '' +salle34_zone2_bouche str '' +salle34_zone3_main str 'Pas le moment de faire des cr'90'pes !' +salle34_zone3_oeil str 'Des po'90'les (faut vraiment tout lui dire celui l'88'...)' +salle34_zone3_bouche str '' + +salle35 + dw 3 + dw 0,0,0,36 + dw 70,61,112,81 + da salle35_zone1_main + da salle35_zone1_oeil + da salle35_zone1_bouche + dw 2,66,27,105 + da salle35_zone2_main + da salle35_zone2_oeil + da salle35_zone2_bouche + dw 176,24,218,58 + da salle35_zone3_main + da salle35_zone3_oeil + da salle35_zone3_bouche +salle35_zone1_main str '' +salle35_zone1_oeil str 'Le feu d'8e'gage de la fum'8e'e qui s'27''8e'chappe par le conduit' +salle35_zone1_bouche str '' +salle35_zone2_main str 'Faut bien que certaines commodes ne contiennent rien. Ca ne serait pas rigolo...' +salle35_zone2_oeil str '' +salle35_zone2_bouche str '' +salle35_zone3_main str 'Pas le moment de faire des cr'90'pes !' +salle35_zone3_oeil str 'Des po'90'les (faut vraiment tout lui dire celui l'88'...)' +salle35_zone3_bouche str '' + +salle36 + dw 2 + dw 0,33,34,39 + dw 74,12,136,94 + da salle36_zone1_main + da salle36_zone1_oeil + da salle36_zone1_bouche + dw 212,2,239,93 + da salle36_zone2_main + da salle36_zone2_oeil + da salle36_zone2_bouche +salle36_zone1_main str '' +salle36_zone1_oeil str 'On se l'27'ouvre ?' +salle36_zone1_bouche str d2'Y'27'a quelqu'27'un ?'d3 +salle36_zone2_main str 'Trop solide pour '90'tre d'8e'plac'8e'e' +salle36_zone2_oeil str d2'Fernand aime Georgette'd3' y est grav'8e' au canif' +salle36_zone2_bouche str '' + +salle37 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle37_zone1_main + da salle37_zone1_oeil + da salle37_zone1_bouche +salle37_zone1_main str '' +salle37_zone1_oeil str '' +salle37_zone1_bouche str '' + +salle38 + dw 5 + dw 0,0,36,0 + dw 146,38,168,45 + da salle38_zone1_main + da salle38_zone1_oeil + da salle38_zone1_bouche + dw 146,55,167,62 + da salle38_zone2_main + da salle38_zone2_oeil + da salle38_zone2_bouche + dw 172,39,187,58 + da salle38_zone3_main + da salle38_zone3_oeil + da salle38_zone3_bouche + dw 222,40,236,59 + da salle38_zone4_main + da salle38_zone4_oeil + da salle38_zone4_bouche + dw 242,45,272,85 + da salle38_zone5_main + da salle38_zone5_oeil + da salle38_zone5_bouche +salle38_zone1_main str '' +salle38_zone1_oeil str 'Et si je vous dis que c'27'est un tiroir ?' +salle38_zone1_bouche str '' +salle38_zone2_main str '' +salle38_zone2_oeil str 'C'27'est pourtant pas compliqu'8e' de l'27'ouvrir...' +salle38_zone2_bouche str '' +salle38_zone3_main str '' +salle38_zone3_oeil str 'On en boirait bien...' +salle38_zone3_bouche str '' +salle38_zone4_main str 'C'27'est le F'8e'tiche qu'27'il faut rapporter !' +salle38_zone4_oeil str 'Peut-'90'tre un pr'8e'd'8e'cesseur...' +salle38_zone4_bouche str 'Pas tr'8f's causant...' +salle38_zone5_main str 'Mieux vaut ne pas trop y toucher' +salle38_zone5_oeil str 'A peine plus complexe qu'27'un Atari...' +salle38_zone5_bouche str '' + +salle39 + dw 3 + dw 36,0,0,0 + dw 203,4,247,50 + da salle39_zone1_main + da salle39_zone1_oeil + da salle39_zone1_bouche + dw 234,52,241,60 + da salle39_zone2_main + da salle39_zone2_oeil + da salle39_zone2_bouche + dw 203,62,247,94 + da salle39_zone1_main + da salle39_zone1_oeil + da salle39_zone1_bouche +salle39_zone1_main str 'Rien '88' faire, elle reste ferm'8e'e' +salle39_zone1_oeil str 'On se l'27'ouvre ?' +salle39_zone1_bouche str '' +salle39_zone2_main str '' +salle39_zone2_oeil str 'Bill aper'8d'oit par le trou de la serrure des dizaines de personnes s'27'activant autour du F'8e'tiche branch'8e' sur des '8e'lectrodes !' +salle39_zone2_bouche str '' + +salle40 + dw 2 + dw 0,31,0,0 + dw 21,3,98,47 + da salle40_zone1_main + da salle40_zone1_oeil + da salle40_zone1_bouche + dw 76,75,154,92 + da salle40_zone2_main + da salle40_zone2_oeil + da salle40_zone2_bouche +salle40_zone1_main str '' +salle40_zone1_oeil str 'Il semble se d'8e'sint'8e'resser de Bill' +salle40_zone1_bouche str 'Cui cui ?' +salle40_zone2_main str '' +salle40_zone2_oeil str '' +salle40_zone2_bouche str '' + +salle41 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle41_zone1_main + da salle41_zone1_oeil + da salle41_zone1_bouche +salle41_zone1_main str '' +salle41_zone1_oeil str '' +salle41_zone1_bouche str '' + +salle42 + dw 4 + dw 0,0,0,0 + dw 9,15,52,67 + da salle42_zone1_main + da salle42_zone1_oeil + da salle42_zone1_bouche + dw 64,25,107,76 + da salle42_zone2_main + da salle42_zone2_oeil + da salle42_zone2_bouche + dw 167,37,216,66 + da salle42_zone3_main + da salle42_zone3_oeil + da salle42_zone3_bouche + dw 227,11,272,107 + da salle42_zone4_main + da salle42_zone4_oeil + da salle42_zone4_bouche +salle42_zone1_main str 'Bill ne devrait pas tenter le combat '88' mains nues' +salle42_zone1_oeil str 'Il a l'27'air agressif...' +salle42_zone1_bouche str d2'Fais tes pri'8f'res, rascal !'d3 +salle42_zone2_main str '' +salle42_zone2_oeil str 'Si vous voulez mon avis...' +salle42_zone2_bouche str d2'Tu vis ta derni'8f're heure'd3 +salle42_zone3_main str '' +salle42_zone3_oeil str '' +salle42_zone3_bouche str d2'Le Professeur nous a charg'8e's de venir t'27'offrir des fleurs !'d3 +salle42_zone4_main str '' +salle42_zone4_oeil str '' +salle42_zone4_bouche str d2'Hurk Hurk !'d3 + +salle43 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle43_zone1_main + da salle43_zone1_oeil + da salle43_zone1_bouche +salle43_zone1_main str '' +salle43_zone1_oeil str '' +salle43_zone1_bouche str '' + +salle44 + dw 3 + dw 45,0,0,0 + dw 21,8,79,107 + da salle44_zone1_main + da salle44_zone1_oeil + da salle44_zone1_bouche + dw 87,33,129,107 + da salle44_zone2_main + da salle44_zone2_oeil + da salle44_zone2_bouche + dw 133,29,213,92 + da salle44_zone3_main + da salle44_zone3_oeil + da salle44_zone3_bouche +salle44_zone1_main str '' +salle44_zone1_oeil str 'Compl'8f'tement bugg'8e', le mec...' +salle44_zone1_bouche str d2'Poussez pas !'d3 +salle44_zone2_main str '' +salle44_zone2_oeil str 'L'27''8e'quipe d'27'intervention de SOS Aventuriers ! Il '8e'tait temps !' +salle44_zone2_bouche str d2'Va au nord si tu veux nous suivre vers la suite de l'27'aventure et rejoindre le Professeur X. !'d3 +salle44_zone3_main str '' +salle44_zone3_oeil str '' +salle44_zone3_bouche str d2'Nous sommes les membres de SOS Aventuriers. Nous sommes l'88' pour t'27'aider '88' continuer le jeu !'d3 + +salle45 + dw 3 + dw 0,0,0,0 + dw 33,8,88,104 + da salle45_zone1_main + da salle45_zone1_oeil + da salle45_zone1_bouche + dw 199,1,215,19 + da salle45_zone2_main + da salle45_zone2_oeil + da salle45_zone2_bouche + dw 128,61,177,107 + da salle45_zone3_main + da salle45_zone3_oeil + da salle45_zone3_bouche +salle45_zone1_main str 'Il se d'8e'brouille tr'8f's bien tout seul' +salle45_zone1_oeil str 'Mais qu'27'est-ce qu'27'il vient foutre ici celui-l'88' ?' +salle45_zone1_bouche str d2'C'27'est par Leader Board ici ! !'d3 +salle45_zone2_main str '' +salle45_zone2_oeil str 'Le drapeau indiquant le trou' +salle45_zone2_bouche str '' +salle45_zone3_main str d2'Passez-moi le fer de 5 pendant que vous y '90'tes !'d3 +salle45_zone3_oeil str d2'Pas tr'8f's m'8e'diterrann'8e'en tout '8d'a'd3 +salle45_zone3_bouche str d2'Put put put'd3 + +salle46 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle46_zone1_main + da salle46_zone1_oeil + da salle46_zone1_bouche +salle46_zone1_main str '' +salle46_zone1_oeil str '' +salle46_zone1_bouche str '' + +salle47 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle47_zone1_main + da salle47_zone1_oeil + da salle47_zone1_bouche +salle47_zone1_main str '' +salle47_zone1_oeil str '' +salle47_zone1_bouche str '' + +salle48 + dw 5 + dw 0,0,0,0 + dw 96,58,115,71 + da salle48_zone1_main + da salle48_zone1_oeil + da salle48_zone1_bouche + dw 235,5,271,109 + da salle48_zone2_main + da salle48_zone2_oeil + da salle48_zone2_bouche + dw 1,21,83,91 + da salle48_zone3_main + da salle48_zone3_oeil + da salle48_zone3_bouche + dw 162,1,203,98 + da salle48_zone4_main + da salle48_zone4_oeil + da salle48_zone4_bouche + dw 145,25,157,34 + da salle48_zone5_main + da salle48_zone5_oeil + da salle48_zone5_bouche +salle48_zone1_main str '' +salle48_zone1_oeil str 'Bill est d'8e'j'88' parvenu '88' lib'8e'rer sa main' +salle48_zone1_bouche str '' +salle48_zone2_main str '' +salle48_zone2_oeil str 'Le Professeur utilise visiblement l'27''8e'nergie du F'8e'tiche' +salle48_zone2_bouche str d2'Vous '90'tes perdu Palmer ! ! Ce F'8e'tiche contient une mati'8f're inconnue qui va me permettre de devenir le ma'94'tre du Monde ! !'d3 +salle48_zone3_main str '' +salle48_zone3_oeil str 'Grouillez-vous ! !' +salle48_zone3_bouche str '' +salle48_zone4_main str '' +salle48_zone4_oeil str 'Un lieutenant du Professeur' +salle48_zone4_bouche str d2'La ferme!'d3 +salle48_zone5_main str 'Impossible de l'27'atteindre attach'8e' !' +salle48_zone5_oeil str 'L'27'interrupteur' +salle48_zone5_bouche str '' + +salle49 + dw 3 + dw 0,0,0,0 + dw 145,25,157,34 + da salle49_zone1_main + da salle49_zone1_oeil + da salle49_zone1_bouche + dw 235,5,271,109 + da salle49_zone2_main + da salle49_zone2_oeil + da salle49_zone2_bouche + dw 162,1,203,98 + da salle49_zone3_main + da salle49_zone3_oeil + da salle49_zone3_bouche +salle49_zone1_main str '' +salle49_zone1_oeil str 'L'27'interrupteur' +salle49_zone1_bouche str '' +salle49_zone2_main str '' +salle49_zone2_oeil str 'Une chance! Il n'27'a pas rep'8e'r'8e' Bill !' +salle49_zone2_bouche str d2'Le Mal va enfin triompher ! Gniark gniark !'d3 +salle49_zone3_main str '' +salle49_zone3_oeil str 'Heureusement que les m'8e'chants ne font pas attention...' +salle49_zone3_bouche str '' + +salle50 + dw 3 + dw 0,0,51,0 + dw 133,41,156,52 + da salle50_zone1_main + da salle50_zone1_oeil + da salle50_zone1_bouche + dw 50,44,76,55 + da salle50_zone2_main + da salle50_zone2_oeil + da salle50_zone2_bouche + dw 224,59,245,69 + da salle50_zone3_main + da salle50_zone3_oeil + da salle50_zone3_bouche +salle50_zone1_main str '' +salle50_zone1_oeil str 'Les beautiful eyes de Bill' +salle50_zone1_bouche str '' +salle50_zone2_main str '' +salle50_zone2_oeil str 'L'27'homme de main du Professeur' +salle50_zone2_bouche str '' +salle50_zone3_main str '' +salle50_zone3_oeil str 'Le Professeur' +salle50_zone3_bouche str '' + +salle51 + dw 9 + dw 0,0,0,0 + dw 56,61,61,63 + da salle51_zone1_main + da salle51_zone1_oeil + da salle51_zone1_bouche + dw 60,61,72,63 + da salle51_zone2_main + da salle51_zone2_oeil + da salle51_zone2_bouche + dw 64,65,70,67 + da salle51_zone3_main + da salle51_zone3_oeil + da salle51_zone3_bouche + dw 74,64,79,67 + da salle51_zone4_main + da salle51_zone4_oeil + da salle51_zone4_bouche + dw 127,44,143,59 + da salle51_zone5_main + da salle51_zone5_oeil + da salle51_zone5_bouche + dw 64,74,87,93 + da salle51_zone6_main + da salle51_zone6_oeil + da salle51_zone6_bouche + dw 27,2,114,36 + da salle51_zone7_main + da salle51_zone7_oeil + da salle51_zone7_bouche + dw 85,56,120,65 + da salle51_zone8_main + da salle51_zone8_oeil + da salle51_zone8_bouche + dw 5,74,44,102 + da salle51_zone9_main + da salle51_zone9_oeil + da salle51_zone9_bouche +salle51_zone1_main str 'Rien ne se passe' +salle51_zone1_oeil str d2'Caf'8e', (en panne)'d3 +salle51_zone1_bouche str '' +salle51_zone2_main str '' +salle51_zone2_oeil str d2'Auto-destruction imm'8e'diate'd3 +salle51_zone2_bouche str '' +salle51_zone3_main str d2'Auto destruction enclench'8e'e'd3' annonce une voix synth'8e'tique' +salle51_zone3_oeil str d2'Auto-destruction diff'8e'r'8e'e'd3 +salle51_zone3_bouche str '' +salle51_zone4_main str '' +salle51_zone4_oeil str d2'Ejection'd3 +salle51_zone4_bouche str '' +salle51_zone5_main str '' +salle51_zone5_oeil str 'Un micro' +salle51_zone5_bouche str d2'Un, deux, un, deux, trois !'d3 +salle51_zone6_main str '' +salle51_zone6_oeil str 'Juste de quoi ranger ses petits effets personnels' +salle51_zone6_bouche str '' +salle51_zone7_main str '' +salle51_zone7_oeil str 'Et dire que le Professeur X. veut devenir ma'94'tre de tout '8d'a..' +salle51_zone7_bouche str '' +salle51_zone8_main str 'Pfff... Ca connait le GFA '8d'a ?' +salle51_zone8_oeil str 'M'90'me pas de l'27'Atari'd3 +salle51_zone8_bouche str '' +salle51_zone9_main str '' +salle51_zone9_oeil str 'Le prochain streamer Atari ?' +salle51_zone9_bouche str '' + +salle52 + dw 10 + dw 0,0,0,0 + dw 56,61,61,63 + da salle52_zone1_main + da salle52_zone1_oeil + da salle52_zone1_bouche + dw 60,61,72,63 + da salle52_zone2_main + da salle52_zone2_oeil + da salle52_zone2_bouche + dw 64,65,70,67 + da salle52_zone3_main + da salle52_zone3_oeil + da salle52_zone3_bouche + dw 74,64,79,67 + da salle52_zone4_main + da salle52_zone4_oeil + da salle52_zone4_bouche + dw 127,44,143,59 + da salle52_zone5_main + da salle52_zone5_oeil + da salle52_zone5_bouche + dw 64,74,87,93 + da salle52_zone6_main + da salle52_zone6_oeil + da salle52_zone6_bouche + dw 27,2,114,36 + da salle52_zone7_main + da salle52_zone7_oeil + da salle52_zone7_bouche + dw 201,5,247,87 + da salle52_zone8_main + da salle52_zone8_oeil + da salle52_zone8_bouche + dw 85,56,120,65 + da salle52_zone9_main + da salle52_zone9_oeil + da salle52_zone9_bouche + dw 5,74,44,102 + da salle52_zone10_main + da salle52_zone10_oeil + da salle52_zone10_bouche +salle52_zone1_main str 'Rien ne se passe' +salle52_zone1_oeil str d2'Caf'8e', (en panne)'d3 +salle52_zone1_bouche str '' +salle52_zone2_main str '' +salle52_zone2_oeil str d2'Auto-destruction imm'8e'diate'd3 +salle52_zone2_bouche str '' +salle52_zone3_main str d2'Auto destruction enclench'8e'e'd3' annonce une voix synth'8e'tique' +salle52_zone3_oeil str d2'Auto-destruction diff'8e'r'8e'e'd3 +salle52_zone3_bouche str '' +salle52_zone4_main str '' +salle52_zone4_oeil str d2'Ejection'd3 +salle52_zone4_bouche str '' +salle52_zone5_main str '' +salle52_zone5_oeil str 'Un micro' +salle52_zone5_bouche str d2'Un, deux, un, deux, trois!'d3 +salle52_zone6_main str '' +salle52_zone6_oeil str 'Juste de quoi ranger ses petits effets personnels' +salle52_zone6_bouche str '' +salle52_zone7_main str '' +salle52_zone7_oeil str 'Et dire que le Professeur X. veut devenir ma'94'tre de tout '8d'a...' +salle52_zone7_bouche str '' +salle52_zone8_main str '' +salle52_zone8_oeil str 'Vite ! Bill doit faire quelque chose ! !' +salle52_zone8_bouche str d2'Vous ne m'27''8e'chapperez plus cette fois-ci Palmer !'d3 +salle52_zone9_main str 'Pfff... Ca connait le GFA '8d'a ?' +salle52_zone9_oeil str 'M'90'me pas de l'27'Atari'd3 +salle52_zone9_bouche str '' +salle52_zone10_main str '' +salle52_zone10_oeil str 'Le prochain streamer Atari ?' +salle52_zone10_bouche str '' + +salle53 + dw 10 + dw 0,0,0,0 + dw 56,61,61,63 + da salle53_zone1_main + da salle53_zone1_oeil + da salle53_zone1_bouche + dw 60,61,72,63 + da salle53_zone2_main + da salle53_zone2_oeil + da salle53_zone2_bouche + dw 64,65,70,67 + da salle53_zone3_main + da salle53_zone3_oeil + da salle53_zone3_bouche + dw 74,64,79,67 + da salle53_zone4_main + da salle53_zone4_oeil + da salle53_zone4_bouche + dw 127,44,143,59 + da salle53_zone5_main + da salle53_zone5_oeil + da salle53_zone5_bouche + dw 64,74,87,93 + da salle53_zone6_main + da salle53_zone6_oeil + da salle53_zone6_bouche + dw 27,2,114,36 + da salle53_zone7_main + da salle53_zone7_oeil + da salle53_zone7_bouche + dw 201,5,247,87 + da salle53_zone8_main + da salle53_zone8_oeil + da salle53_zone8_bouche + dw 85,56,120,65 + da salle53_zone9_main + da salle53_zone9_oeil + da salle53_zone9_bouche + dw 5,74,44,102 + da salle53_zone10_main + da salle53_zone10_oeil + da salle53_zone10_bouche +salle53_zone1_main str 'Rien ne se passe' +salle53_zone1_oeil str d2'Caf'8e', (en panne)'d3 +salle53_zone1_bouche str '' +salle53_zone2_main str '' +salle53_zone2_oeil str d2'Auto-destruction imm'8e'diate'd3 +salle53_zone2_bouche str '' +salle53_zone3_main str d2'Auto destruction enclench'8e'e'd3' annonce une voix synth'8e'tique' +salle53_zone3_oeil str d2'Auto-destruction diff'8e'r'8e'e'd3 +salle53_zone3_bouche str '' +salle53_zone4_main str '' +salle53_zone4_oeil str d2'Ejection'd3 +salle53_zone4_bouche str '' +salle53_zone5_main str '' +salle53_zone5_oeil str 'Un micro' +salle53_zone5_bouche str d2'Un, deux, un, deux, trois !'d3 +salle53_zone6_main str '' +salle53_zone6_oeil str 'Juste de quoi ranger ses petits effets personnels' +salle53_zone6_bouche str '' +salle53_zone7_main str '' +salle53_zone7_oeil str 'Et dire que le Professeur X. veut devenir ma'94'tre de tout '8d'a...' +salle53_zone7_bouche str '' +salle53_zone8_main str '' +salle53_zone8_oeil str 'Bill a la situation bien en main !' +salle53_zone8_bouche str d2'Vous ne vous en tirerez pas comme '8d'a, Palmer ! !'d3 +salle53_zone9_main str 'Pfff... Ca connait le GFA '8d'a ?' +salle53_zone9_oeil str 'M'90'me pas de l'27'Atari'd3 +salle53_zone9_bouche str '' +salle53_zone10_main str '' +salle53_zone10_oeil str 'Le prochain streamer Atari ?' +salle53_zone10_bouche str '' + +salle54 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle54_zone1_main + da salle54_zone1_oeil + da salle54_zone1_bouche +salle54_zone1_main str '' +salle54_zone1_oeil str '' +salle54_zone1_bouche str '' + +salle55 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle55_zone1_main + da salle55_zone1_oeil + da salle55_zone1_bouche +salle55_zone1_main str '' +salle55_zone1_oeil str '' +salle55_zone1_bouche str '' + +salle56 + dw 1 + dw 0,0,0,0 + dw 0,0,0,0 + da salle56_zone1_main + da salle56_zone1_oeil + da salle56_zone1_bouche +salle56_zone1_main str '' +salle56_zone1_oeil str '' +salle56_zone1_bouche str '' + +* VARIABLE CONTENANT LE COPYRIGHT + +nombre_messages = 11 +message + da message1 + da message2 + da message3 + da message4 + da message5 + da message6 + da message7 + da message8 + da message9 + da message10 + da message11 + +message1 str 0d'BILL PALMER. Copyright 1987. ARCAN' +message2 str 0d'Un jeu de FRANCOIS COULON' +message3 str 0d'Dessins de DOMINIQUE PETTER' +message4 str 0d'Musique d'27' Alain Krausz' +message5 str 0d'Coproduit par Emmanuel Lasmezas' +message6 str 0d'Programmes et outils utilis'8e's...' +message7 str 0d'Basic GFA et Compilateur GFA (GfA Systemtechnik/Franck Ostrowski)' +message8 str 0d'Degas Elite (Batteries Included/Tom Hudson), Tablette graphique CRP' +message9 str 'Mat'8e'riel musical Yamaha et Akai, digitaliseur ST Replay (2 bits System/A. Racine)' +message10 str 'Version Apple IIgs '8e'crite en 2021'0d'par Brutal Deluxe Software'0d'Antoine Vignau & Olivier Zardini' +message11 str ' ' + +* DIVERSES CHAINES + +strVIDE str '' \ No newline at end of file diff --git a/billpalmer/en/palmer b/billpalmer/en/palmer new file mode 100644 index 0000000..a382e7e Binary files /dev/null and b/billpalmer/en/palmer differ diff --git a/billpalmer/en/palmer.s b/billpalmer/en/palmer.s new file mode 100644 index 0000000..81d0b4c --- /dev/null +++ b/billpalmer/en/palmer.s @@ -0,0 +1,2200 @@ +* +* Bill Palmer +* +* (c) 1987, François Coulon +* (c) 2021, Brutal Deluxe +* + + lst off + rel + dsk palmer.l + + mx %00 + xc + xc + +*----------------------------------- Macros + + use 4/Ctl.Macs + use 4/Desk.Macs + use 4/Event.Macs + use 4/Int.Macs + use 4/Line.Macs + use 4/Locator.Macs + use 4/Mem.Macs + use 4/Menu.Macs + use 4/MIDISyn.Macs + use 4/Misc.Macs + use 4/Print.Macs + use 4/Qd.Macs + use 4/QdAux.Macs + use 4/Resource.Macs + use 4/Scrap.Macs + use 4/Sound.Macs + use 4/Std.Macs + use 4/TextEdit.Macs + use 4/Util.Macs + use 4/Window.Macs + +*----------------------------------- Constantes + +*-------------- Softswitches + +RDVBLBAR = $E0C019 +GSOS = $e100a8 + +*-------------- GUI + +wMAIN = 1 +alertQUIT = 1 +alertRESTART = 2 + +refIsPointer = $0 +refIsHandle = $1 +refIsResource = $2 + +appleKey = $0100 + +*-------------- + +dpFROM = $00 +dpTO = dpFROM+4 +Second = dpTO+4 +dpSTR = Second+4 +dpBUF = dpSTR+4 +dpSALLE = dpBUF+4 + +*--- + +TRUE = 255 +FALSE = 0 + +*----------------------------------- Entry point + + phk + plb + + _TLStartUp + pha + _MMStartUp + pla + sta myID + + tdc + sta myDP + +*--- Version du systeme + + jsl GSOS + dw $202a + adrl proVERS + + lda proVERS+2 + and #%01111111_11111111 + cmp #$0402 + bcs okVERS + + pha + PushLong #verSTR1 + PushLong #verSTR2 + PushLong #errSTR1 + PushLong #errSTR2 + _TLTextMountVolume + pla + brl meQUIT1 + +*--- 64K pour les images des scènes + +okVERS jsr make64KB + bcc okMEM1 + +koMEM pha + PushLong #memSTR1 + PushLong #errSTR2 + PushLong #errSTR1 + PushLong #errSTR2 + _TLTextMountVolume + pla + brl meQUIT1 + +okMEM1 + sty ptrIMAGE + sty ptrToSourceLocInfo+2 + stx ptrIMAGE+2 + stx ptrToSourceLocInfo+4 + + sep #$10 ; save ptrIMAGE+2 + stx saveBACK1+3 ; for interactions + stx loadBACK1+3 ; with the toolbox + rep #$10 + +*--- 64K pour les images compressees et les icônes + + jsr make64KB + bcs koMEM + + sty ptrUNPACK + stx ptrUNPACK+2 + stx ptrICONS+2 ; ptrICONS is set to $8000 + stx iconToSourceLocInfo+4 + +*--- Chargement des outils + + pha + pha + PushWord myID + PushWord #refIsResource + PushLong #1 + _StartUpTools + PullLong SStopREC + bcc okTOOL + + pha + PushLong #tolSTR1 + PushLong #errSTR2 + PushLong #errSTR1 + PushLong #errSTR2 + _TLTextMountVolume + pla + brl meQUIT + +*--- Et la musique... + +okTOOL + jsr initMIDI + +*--- Charge les images nécessaires du jeu + + lda #pICONS + ldx ptrUNPACK+2 + ldy ptrUNPACK + jsr loadFILE + bcc okMEM2 + + pha + PushLong #filSTR1 + PushLong #errSTR2 + PushLong #errSTR1 + PushLong #errSTR2 + _TLTextMountVolume + pla + brl meQUIT1 + +okMEM2 + tya + jsr unpackLZ4 + + PushLong ptrIMAGE + PushLong ptrICONS + PushLong #32768 + _BlockMove + +*--- Affichage desktop + + _HideMenuBar + + PushWord #0 + PushWord #%11111111_11111111 + PushWord #0 + _FlushEvents + pla + + _InitCursor + +*---------------------------------------- +* INITIALISATIONS +*---------------------------------------- + +memOK + PushLong #0 + PushWord #5 ; SetDeskPat + PushWord #$4000 + PushWord #$00F0 + _Desktop + pla + pla + + pha + pha + PushLong #0 + PushLong #wMAIN + PushLong #PAINTMAIN + PushLong #0 + PushWord #refIsResource + PushLong #wMAIN + PushWord #$800e + _NewWindow2 + PullLong wiMAIN + +*---------------------------------------- +* DEBUT DU JEU +*---------------------------------------- + + jsr debut + jsr chargement_image + jsr doSOUNDON + +*---------------------------------------- +* TASK MASTER +*---------------------------------------- + +taskLOOP + PushWord #0 + PushWord #0 + PushWord #$c000 + PushWord #0 + _HandleDiskInsert + pla + pla + + jsr checkREPLAY + + PushWord #0 + PushWord #%11111111_11111111 + PushLong #taskREC + _TaskMaster + pla + beq taskLOOP + + asl + tax + jsr (taskTBL,x) + + lda instruction1 + ora instruction2 + ora instructionDIR + ora zone_cliquee + beq taskLOOP99 + + jsr commentaires + jsr directions ; clr instructionDIR + jsr actions_permanentes + + lda instruction1 + beq taskLOOP99 + + lda salle + asl + tax + jsr (lessalles,x) + +taskLOOP99 + stz zone_cliquee + stz instruction2 + + jsr chargement_image + bra taskLOOP + +*----------------------------------- Gestion du keyDown +* on gère les directions et les open-apple-qqch + +doKEYDOWN + lda taskMODIFIERS + and #appleKey + cmp #appleKey + beq doOPENAPPLE + +*--- gère les directions + + lda taskMESSAGE + ldx #nord + cmp #$0b + beq keydownOK + ldx #sud + cmp #$0a + beq keydownOK + ldx #gauche + cmp #$08 + beq keydownOK + ldx #droite + cmp #$15 + beq keydownOK + rts +keydownOK + stx instructionDIR + rts + +*--- gère les open-apple-qqch + +doOPENAPPLE + ldx #-1 + sep #$20 +]lp inx + lda tblKEYVALUE,x ; get key + cmp #$ff ; end of table + beq doOPENAPPLE99 ; so exit + cmp taskMESSAGE ; same as pressed key? + bne ]lp ; no, loop + + rep #$20 + txa + asl + tax + jmp (tblKEYADDRESS,x) + +doOPENAPPLE99 +doNOT + rep #$20 + rts + +*--- +* Main / Oreille / Bouche sont pris également ! ! ! + +tblKEYVALUE + asc 'QqLlSs??' + asc 'Dd' + asc 'Cc' + asc 'Zz' + hex ff + +tblKEYADDRESS + da doQUIT,doQUIT,doLOAD,doLOAD,doSAVE,doSAVE,doCOPYRIGHT,doCOPYRIGHT + da doRESTART,doRESTART + da doCHEAT,doCHEAT ; cheat mode + da doMUSIK,doMUSIK + +*----------------------------------- Gestion du mouseUp +* on compare les coordonnées avec celles du incontent +* si dans le même rectangle, on traite + +doMOUSEUP + jsr test_icone + jmp test_zone + +*----------------------------------- Gestion des controles + +doCONTROL + lda taskREC+38 + asl + tax + jmp (ctrlTBL,x) + +*---------------------------------------- +* FENETRES +*---------------------------------------- + +PAINTMAIN + PushLong wiMAIN + _DrawControls + +* BOX 1,161,318,198 + + PushWord #1 + PushWord #160 + _MoveTo + + PushWord #317 + PushWord #160 + _LineTo + + PushWord #317 + PushWord #198 + _LineTo + + PushWord #1 + PushWord #198 + _LineTo + + PushWord #1 + PushWord #160 + _LineTo + +* BOX 1,1,273,110 + + PushWord #1 + PushWord #1 + _MoveTo + + PushWord #273 + PushWord #1 + _LineTo + + PushWord #273 + PushWord #110 + _LineTo + + PushWord #1 + PushWord #110 + _LineTo + + PushWord #1 + PushWord #1 + _LineTo + + rtl + +*---------------------------------------- +* ACTIONS DES CONTROLES DU JEU +*---------------------------------------- + +doNORD +doSUD +doGAUCHE +doDROITE +doEXIT + lda taskREC+38 + sta instructionDIR + rts + +*--- Main + +doMAIN + lda fgMAIN + eor #1 + sta fgMAIN + + lda fgMAIN + ldx #main + stx instruction1 + jsr setCTLVALUE + + lda fgMAIN + bne mainOK + + stz instruction1 + ldx #main + jmp invalCTL + +mainOK + stz fgOEIL + stz fgBOUCHE + + lda #FALSE ; plus de oeil + ldx #oeil + jsr setCTLVALUE + ldx #oeil + jsr invalCTL + + lda #FALSE ; plus de bouche + ldx #bouche + jsr setCTLVALUE + ldx #bouche + jmp invalCTL + +*--- Oeil + +doOEIL + lda fgOEIL + eor #1 + sta fgOEIL + + lda fgOEIL + ldx #oeil + stx instruction1 + jsr setCTLVALUE + + lda fgOEIL + bne oeilOK + + stz instruction1 + ldx #oeil + jmp invalCTL + +oeilOK + stz fgMAIN + stz fgBOUCHE + + lda #FALSE ; plus de main + ldx #main + jsr setCTLVALUE + ldx #main + jsr invalCTL + + lda #FALSE ; plus de bouche + ldx #bouche + jsr setCTLVALUE + ldx #bouche + jmp invalCTL + +*--- Bouche + +doBOUCHE + lda fgBOUCHE + eor #1 + sta fgBOUCHE + + ldx #bouche ; on force la bouche + stx instruction1 + jsr setCTLVALUE ; et on met la value dans le controle + + lda fgBOUCHE ; et on a quoi en valeur + bne boucheOK ; 1 = on va invalider les autres + + stz instruction1 + ldx #bouche ; 0 = on s'invalide + jmp invalCTL + +boucheOK + stz fgMAIN + stz fgOEIL + + lda #FALSE ; plus de main + ldx #main + jsr setCTLVALUE + ldx #main + jsr invalCTL + + lda #FALSE ; plus d'oeil + ldx #oeil + jsr setCTLVALUE + ldx #oeil + jmp invalCTL + +*--- Play with controls + +getCTLVALUE + pea $0000 + pea $0000 + pea $0000 + pea $0000 + phx + _GetCtlValueByID + pla + rts + +setCTLVALUE + pha + pea $0000 + pea $0000 + pea $0000 + phx + _SetCtlValueByID + rts + +invalCTL + pea $0000 ; space for result + pea $0000 + pea $0000 ; top window + pea $0000 + pea $0000 ; ID value for desired control + phx + _GetCtlHandleFromID + _DrawOneCtl + rts + +*--- + +fgMAIN ds 2 +fgOEIL ds 2 +fgBOUCHE ds 2 + +*---------------------------------------- +* CODE DU JEU +*---------------------------------------- + +actions_permanentes + lda instruction1 ; quelle action ? + cmp #oeil + bne ap5 ; ce n'est pas un oeil + +* cliquer sur un objet avec une instruction avant (que l'on limite à l'oeil) + +ap1 lda instruction2 ; est-on sur un objet ? + bne ap2 + rts +ap2 cmp #nombre_objets ; oeil + objet + bcc ap3 ; ne teste pas animation + rts + +ap3 tax ; objet visible ? + lda objet_apparu-1,x + and #$ff + bne ap4 + rts + +ap4 txa ; get address of description + dec + asl + tax + lda description_objet,x + jmp ecriture ; output it + +* cliquer sur un objet sans instruction avant + +ap5 lda instruction1 ; on ne doit pas avoir + beq ap6 ; d'action active + rts + +ap6 lda instruction2 ; est-on sur un objet ? + bne ap7 + rts +ap7 cmp #nombre_objets + bcc ap8 ; ne teste pas animation + rts + +ap8 tax + lda objet-1,x ; a-t-on pris l'objet ? + and #$ff + cmp #objet_pris + bne ap9 + + sep #$20 ; on pose l'objet + lda salle + sta objet-1,x + rep #$20 + jmp inversion_icone + +* on n'a pas pris l'objet + +ap9 cmp salle ; on est dans la meme salle ? + bne ap10 + + sep #$20 ; si on est dans la bonne salle + lda #objet_pris + sta objet-1,x + rep #$20 + jmp affichage_icone + +ap10 rts + +*--- Teste si on a cliqué sur un objet + +test_icone + stz instruction2 + + lda #0 ; from 1 +]lp pha + asl + asl + asl + tax + lda taskWHERE+2 ; compare le X + cmp icones_coordonnees,x + bcc icone_ko + lda icones_coordonnees+4,x + cmp taskWHERE+2 + bcc icone_ko + + lda taskWHERE ; et le Y + cmp icones_coordonnees+2,x + bcc icone_ko + lda icones_coordonnees+6,x + cmp taskWHERE + bcc icone_ko + + pla ; on a notre icône + inc + sta instruction2 + rts + +icone_ko + pla + inc + cmp #nombre_objets ; et non plus nombre_icones + bcc ]lp + rts + +*--- + +test_zone + stz zone_cliquee + + lda salle + dec + asl + tax + lda table_salle,x + sta dpSALLE ; salle1 à salle56 + + ldy #0 + lda (dpSALLE),y + sta nb_zones + + lda dpSALLE ; pointe sur les coordonnees de la première zone + clc + adc #10 + sta dpSALLE + + lda #0 +]lp pha + + ldy #0 + lda taskWHERE+2 ; compare le X + cmp (dpSALLE),y + bcc zone_ko + ldy #4 + lda (dpSALLE),y + cmp taskWHERE+2 + bcc zone_ko + + ldy #2 + lda taskWHERE ; et le Y + cmp (dpSALLE),y + bcc zone_ko + ldy #6 + lda (dpSALLE),y + cmp taskWHERE + bcc zone_ko + + pla + inc + sta zone_cliquee + rts + +zone_ko + lda dpSALLE ; pointe sur la prochaine zone + clc + adc #14 + sta dpSALLE + + pla + inc + cmp nb_zones ; to nb_zones + bcc ]lp + rts + +nb_zones ds 2 + +*--- + +commentaires + lda zone_cliquee + bne comm1 + rts + +comm1 + ldy #0 ; index du pointeur du commentaire dans la zone + lda instruction1 + cmp #main + beq comm2 + ldy #2 + cmp #oeil + beq comm2 + ldy #4 + cmp #bouche + beq comm2 + rts + +comm2 + lda salle + dec + asl + tax + lda table_salle,x + clc + adc #18 ; pointe sur les pointeurs des commentaires de la premiere zone + sta dpSALLE ; salle1 à salle56 + + lda #0 ; on fait +14 X fois + ldx zone_cliquee ; X est l'index de la zone cliquée +]lp dex + beq comm3 + clc + adc #14 + bra ]lp + +comm3 + clc ; on met à jour le pointeur + adc dpSALLE + sta dpSALLE + + lda (dpSALLE),y ; et on retourne le pointeur vers le commentaire main/oeil/bouche + jmp ecriture + +*--- + +apparition_objet ; X is object, A is string + pha + + lda objet_apparu-1,x + and #$ff + bne do99 ; = TRUE, ie <> 0 + + sep #$20 + lda salle + sta objet-1,x + lda #TRUE + sta objet_apparu-1,x + rep #$20 + + jsr inversion_icone + bra fin_objet + +*--- + +disparition_objet ; X is object + pha + + lda objet_apparu-1,x + and #$ff + beq do99 + + sep #$20 + lda #objet_detruit + sta objet-1,x + rep #$20 + + jsr disparition_icone + +*--- + +fin_objet + pla + jmp ecriture +do99 pla + rts + +*--- + +directions + lda salle + cmp #38 + bne dire1 + lda instructionDIR ; 1 + cmp #droite + bne dire1 + + lda #di_str1 + jsr ecriture + +dire1 + lda salle + cmp #36 + bne dire2 + lda instructionDIR ; 1 + cmp #nord + bne dire2 + + lda #di_str2 + jsr ecriture + +dire2 + lda salle + cmp #22 + bne dire3 + lda instructionDIR ; 1 + cmp #gauche + bne dire3 + + lda #di_str3 + jsr ecriture + +dire3 + lda salle + cmp #21 + bne dire4 + lda instructionDIR ; 1 + cmp #gauche + bne dire4 + + lda #di_str4 + jsr ecriture + +dire4 + lda salle + cmp #11 + bne dire5 + lda instructionDIR ; 1 + cmp #droite + bne dire5 + + lda #di_str5 + jsr ecriture + +dire5 + lda instructionDIR ; 1 + cmp #nord + bcc dire6 + lda #droite + cmp instructionDIR ; 1 + bcc dire6 + + lda salle ; salle + dec ; - 1 + asl ; *2 parce que 16-bits + tax + lda table_salle,x ; pointe sur les données de la salle + inc + inc + sta dpSALLE ; pointe sur le tableau des directions + + lda instructionDIR ; instruction1 + sec + sbc #nord ; - première direction + asl ; *2 parce que 16-bits + tay + lda (dpSALLE),y ; récupère la prochaine salle + beq direNOSALLE ; 0 = pas de salle + sta salle +direNOSALLE + stz instructionDIR ; 1 + +dire6 + lda salle + cmp #25 + bne dire7 + ldx #elephant_enfuis + lda indicateur-1,x + and #$ff + cmp #TRUE + bne dire7 + + lda #26 + sta salle + +dire7 + lda salle + cmp #28 + bne dire8 + ldx #mechant_assome + lda indicateur-1,x + and #$ff + cmp #TRUE + bne dire8 + + lda #27 + sta salle + +dire8 + lda salle + cmp #29 + bne dire9 + ldx #mechant_assome + lda indicateur-1,x + and #$ff + cmp #TRUE + bne dire9 + + lda #30 + sta salle + +dire9 + lda salle + cmp #32 + bne dire10 + ldx #mechant_assome + lda indicateur-1,x + and #$ff + cmp #TRUE + bne dire10 + + lda #31 + sta salle + +dire10 + lda salle + cmp #34 + bne dire11 + ldx #feu_allume + lda indicateur-1,x + and #$ff + cmp #TRUE + bne dire11 + + lda #35 + sta salle + +dire11 + lda salle + cmp #36 + bne dire12 + ldx #photo_montree + lda indicateur-1,x + and #$ff + cmp #FALSE + bne dire12 + + lda #33 + sta salle + +dire12 + rts + +*--- + +*di_str1 str 'Mieux vaudrait ne pas suivre le Professeur...' +*di_str2 str 'Il n'27'y a qu'2788' pousser la porte... (auriez-vous peur de quelque chose ?)' +*di_str3 str 'Bill saute facilement du train et attend que celui-ci reparte' +*di_str4 str 'Ce genre de saut ne marche que dans les films...' +*di_str5 str 'Bill s'27'envole pour l'27'Afrique' + +di_str1 str 'Better not to follow the Professor...' +di_str2 str 'You just have to push the door... (are you afraid of something?)' +di_str3 str 'Bill easily jumps off the train and waits for it to leave' +di_str4 str 'This kind of jump only works in movies...' +di_str5 str 'Bill flies to Africa' + +*--- + +disparition_icone ; X is object + cpx #0 + beq di1 + txa + dec + asl + asl + asl ; because we are 16-bit + tax + lda icones_coordonnees+2,x + sta diRECT + lda icones_coordonnees,x + sta diRECT+2 + lda icones_coordonnees+6,x + sta diRECT+4 + lda icones_coordonnees+4,x + sta diRECT+6 + + _HideCursor + PushLong #diRECT + _EraseRect + _ShowCursor +di1 + rts + +diRECT ds 8 + + rts + +*--- + +affichage_icone ; X is object + cpx #0 + beq ai1 + txa + dec + asl + asl + asl ; because we are 16-bit + tax + lda icones_coordonnees+2,x + sta iconToSourceRect + sta iconToDestPoint + lda icones_coordonnees,x + sta iconToSourceRect+2 + sta iconToDestPoint+2 + lda icones_coordonnees+6,x + sta iconToSourceRect+4 + lda icones_coordonnees+4,x + sta iconToSourceRect+6 + + _HideCursor + PushLong #iconParamPtr + _PaintPixels + _ShowCursor + +ai1 + rts + +*--- + +iconParamPtr + adrl iconToSourceLocInfo + adrl iconToDestLocInfo + adrl iconToSourceRect + adrl iconToDestPoint + dw $0000 ; mode copy + ds 4 + +iconToSourceLocInfo + dw $0000 ; mode 320 + adrl $8000 ; ptrICON - $8000 on entry, high set after _NewHandle + dw 160 + dw 0,0,199,319 + +iconToDestLocInfo + dw $0000 ; mode 320 + adrl $012000 + dw 160 + dw 0,0,199,319 + +iconToSourceRect + dw 3,0,109,272 +iconToDestPoint + dw 3,0 + +*--- + +inversion_icone ; X is object + cpx #0 + beq ii1 + phx + jsr affichage_icone + pla + dec + asl + asl + asl ; because we are 16-bit + tax + lda icones_coordonnees+2,x + sta iiRECT + lda icones_coordonnees,x + sta iiRECT+2 + lda icones_coordonnees+6,x + sta iiRECT+4 + lda icones_coordonnees+4,x + sta iiRECT+6 + + _HideCursor + PushLong #iiRECT + _InvertRect + _ShowCursor + +ii1 + rts + +iiRECT ds 8 + +*--- + +affichage_objets + ldx #1 +]lp phx + jsr disparition_icone + + plx + phx + lda objet-1,x + and #$ff + cmp salle + bne ao_1 + jsr inversion_icone + bra ao_2 + +ao_1 + cmp #objet_pris + bne ao_2 + jsr affichage_icone + +ao_2 + plx + inx + cpx #nombre_objets ; to 20 - do not want the animation icon + bcc ]lp + rts + +*--- + +ecriture + sta dpFROM + + lda (dpFROM) ; get length of string + and #$ff + bne ecriture1 + rts + +ecriture1 + pea #^strVIDE ; get pointer to string + ldx dpFROM + inx + phx + pha ; push length + PushLong #myRECT + PushWord #0 ; left justified + _LETextBox2 + rts + +myRECT dw 161 + dw 2 + dw 198 + dw 317 + +*--- + +chargement_image + lda salle + cmp ancienne_salle + bne ci_ok + rts +ci_ok + sta ancienne_salle + + jsr reset_icones ; etat initial + jsr affichage_objets ; affiche les objets + jmp affichage_image ; charge l'image +* lda #strVIDE ; plus de texte +* jmp ecriture + +*--- + +affichage_image + PushWord salle + PushLong #tempSTR + PushWord #2 + PushWord #0 + _Int2Dec + + lda tempSTR + ora #'00' + sta pIMAGE+10 + jmp decompression_image + +tempSTR ds 4 + +*--- + +decompression_image + lda #pIMAGE + ldx ptrUNPACK+2 + ldy ptrUNPACK + jsr loadFILE + bcs di_err + +decompression_image_cheat + + lda proREAD+12 + jsr unpackLZ4 + + _HideCursor + PushLong #paintParamPtr + _PaintPixels + + PushWord #0 + lda ptrIMAGE+2 + pha + lda ptrIMAGE + clc + adc #$7e00 + pha + _SetColorTable + + jsr showCHEAT ; the cheat mode + + _ShowCursor + +di_err + rts + +paintParamPtr + adrl ptrToSourceLocInfo + adrl ptrToDestLocInfo + adrl ptrToSourceRect + adrl ptrToDestPoint + dw $0000 ; mode copy + ds 4 + +ptrToSourceLocInfo + dw $0000 ; mode 320 + ds 4 ; ptrIMAGE + dw 160 + dw 0,0,199,319 + +ptrToDestLocInfo + dw $0000 ; mode 320 + adrl $012000 + dw 160 + dw 0,0,199,319 + +ptrToSourceRect + dw 3,0,109,272 +ptrToDestPoint + dw 3,0 + +*--- + +fin + jsr ecriture + jsr debut + + lda #5 + jmp nowWAIT + +*--- + +debut + sep #$20 + + ldx #nombre_objets + lda #objet_inexistant +]lp sta objet-1,x + dex + bne ]lp + + ldx #nombre_objets + lda #FALSE +]lp sta objet_apparu-1,x + dex + bne ]lp + + ldx #nombre_indicateurs +]lp sta indicateur-1,x + dex + bne ]lp + + rep #$20 + + lda #4 + sta salle + stz ancienne_salle + +*--- + +reset_icones + + stz instruction1 + stz instruction2 + stz instructionDIR + stz zone_cliquee + + stz fgMAIN + stz fgOEIL + stz fgBOUCHE + + ldx #main + lda #FALSE + jsr setCTLVALUE + ldx #oeil + lda #FALSE + jsr setCTLVALUE + ldx #bouche + lda #FALSE + jsr setCTLVALUE + + ldx #main + jsr invalCTL + ldx #oeil + jsr invalCTL + ldx #bouche + jmp invalCTL + +*---------------------------------------- + +*--- Donnees du jeu + +salle ds 2 +ancienne_salle ds 2 +instruction1 ds 2 +instruction2 ds 2 +instructionDIR ds 2 +zone_cliquee ds 2 + +*----------------------------------- Copyright + +doCOPYRIGHT + lda #0 +]lp pha + asl + tax + lda message,x + jsr ecriture + + lda #3 ; 150 ms / 50 (GFA) = 3 secondes + jsr nowWAIT + + pla + inc + cmp #nombre_messages + bcc ]lp + rts + +*----------------------------------- Open + +doLOAD + jsr doSOUNDOFF + jsr saveBACK + + PushWord #30 + PushWord #43 + PushLong #strLOADFILE + PushLong #0 + PushLong #typeLIST + PushLong #replyPTR + _SFGetFile + + jsr loadBACK + jsr doSOUNDON + + lda replyPTR + bne doLOAD1 + rts + +doLOAD1 + jsr copyPATH + jsr loadALL + + stz ancienne_salle + stz instruction1 + stz instruction2 + stz instructionDIR + + jsr reset_icones + + lda #strVIDE + jmp ecriture + +*----------------------------------- Save + +doSAVE + jsr doSOUNDOFF + jsr saveBACK + + PushWord #25 + PushWord #36 + PushLong #strSAVEFILE + PushLong #namePATH + PushWord #15 + PushLong #replyPTR + _SFPutFile + + jsr loadBACK + jsr doSOUNDON + + lda replyPTR + bne doSAVE1 + rts + +doSAVE1 + jsr copyPATH + jsr saveALL + + lda #strVIDE + jmp ecriture + +*--- Recopie le filename du fichier de sauvegarde + +copyPATH + sep #$20 + ldx #16-1 +]lp lda namePATH1,x + sta pGAME+4,x + dex + bpl ]lp + + lda namePATH + inc + inc + sta pGAME + rep #$20 + rts + +*--- Charge le fichier de sauvegarde en mémoire + +loadALL + jsl GSOS + dw $2010 + adrl proOPENGAME + bcs loadKO99 + + lda proOPENGAME+2 + sta proREADGAME+2 + sta proCLOSE+2 + + jsr loadPART + + jsl GSOS + dw $2014 + adrl proCLOSE + +loadKO99 + rts + +*--- + +loadPART + ldx #nombre_indicateurs + ldy #indicateur + jsr loadIT + + ldx #nombre_objets + ldy #objet + jsr loadIT + + ldx #nombre_objets + ldy #objet_apparu + jsr loadIT + + ldx #1 + ldy #salle + +loadIT + stx proREADGAME+8 + sty proREADGAME+4 + jsl GSOS + dw $2012 + adrl proREADGAME + rts + + +*--- Enregistre le fichier de sauvegarde + +saveALL + jsl GSOS + dw $2002 + adrl proDESTROYGAME + + jsl GSOS + dw $2001 + adrl proCREATEGAME + bcs saveKO99 + + jsl GSOS + dw $2010 + adrl proOPENGAME + bcs saveKO99 + + lda proOPENGAME+2 + sta proWRITEGAME+2 + sta proCLOSE+2 + + jsr savePART + + jsl GSOS + dw $2014 + adrl proCLOSE + +saveKO99 + rts + +*--- + +savePART + ldx #nombre_indicateurs + ldy #indicateur + jsr saveIT + + ldx #nombre_objets + ldy #objet + jsr saveIT + + ldx #nombre_objets + ldy #objet_apparu + jsr saveIT + + ldx #1 + ldy #salle + +saveIT + stx proWRITEGAME+8 + sty proWRITEGAME+4 + jsl GSOS + dw $2013 + adrl proWRITEGAME + rts + +*----------------------------------- Restart + +doRESTART + jsr saveBACK + + PushWord #0 + PushWord #5 + PushLong #0 + PushLong #alertRESTART + _AlertWindow + + jsr loadBACK + + pla + beq re1 + rts + +re1 + jmp debut + +*----------------------------------- + +doCHEAT + lda fgCHEAT + eor #1 + sta fgCHEAT + + jmp decompression_image_cheat + +*--- + +showCHEAT + lda fgCHEAT + bne showCHEAT1 + rts + +showCHEAT1 + lda salle + dec + asl + tax + lda table_salle,x + sta dpSALLE ; salle1 à salle56 + + ldy #0 + lda (dpSALLE),y + sta nb_zones + + lda dpSALLE ; pointe sur les coordonnees de la première zone + clc + adc #10 + sta dpSALLE + + lda #0 +]lp pha + + ldy #0 + lda (dpSALLE),y ; X1 + sta frameRECT+2 + ldy #2 + lda (dpSALLE),y ; Y1 + sta frameRECT + ldy #4 + lda (dpSALLE),y ; X2 + sta frameRECT+6 + ldy #6 + lda (dpSALLE),y ; Y2 + sta frameRECT+4 + + PushLong #frameRECT + _FrameRect + +*--- + + lda dpSALLE ; pointe sur la prochaine zone + clc + adc #14 + sta dpSALLE + + pla + inc + cmp nb_zones ; to nb_zones + bcc ]lp + rts + +*--- + +fgCHEAT ds 2 + +frameRECT + ds 8 + +*----------------------------------- Quit + +doQUIT + jsr saveBACK + + PushWord #0 + PushWord #5 + PushLong #0 + PushLong #alertQUIT + _AlertWindow + + jsr loadBACK + + pla + beq meQUIT + rts + +*----------------------------------- Quit + +meQUIT + jsr stopMIDI + + PushWord #refIsHandle + PushLong SStopREC + _ShutDownTools + +meQUIT1 PushWord myID + _DisposeAll + + PushWord myID + _MMShutDown + + _TLShutDown + + jsl GSOS + dw $2029 + adrl proQUIT + + brk $bd + +*---------------------------------------- +* MEMOIRE +*---------------------------------------- + +make64KB pha + pha + PushLong #$010000 + PushWord myID + PushWord #%11000000_00011100 + PushLong #0 + _NewHandle + phd + tsc + tcd + lda [3] + tax ; low in X + ldy #2 + lda [3],y + txy ; low in Y + tax ; high in X + pld + pla ; we do not keep track of the handle + pla + rts + +*---------------------------------------- +* GFX +*---------------------------------------- + +*---------------------------- +* unpackLZ4 +* Unpacks a LZ4 file +* Uses the two pointers: +* - ptrUNPACK: packed img (MUST BE AT $0000) +* - ptrDG: temp unpack zone +* +* Entry: +* A: packed data size +* +* Exit: +* A: unpacked data size +* +*---------------------------- + +unpackLZ4 + sta LZ4_Limit+1 + + jsr suspendMUSIC + sep #$20 + +*--- Source + + lda ptrUNPACK+2 + sta LZ4_Literal_3+2 + sta LZ4_ReadToken+3 + sta LZ4_Match_1+3 + sta LZ4_GetLength_1+3 + +*--- Destination + + lda ptrIMAGE+2 + sta LZ4_Literal_3+1 + sta LZ4_Match_5+1 + sta LZ4_Match_5+2 + + rep #$20 + +* REP #$30 +* STY LZ4_Limit+1 + +*-- + + ldy #0 ; Init Target unpacked Data offset + ldx #16 ; Offset after header + +LZ4_ReadToken LDAL $AA0000,X ; Read Token Byte + INX + STA LZ4_Match_2+1 + +*---------------- + +LZ4_Literal AND #$00F0 ; >>> Process Literal Bytes <<< + BEQ LZ4_Limit ; No Literal + CMP #$00F0 + BNE LZ4_Literal_1 + JSR LZ4_GetLengthLit ; Compute Literal Length with next bytes + BRA LZ4_Literal_2 +LZ4_Literal_1 LSR ; Literal Length use the 4 bit + LSR + LSR + LSR + +LZ4_Literal_2 DEC ; Copy A+1 Bytes +LZ4_Literal_3 MVN $AA,$BB ; Copy Literal Bytes from packed data buffer + PHK ; X and Y are auto incremented + PLB + +*---------------- + +LZ4_Limit CPX #$AAAA ; End Of Packed Data buffer ? + BEQ LZ4_End + +*---------------- + +LZ4_Match TYA ; >>> Process Match Bytes <<< + SEC +LZ4_Match_1 SBCL $AA0000,X ; Match Offset + INX + INX + STA LZ4_Match_4+1 + +LZ4_Match_2 LDA #$0000 ; Current Token Value + AND #$000F + CMP #$000F + BNE LZ4_Match_3 + JSR LZ4_GetLengthMat ; Compute Match Length with next bytes +LZ4_Match_3 CLC + ADC #$0003 ; Minimum Match Length is 4 (-1 for the MVN) + + PHX +LZ4_Match_4 LDX #$AAAA ; Match Byte Offset +LZ4_Match_5 MVN $BB,$BB ; Copy Match Bytes from unpacked data buffer + PHK ; X and Y are auto incremented + PLB + PLX + BRA LZ4_ReadToken + +*---------------- + +LZ4_GetLengthLit LDA #$000F ; Compute Variable Length (Literal or Match) +LZ4_GetLengthMat STA LZ4_GetLength_2+1 +LZ4_GetLength_1 LDAL $AA0000,X ; Read Length Byte + INX + AND #$00FF + CMP #$00FF + BNE LZ4_GetLength_3 + CLC +LZ4_GetLength_2 ADC #$000F + STA LZ4_GetLength_2+1 + BRA LZ4_GetLength_1 +LZ4_GetLength_3 ADC LZ4_GetLength_2+1 + RTS + +*---------------- + +LZ4_End sty lenDATA ; Y = length of unpacked data + jmp resumeMUSIC + +*--- + +lenDATA ds 4 + +*----------------------------------- +* SAVE THE SHR SCREEN +*----------------------------------- + +saveBACK + _HideCursor + + ldx #$8000-2 +]lp ldal $e12000,x +saveBACK1 + stal $008000,x + dex + dex + bpl ]lp + +exitBACK _ShowCursor + rts + +*----------------------------------- +* RESTORE THE SHR SCREEN +*----------------------------------- + +loadBACK + _HideCursor + + ldx #$8000-2 +loadBACK1 + ldal $008000,x + stal $012000,x + stal $e12000,x + dex + dex + bpl loadBACK1 + bmi exitBACK + +*---------------------------- +* nowWAIT +* Wait A seconds +* +* Entry: +* A: nb of seconds to wait +* +* Exit: +* A/X: scrambled +* +*---------------------------- + +nowWAIT dec + tax + lda #0 +]lp clc + adc #60 + cpx #0 + beq nowWAIT1 + dex + bra ]lp + +nowWAIT1 pha +]lp ldal RDVBLBAR-1 + bpl ]lp +]lp ldal RDVBLBAR-1 + bmi ]lp + + pla + dec + bne nowWAIT1 + sec + rts + +*---------------------------------------- +* DATA +*---------------------------------------- + +*----------------------- Fenetres + +wiMAIN ds 4 + +*----------------------- Memory manager + +myID ds 2 +myDP ds 2 + +SStopREC ds 4 + +ptrIMAGE ds 4 ; where a scene image is loaded +ptrUNPACK ds 4 ; where the background picture is laoded +ptrICONS adrl $8000 ; where the icons are stored (ptrBACKGROUND+$8000) + +fgLOAD ds 2 +fgSAVE ds 2 + +temp ds 2 + +*----------------------- Tool locator + +verSTR1 str 'System 6.0.1 Required!' +verSTR2 str 'Press a key to quit' +tolSTR1 str 'Error while loading tools' +memSTR1 str 'Cannot allocate memory' +filSTR1 str 'Cannot load file' +errSTR1 str 'Quit' +errSTR2 str '' + +*----------------------- Window manager + +taskREC ds 2 ; wmWhat +0 +taskMESSAGE ds 4 ; wmMessage +2 +taskWHEN ds 4 ; wmWhen +6 +taskWHERE ds 4 ; wmWhere +10 +taskMODIFIERS ds 2 ; wmModifiers +14 +taskDATA ds 4 ; wmTaskData +16 + adrl $001fffff ; wmTaskMask +20 + ds 4 ; wmLastClickTick +24 + ds 2 ; wmClickCount +28 + ds 4 ; wmTaskData2 +30 + ds 4 ; wmTaskData3 +34 + ds 4 ; wmTaskData4 +38 + ds 4 ; wmLastClickPt +42 + +taskTBL da doNOT ; Null + da doNOT ; mouseDownEvt + da doMOUSEUP ; mouseUpEvt + da doKEYDOWN ; keyDownEvt + da doNOT + da doNOT ; autoKeyEvt + da doNOT ; updateEvt + da doNOT + da doNOT ; activateEvt + da doNOT ; switchEvt + da doNOT ; deskAccEvt + da doNOT ; driverEvt + da doNOT ; app1Evt + da doNOT ; app2Evt + da doNOT ; app3Evt + da doNOT ; app4Evt + da doNOT ; wInDesk + da doNOT ; wInMenuBar + da doNOT ; wCLickCalled + da doNOT ; wInContent - was doCONTENT + da doNOT ; wInDrag + da doNOT ; wInGrow + da doNOT ; wInGoAway + da doNOT ; wInZoom + da doNOT ; wInInfo + da doNOT ; wInSpecial + da doNOT ; wInDeskItem + da doNOT ; wInFrame + da doNOT ; wInactMenu + da doNOT ; wInClosedNDA + da doNOT ; wInCalledSysEdit + da doNOT ; wInTrackZoom + da doNOT ; wInHitFrame + da doCONTROL ; wInControl + da doNOT ; wInControlMenu + +ctrlTBL da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNOT + da doNORD + da doSUD + da doGAUCHE + da doDROITE + da doMAIN + da doOEIL + da doBOUCHE + da doCOPYRIGHT + da doSAVE + da doLOAD + +*---------------------------------------- +* STD FILE +*---------------------------------------- + +*--- + +*strLOADFILE str 'Charger quelle partie ?' +*strSAVEFILE str 'Enregistrer sous...' + +strLOADFILE str 'Load which party?' +strSAVEFILE str 'Save party as...' + +typeLIST hex 01 + hex 5d ; Game/Edu files +replyPTR ds 2 ; 0 good + ds 2 ; 2 fileType + ds 2 ; 4 auxFileType +namePATH + hex 05 ; 6 fileName +namePATH1 + asc 'Party' ; 7 fileName (16 normally) + ds 10 +loadPATH + ds 1 ; 22 fullPathname (string length) +loadPATH1 + ds 129 ; 23 fullPathname (128 normally) + +*---------------------------------------- +* GS/OS +*---------------------------------------- + +loadFILE + sta proOPEN+4 ; filename + sty proREAD+4 ; RAM pointer low + stx proREAD+6 ; RAM pointer high + +loadFILE1 + stz proERR + + jsl GSOS + dw $2010 + adrl proOPEN + bcs loadERR + + lda proOPEN+2 + sta proREAD+2 + sta proCLOSE+2 + + lda proEOF + sta proREAD+8 + lda proEOF+2 + sta proREAD+10 + + jsl GSOS + dw $2012 + adrl proREAD + bcs loadERR + +loadFILE2 + jsl GSOS + dw $2014 + adrl proCLOSE + + ldy proREAD+12 ; length read + ldx proREAD+14 + rts + +loadERR jsr loadFILE2 + ldy #0 + tyx + sec + rts + +*--- GS/OS data + +proERR + ds 2 + +*--- For the game party + +proCREATEGAME + dw 7 ; pcount + adrl pGAME ; pathname + dw $c3 ; access_code + dw $5d ; file_type + adrl $801b ; aux_type + ds 2 ; storage_type + ds 4 ; eof + ds 4 ; resource_eof + +proDESTROYGAME + dw 1 ; pcount + adrl pGAME ; pathname + +proOPENGAME + dw 2 + ds 2 + adrl pGAME + +proREADGAME + dw 4 ; 0 - pcount + ds 2 ; 2 - ref_num + adrl pGAME ; 4 - data_buffer + ds 4 ; 8 - request_count + ds 4 ; C - transfer_count + +proWRITEGAME + dw 5 ; 0 - pcount + ds 2 ; 2 - ref_num + adrl pGAME ; 4 - data_buffer (we are in same bank) + ds 4 ; 8 - request_count + ds 4 ; C - transfer_count + dw 1 ; cache_priority + +*--- For the game images + +proOPEN + dw 12 + ds 2 + adrl pIMAGE + ds 2 + ds 2 + ds 2 + ds 2 + ds 4 + ds 2 + ds 8 + ds 8 + ds 4 +proEOF ds 4 + +proREAD + dw 4 ; 0 - nb parms + ds 2 ; 2 - file id + ds 4 ; 4 - pointer + ds 4 ; 8 - length + ds 4 ; C - length read + +proCLOSE + dw 1 + ds 2 + +proQUIT + dw 2 ; pcount + ds 4 ; pathname + ds 2 ; flags + +proVERS + dw 1 ; pcount + ds 2 ; version + +*--- offset to image number is +10 + +pIMAGE strl '1/data/p00.lz4' +pICONS strl '1/data/icons.lz4' + +pGAME strl '0/ ' + +*---------------------------------------- +* LES AUTRES FICHIERS +*---------------------------------------- + + put dataen.asm + put roomen.asm + put midi.s + +*--- diff --git a/billpalmer/en/palmer_ResourceFork.bin b/billpalmer/en/palmer_ResourceFork.bin new file mode 100644 index 0000000..28f6def Binary files /dev/null and b/billpalmer/en/palmer_ResourceFork.bin differ diff --git a/billpalmer/en/roomen.asm b/billpalmer/en/roomen.asm new file mode 100644 index 0000000..cbb270f --- /dev/null +++ b/billpalmer/en/roomen.asm @@ -0,0 +1,1407 @@ +* +* Bill Palmer +* + +lessalles + da s00,s01,s02,s03,s04,s05,s06,s07,s08,s09 + da s10,s11,s12,s13,s14,s15,s16,s17,s18,s19 + da s20,s21,s22,s23,s24,s25,s26,s27,s28,s29 + da s30,s31,s32,s33,s34,s35,s36,s37,s38,s39 + da s40,s41,s42,s43,s44,s45,s46,s47,s48,s49 + da s50,s51,s52,s53,s54,s55,s56 + +*--- + +s00 + rts + +*--- + +s01 + lda instruction1 + cmp #main + bne s0199 + lda zone_cliquee + cmp #1 + bne s012 + + ldx #laitue + lda #s1_str1 + jmp apparition_objet + +s012 cmp #2 + bne s013 + + ldx #journal + lda #s1_str2 + jmp apparition_objet + +s013 cmp #4 + bne s0199 + + lda #2 + sta salle + +s0199 rts + +s1_str1 str 'Bill r'8e'cup'8f're une laitue pas tr'8f's fra'94'che' +s1_str2 str 'Tiens, le journal du jour est arriv'8e + +*--- + +s02 + lda instruction1 + cmp #main + bne s0299 + lda zone_cliquee + cmp #3 + bne s022 + + ldx #livre + lda #s2_str3 + jmp apparition_objet + +s022 cmp #2 + bne s0299 + + ldx #carte_de_credit + lda #s2_str2 + jmp apparition_objet + +s0299 rts + +s2_str3 str 'Bill remarque un ancien manuel' +s2_str2 str 'Saperlipopette ! La carte de cr'8e'dit que Bill pensait avoir perdue '88' tout jamais' + +*--- + +s03 + lda instruction1 + cmp #main + bne s0399 + lda zone_cliquee + cmp #1 + bne s032 + + ldx #machette + lda #strVIDE + jsr apparition_objet + ldx #souris_mecanique + lda #strVIDE + jsr apparition_objet + ldx #carte_didentite + lda #strVIDE + jsr apparition_objet + ldx #boite_de_conserve + lda #strVIDE + jsr apparition_objet + ldx #ouvre_boite + lda #strVIDE + jmp apparition_objet + +s032 cmp #2 + bne s0399 + + ldx #passeport + lda #s3_str2 + jmp apparition_objet + +s0399 rts + +s3_str2 str 'Fichtre ! Le passeport que Bill dans son inorganisation toute h'8e'ro'95'que avait '8e'gar'8e' apr'8f's un s'8e'jour en Afrique du sud...' + +*--- + +s04 + lda instruction1 + cmp #main + bne s0499 + lda zone_cliquee + cmp #3 + bne s0499 + + lda #5 + sta salle +s0499 rts + +*--- + +s05 + lda instruction1 + cmp #oeil + bne s0599 + lda zone_cliquee + cmp #1 + bne s0599 + + ldx #bombe + lda #s5_str1 + jmp apparition_objet + +s0599 rts + +s5_str1 str 'Explorant d'8e'licatement les recoins du moteur du v'8e'hicule, Bill remarque un curieux engin visiblement plac'8e' l'88' '88' des fins hostiles' + +*--- + +s06 + lda instruction1 + cmp #main + bne s0699 + lda zone_cliquee + cmp #1 + bne s063 + + ldx #bombe + lda objet-1,x + and #$ff + cmp #objet_inexistant + bne s062 + + lda #s6_str1 + jmp fin + +s062 lda #s6_str2 + jsr ecriture + lda #7 + sta salle + rts + +s063 cmp #3 + bne s0699 + + ldx #briquet + lda #s6_str3 + jmp apparition_objet + +s0699 rts + +s6_str1 str 'Baaaaooooouuuuummmmm ! ! ! ! ! ! Sans que Bill ait eu le temps de r'8e'agir, la voiture explose en mille morceaux. Echouer si pr'8f's du but...' +s6_str2 str 'La voiture d'8e'marre...' +s6_str3 str 'Un briquet tra'94'nait par l'88'...' +*--- + +s07 +s0799 rts + +*--- + +s08 +s0899 rts + +*--- + +s09 + lda instruction1 + cmp #main + bne s0999 + lda instruction2 + cmp #carte_de_credit + bne s0901 + + ldx #billet_davion + lda #s9_str1 + jmp apparition_objet + +s0901 cmp #billet_davion + bne s0999 + + lda #10 + sta salle + +s0999 rts + +s9_str1 str 'L'27'h'99'tesse donne '88' Bill son billet pour le N'27'Gwanal'8e'l'8e + +*--- + +s10 + lda instruction1 + cmp #droite + bne s1001 + + lda #s10_str1 + jmp ecriture + +s1001 cmp #main + bne s1099 + lda instruction2 + cmp #passeport + bne s1099 + + lda #11 + sta salle + lda #s10_str2 + jmp ecriture + +s1099 rts + +s10_str1 str 'On ne passe pas !' +s10_str2 str 'C'27'est en r'8f'gle, vous pouvez passer !' + +*--- + +s11 +s1199 rts + +*--- + +s12 +s1299 rts + +*--- + +s13 + lda instruction1 + cmp #main + bne s1399 + lda zone_cliquee + cmp #3 + bne s1399 + + lda #s13_str3 + jmp fin + +s1399 rts + +s13_str3 str 'Les pierres peuvent cacher beaucoup d'27'animaux. Et les serpents sont souvent tr'8f's dangereux...' + +*--- + +s14 +s1499 rts + +*--- + +s15 + lda instruction1 + cmp #main + bne s1599 + lda instruction2 + cmp #carte_de_credit + bne s1501 + + lda #s15_str1 + jmp ecriture + +s1501 cmp #livre + bne s1502 + + ldx #livre + lda #s15_str2 + jsr disparition_objet + sep #$20 + ldx #livre_donne + lda #TRUE + sta indicateur-1,x + rep #$20 + +s1502 lda instruction2 + cmp #laitue + bne s1599 + + ldx #livre_donne + lda indicateur-1,x + and #$ff + beq s1503 ; FALSE + + lda #17 + sta salle + + ldx #laitue + lda #s15_str3 + jmp disparition_objet + +s1503 + lda #s15_str4 + jmp ecriture + +s1599 rts + +s15_str1 str 'Qu'27'ice que c'27'est qu'278d'a ? T'27'y payes pas comme '8d'a...' +s15_str2 str 'T'27'y es un vrai z'27'aventurier alors ! ! J'27'y t'27'y garde le livre et t'27'y pars avec le dromadaire !' +s15_str3 str 'Le dromadaire avale la laitue et se baisse pour que Bill parte sur son dos' +s15_str4 str 'L'27'homme refuse que Bill nourrisse les dromadaires' + +*--- + +s16 + sep #$20 + ldx #bill_desert + lda indicateur-1,x + cmp #-1 + beq s1601 + inc indicateur-1,x +s1601 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #4 + bne s1699 + + lda #s16_str1 + jmp fin +s1699 rts + +s16_str1 str 'Sans moyen de transport s'9e'r et rapide, Bill meurt bient'99't '8e'puis'8e + +*--- Was protection check + +s17 +s1799 rts + +*--- + +s18 +s1899 rts + +*--- + +s19 + lda instruction1 + cmp #main + bne s1999 + lda instruction2 + cmp #carte_de_credit + bne s1902 + + lda #s19_str1 + jmp ecriture + +s1902 cmp #machette + bne s1999 + + lda #s19_str2 + jmp ecriture + +s1999 rts + +s19_str1 str 'Les cartes de cr'8e'dit ne sont pas accept'8e'es. Bill va devoir prendre le train sans billet' +s19_str2 str 'On ne joue pas les fiers-'88'-bras dans ma gare. L'27'homme se rendort...' + +*--- + +s20 + lda instruction1 + cmp #main + bne s2099 + lda zone_cliquee + cmp #4 + bne s2001 + + lda #s20_str4 + jsr ecriture + + sep #$20 + ldx #train_arrete + lda #TRUE + sta indicateur-1,x + rep #$20 + +s2001 lda zone_cliquee + cmp #5 + bne s2003 + + ldx #train_arrete + lda indicateur-1,x + and #$ff + beq s2002 + + lda #22 + sta salle + bra s2003 + +s2002 lda #23 + sta salle + +s2003 sep #$20 + ldx #controleur_passe + lda indicateur-1,x + cmp #-1 + beq s2004 + inc indicateur-1,x +s2004 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #8 + bcc s2099 + + lda #s20_str3 + jmp fin + +s2099 rts + +s20_str4 str 'Le train est arr'90't'8e +s20_str3 str 'Le contr'99'leur vient et arr'90'te Bill qui n'27'a pas de billet' + +*--- + +s21 +s2199 rts + +*--- + +s22 +s2299 rts + +*--- + +s23 + lda instruction1 + cmp #main + bne s2399 + lda zone_cliquee + cmp #1 + bne s2399 + + lda #s23_str1 + jmp fin + +s2399 rts + +s23_str1 str 'La pierre cachait un scorpion. Et les scorpions d'8e'testent '90'tre d'8e'rang'8e's... Mauvais plan' + +*--- + +s24 +s2499 rts + +*--- + +s25 + sep #$20 + ldx #elephant_arrive + lda indicateur-1,x + cmp #-1 + beq s2500 + inc indicateur-1,x +s2500 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #6 + bcc s2501 + + lda #s25_str1 + jmp fin + +s2501 lda instruction1 + cmp #main + bne s2599 + lda instruction2 + cmp #souris_mecanique + bne s2599 + + lda #s25_str2 + jsr ecriture + + sep #$20 + ldx #elephant_enfuis + lda #TRUE + sta indicateur-1,x + rep #$20 + + lda #26 + sta salle + +s2599 rts + +s25_str1 str 'Bill est lamin'8e', '8e'crabouill'8e' et atomis'8e' par le mammif'8f're en d'8e'lire' +s25_str2 str 'Effray'8e' par l'27'engin, l'27'animal prend ses jambes '88' son cou et s'27'enfuit' + +*--- + +s26 + lda instruction1 + cmp #main + bne s2699 + lda instruction2 + cmp #machette + bne s2699 + + ldx #brindilles + lda #s26_str1 + jmp apparition_objet + +s2699 rts + +s26_str1 str 'Bill arrive '88' couper quelques brindilles' + +*--- + +s27 + lda instruction1 + cmp #main + bne s2799 + lda zone_cliquee + cmp #1 + bne s2701 + + lda #30 + sta salle + +s2701 cmp #3 + bne s2799 + + ldx #photo + lda #s27_str3 + jmp apparition_objet + +s2799 rts + +s27_str3 str 'En le fouillant, Bill d'8e'couvre une photographie' + +*--- + +s28 + lda instruction1 + cmp #main + bne s2899 + lda zone_cliquee + cmp #1 + bne s2899 + + lda #s28_str1 + jsr ecriture + + lda #29 + sta salle + +s2899 rts + +s28_str1 str 'Bill commence '88' grimper la colline' + +*--- + +s29 + sep #$20 + ldx #mechant + lda indicateur-1,x + cmp #-1 + beq s2901 + inc indicateur-1,x +s2901 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #4 + bcc s2999 + + lda #s29_str1 + jmp fin +s2999 rts + +s29_str1 str 'L'27'ignoble individu '8e'trangle Bill avec son couteau' + +*--- + +s30 + lda instruction1 + cmp #main + bne s3099 + lda zone_cliquee + cmp #2 + bne s3099 + + lda #s30_str2 + jmp fin + +s3099 rts + +s30_str2 str 'Manque de chance, la touffe d'27'herbe se d'8e'tache de la roche et Bill tombe dans le vide' + +*--- + +s31 +s3199 rts + +*--- + +s32 + sep #$20 + ldx #mechant + lda indicateur-1,x + cmp #-1 + beq s3200 + inc indicateur-1,x +s3200 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #8 + bcc s3201 + + lda #s32_str8 + jmp fin + +s3201 lda instruction1 + cmp #main + bne s3299 + lda zone_cliquee + cmp #1 + bne s3299 + + lda #s32_str1 + jsr ecriture + + sep #$20 + ldx #mechant_assome + lda #TRUE + sta indicateur-1,x + rep #$20 + + lda #31 + sta salle +s3299 rts + +s32_str8 str 'L'27'homme du Professeur rattrape Bill. C'27'en est fini...' +s32_str1 str 'Bill renverse la pierre dans le vide. Elle assomme le sc'8e'l'8e'rat qui le suivait' + +*--- + +s33 + ldx #photo_montree + lda indicateur-1,x + and #$ff + bne s3301 + + sep #$20 + ldx #camera_mort + lda indicateur-1,x + cmp #-1 + beq s3300 + inc indicateur-1,x +s3300 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #8 + bcc s3301 + + lda #s33_str1 + jmp fin + +s3301 lda instruction1 + cmp #main + bne s3399 + lda instruction2 + cmp #photo + bne s3399 + + lda #s33_str2 + jsr ecriture + + sep #$20 + ldx #photo_montree + lda #TRUE + sta indicateur-1,x + rep #$20 + +s3399 rts + +s33_str1 str 'Soudain, un rayon pulv'8e'rise Bill (gniark gniark !)' +s33_str2 str 'Bill montre la photo '88' la cam'8e'ra qui semble r'8e'agir' + +*--- + +s34 + lda instruction1 + cmp #main + bne s3499 + lda instruction2 + cmp #briquet + bne s3402 + + ldx #brindilles + lda objet-1,x + and #$ff +* cmp #34 ; LOGO - original code + cmp #objet_pris + bne s3401 + + ldx #brindilles + lda #s34_str2 + jsr disparition_objet + + sep #$20 + ldx #feu_allume + lda #TRUE + sta indicateur-1,x + rep #$20 + + lda #35 + sta salle + rts + +s3401 lda #s34_str2 + jmp ecriture + +s3402 cmp #brindilles + bne s3499 + + lda #s34_str3 + jmp ecriture + +s3499 rts + +s34_str1 str 'Bill allume un feu avec les brindilles...' +s34_str2 str 'Il n'27'y a rien '88' br'9e'ler dans la pi'8f'ce' +s34_str3 str 'Et pourquoi ne pas les faire br'9e'ler ?' +*--- + +s35 +s3599 rts + +*--- + +s36 + lda instruction1 + cmp #main + bne s3699 + lda zone_cliquee + cmp #1 + bne s3699 + + ldx #professeur_parti + lda indicateur-1,x + and #$ff + cmp #4 + bcs s3601 + + lda #s36_str1 + jmp fin + +s3601 lda #38 + sta salle + lda #s36_str2 + jmp ecriture + +s3699 rts + +s36_str1 str 'Avant que Bill ait pu p'8e'n'8e'trer dans le laboratoire du Professeur X., celui-ci saisit une mitraillette et le transforme en passoire' +s36_str2 str 'Ouf... La porte s'27'ouvre !' + +*--- + +s37 +s3799 rts + +*--- + +s38 + lda instruction1 + cmp #main + bne s3803 + lda zone_cliquee + cmp #1 + bne s3801 + + ldx #appeau + lda #s38_str1 + jmp apparition_objet + +s3801 cmp #2 + bne s3802 + + ldx #mitraillette + lda #s38_str2 + jmp apparition_objet + +s3802 cmp #3 + bne s3803 + + lda #s38_str3 + jmp fin + +s3803 lda instruction1 + cmp #bouche + bne s3899 + lda zone_cliquee + cmp #3 + bne s3899 + + lda #s38_str4 + jmp fin + +s3899 rts + +s38_str1 str 'Bill trouve un appeau...' +s38_str2 str 'Ca alors ! Une mitraillette !' +s38_str3 str 'Bill aurait d'9e' savoir qu'27'il vaut mieux manipuler des produits toxiques avec des gants...' +s38_str4 str 'Bon sang ! C'278e'tait du poison ! Bill s'278e'trangle et agonise en quelques minutes' + +*--- + +s39 + lda instruction1 + cmp #oeil + bne s3999 + lda zone_cliquee + cmp #2 + bne s3999 + + sep #$20 + ldx #professeur_parti + lda indicateur-1,x + cmp #-1 + beq s3901 + inc indicateur-1,x +s3901 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #3+1 + bcc s3999 + + lda #s39_str1 + jmp ecriture + +s3999 rts + +s39_str1 str 'Le Professeur reste pour inspecter ses hommes !' + +*--- + +s40 + lda instruction1 + cmp #bouche + bne s4001 + lda instruction2 + cmp #appeau + bne s4001 + + lda #41 + sta salle + lda #s40_str1 + jsr ecriture + +s4001 lda instruction1 + cmp #oeil + bne s4099 + lda zone_cliquee + cmp #2 + bne s4099 + + ldx #feu_allume + lda indicateur-1,x + and #$ff + beq s4002 + + lda #s40_str2 + jmp ecriture + +s4002 lda #s40_str3 + jmp ecriture + +s4099 rts + +s40_str1 str 'Attir'8e' par l'27'appeau, l'27'oiseau vient se poser...' +s40_str2 str 'De la fum'8e'e chaude s'27'en '8e'chappe' +s40_str3 str 'On dirait le conduit d'27'une chemin'8e'e' + +*--- + +s41 + ldx #feu_allume + lda indicateur-1,x + and #$ff + bne s4101 + + lda #40 + sta salle + lda #s41_str1 + jmp ecriture + +s4101 lda #42 + sta salle + lda #s41_str2 + jmp ecriture + +s4199 rts + +s41_str1 str 'L'27'oiseau repart aussit'99't' +s41_str2 str 'L'27'oiseau bouche le conduit de la chemin'8e'e, aussit'99't les hommes du Professeur sortent asphyxi'8e's...' + +*--- + +s42 + sep #$20 + ldx #homme_attaque + lda indicateur-1,x + cmp #-1 + beq s4200 + inc indicateur-1,x +s4200 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #8 + bcc s4201 + + lda #s42_str1 + jmp fin + +s4201 lda instruction1 + cmp #main + bne s4299 + lda instruction2 + cmp #mitraillette + bne s4202 + + lda #43 + sta salle + lda #s42_str2 + jsr ecriture + jsr chargement_image + lda #s42_str3 + jsr ecriture + + lda #3 + jsr nowWAIT + + lda #44 + sta salle + rts + +s4202 cmp #machette + bne s4299 + + lda #s42_str4 + jmp fin + +s4299 rts + +s42_str1 str 'Les hommes du Professeur '8e'tripent Bill' +s42_str2 str 'Bill d'8e'gaine sa mitraillette...' +s42_str3 str 'Et massacre ses agresseurs...' +s42_str4 str 'Bill engage le combat '88' la machette mais il succombe sous le nombre' + +*--- Check protection + +s43 +s4399 rts + +*--- + +s44 +s4499 rts + +*--- + +s45 + lda instruction1 + cmp #main + bne s4599 + lda zone_cliquee + cmp #2 + bne s4599 + + lda #46 + sta salle + lda #s45_str2 + jsr ecriture + jsr chargement_image + lda #s45_str3 + jsr ecriture + + lda #48 + sta salle + + lda #3 + jsr nowWAIT + + ldx #1 +]lp phx + lda #strVIDE + jsr disparition_objet + plx + inx + cpx #nombre_objets + bcc ]lp + +s4599 rts + +s45_str2 str 'Bill tire sur le drapeau. Soudain...' +s45_str3 str 'Une trappe s'27'ouvre sous ses pieds. Bill est captur'8e' par les hommes du Professeur X.' + +*--- + +s46 +s4699 rts + +*--- + +s47 +s4799 rts + +*--- + +s48 + sep #$20 + ldx #canon + lda indicateur-1,x + cmp #-1 + beq s4600 + inc indicateur-1,x +s4600 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #6 + bcc s4801 + + lda #s48_str6 + jmp fin + +s4801 lda instruction1 + cmp #main + bne s4899 + lda zone_cliquee + cmp #1 + bne s4899 + + lda #s48_str1 + jsr ecriture + + lda #49 + sta salle + +s4899 rts + +s48_str6 str 'Le canon r'8e'duit Bill en miettes. Le Professeur X. devient ma'94'tre du monde' +s48_str1 str 'Bill arrive '88' se lib'8e'rer discr'8f'tement et '88' '8e'teindre la m'8f'che' + +*--- + +s49 + lda instruction1 + cmp #main + bne s4999 + lda zone_cliquee + cmp #2 + beq s4901 + cmp #3 + bne s4902 + +s4901 lda #s49_str2 + jmp fin + +s4902 cmp #1 + bne s4999 + + lda #s49_str1 + jsr ecriture + lda #50 + sta salle + +s4999 rts + +s49_str2 str 'Bill commet une maladresse et se fait mortellement rep'8e'rer par le lieutenant du Professeur...' +s49_str1 str 'Bill baisse l'27'interrupteur, plongeant la pi'8f'ce enti'8f're dans l'27'obscurit'8e + +*--- + +s50 + lda instruction1 + cmp #main + bne s5099 + lda zone_cliquee + beq s5099 + + lda #s50_str1 + jmp fin + +s5099 rts + +s50_str1 str 'Plut'99't que de s'278e'clipser discr'8f'tement, Bill a cru bon de manifester sa pr'8e'sence...' + +*--- + +s51 + lda instruction1 + cmp #main + bne s5102 + lda zone_cliquee + cmp #2 + bne s5101 + + lda #s51_str2 + jmp fin + +s5101 cmp #3 + bne s5102 + + sep #$20 + ldx #destruction_base + lda #TRUE + sta indicateur-1,x + rep #$20 + +s5102 ldx #destruction_base + lda indicateur-1,x + and #$ff + beq s5103 + + sep #$20 + ldx #compte_a_rebours + lda indicateur-1,x + cmp #-1 + beq s5100 + inc indicateur-1,x +s5100 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #6 + bcc s5103 + + lda #s51_str2 + jmp fin + +s5103 lda instruction1 + cmp #main + bne s5105 + lda zone_cliquee + cmp #4 + bne s5104 + + lda #s51_str4 + jsr ecriture + lda #54 + sta salle + +s5104 cmp #6 + bne s5105 + + ldx #revolver + lda #s51_str6 + jmp apparition_objet + +s5105 lda instruction1 + cmp #bouche + bne s5199 + lda zone_cliquee + cmp #5 + bne s5199 + + lda #52 + sta salle + +s5199 rts + +s51_str2 str 'La base et tout ce qu'27'elle contenait explose. Trop exp'8e'ditif...' +s51_str4 str 'Bill s'278e'jecte...' +s51_str6 str 'Voil'88' qui pourra '90'tre utile...' + +*--- + +s52 + lda instruction1 + cmp #main + bne s5201 + lda instruction2 + cmp #revolver + bne s5201 + + lda #53 + sta salle + + ldx #fetiche + lda #s52_str1 + jsr apparition_objet + +s5201 ldx #lieutenant + sep #$20 + lda indicateur-1,x + cmp #-1 + beq s5200 + inc indicateur-1,x +s5200 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #4 + bcc s5202 + + lda #s52_str2 + jmp fin + +s5202 lda instruction1 + cmp #main + bne s5204 + lda zone_cliquee + cmp #2 + bne s5203 + + lda #s52_str3 + jmp fin + +s5203 cmp #3 + bne s5204 + + sep #$20 + ldx #destruction_base + lda #TRUE + sta indicateur-1,x + rep #$20 + +s5204 ldx #destruction_base + lda indicateur-1,x + and #$ff + beq s5205 + + sep #$20 + ldx #compte_a_rebours + lda indicateur-1,x + cmp #-1 + beq s5252 + inc indicateur-1,x +s5252 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #6 + bcc s5205 + + lda #s52_str3 + jmp fin + +s5205 lda instruction1 + cmp #main + bne s5299 + lda zone_cliquee + cmp #4 + bne s5206 + + lda #s52_str4 + jsr ecriture + lda #54 + sta salle + +s5206 cmp #6 + bne s5299 + + ldx #revolver + lda #s52_str6 + jmp apparition_objet + +s5299 rts + +s52_str1 str 'Bill d'8e'gaine rapidement et tient en respect les deux hommes. Le Professeur doit l'89'cher le F'8e'tiche' +s52_str2 str 'L'27'homme de main du Professeur supprime froidement Bill' +s52_str3 str 'La base et tout ce qu'27'elle contenait explose. Trop exp'8e'ditif...' +s52_str4 str 'Bill s'278e'jecte...' +s52_str6 str 'Voil'88' qui pourra '90'tre utile...' + +*--- + +s53 + lda instruction1 + cmp #main + bne s5302 + lda zone_cliquee + cmp #2 + bne s5301 + + lda #s53_str2 + jmp fin + +s5301 cmp #3 + bne s5302 + + sep #$20 + ldx #destruction_base + lda #TRUE + sta indicateur-1,x + rep #$20 + +s5302 ldx #destruction_base + lda indicateur-1,x + and #$ff + beq s5303 + + sep #$20 + ldx #compte_a_rebours + lda indicateur-1,x + cmp #-1 + beq s5300 + inc indicateur-1,x +s5300 rep #$20 + + lda indicateur-1,x + and #$ff + cmp #6 + bcc s5303 + + lda #s53_str2 + jmp fin + +s5303 lda instruction1 + cmp #main + bne s5399 + lda zone_cliquee + cmp #4 + bne s5399 + + lda #s53_str4 + jsr ecriture + lda #54 + sta salle +s5399 rts + +s53_str2 str 'La base et tout ce qu'27'elle contenait explose. Trop exp'8E'ditif...' +s53_str4 str 'Bill s'278e'jecte...' + +*--- + +s54 + lda #55 + sta salle + jsr chargement_image + + lda #3 + jsr nowWAIT + + ldx #destruction_base + lda indicateur-1,x + and #$ff + bne s5401 + + lda #s54_str1 + jmp fin + +s5401 ldx #fetiche + lda objet-1,x + and #$ff + cmp #objet_pris + beq s5402 + + lda #s54_str2 + jmp fin + +s5402 lda #56 + sta salle + jsr chargement_image + + lda #3 + jsr nowWAIT + + lda #s54_str3 ; on a gagné ! + jmp fin + +s5499 rts + +s54_str1 str 'A sa chute, Bill est de nouveau captur'8e'. Il ne peut plus contrecarrer les plans du Professeur...' +s54_str2 str 'La base du Professeur X. est r'8e'duite en miettes. H'8e'las, Bill n'27'a pas r'8e'ussi '88' r'8e'cup'8e'rer le F'8e'tiche' +s54_str3 str 'FELICITATIONS ! ! Bill a r'8e'cup'8e'r'8e' le F'8e'tiche et d'8e'truit la base du Professeur X. Gageons que celui-ci prendra sa revanche...' + +*--- + +s55 +s5599 rts + +*--- + +s56 +s5699 rts \ No newline at end of file diff --git a/billpalmer/fr/Bill Palmer Master FR.2mg b/billpalmer/fr/Bill Palmer Master FR.2mg new file mode 100644 index 0000000..578fce6 Binary files /dev/null and b/billpalmer/fr/Bill Palmer Master FR.2mg differ diff --git a/billpalmer/fr/Notice b/billpalmer/fr/Notice new file mode 100644 index 0000000..061d2f0 --- /dev/null +++ b/billpalmer/fr/Notice @@ -0,0 +1 @@ +Bill Palmer Notice d'utilisation LANCEMENT DU JEU Double cliquez sur l'ic™ne Bill pour voir la page de titre et entendre la superbe musique de prŽsentation, soit sur l'ic™ne Palmer pour jouer. PROTECTION Ben, il n'y en a pas dans la version Apple IIgs. LE JEU Il n'y a qu'une seule disquette, le jeu peut ainsi commencer. Vous contr™lez l'ensemble des actions de Bill Palmer ˆ la souris. LES DEPLACEMENTS Quand cela est possible, les quatre flches permettent ˆ Bill de se dŽplacer respectivement en avant, en arrire, ˆ gauche et ˆ droite. LES ACTIONS PARTICULIERES Les trois ic™nes main, oeil et bouche reprŽsentent les actions ŽlŽmentaires. Par exemple pour regarder un personnage, cliquez sur l'oeil pour qu'il s'inverse puis sur la partie de l'image o se situe ce personnage. Le programme vous donnera peut tre un enseignement ou une indication. Pour ouvrir une porte, cliquez sur la main puis sur cette porte, etc. LES OBJETS Sous l'image viendront se placer des objets que Bill pourra emporter avec lui. Un objet reprŽsentŽ sur fond blanc est prŽsent prs de Bill, un objet reprŽsentŽ sur fond noir est dans le sac de Bill. Pour prendre et laisser un objet, cliquez simplement dessus en vŽrifiant qu'aucune ic™ne oeil, main ou bouche ne soit allumŽe. Si c'Žtait le cas, cliquez de nouveau dessus pour qu'elle s'Žteigne. Pour regarder en dŽtail un objet, cliquez sur l'oeil puis sur cet objet. Le programme vous donnera une indication ˆ son sujet. Pour utiliser un objet, cliquez sur la main puis sur cet objet. Vous ne pouvez regarder ou utiliser que les objets que Bill porte effectivement sur lui. SAUVEGARDE ET LECTURE DE L'ETAT DU JEU Les symboles disquettes sauvent et relisent l'Žtat du jeu sur la disquette et permettent de reprendre une partie lˆ o vous l'aviez laissŽe. DIVERS Toutes les actions ne peuvent tre prŽvues. C'est pourquoi il arrivera que le programme ne donne aucune prŽcision ˆ la suite, par exemple, d'une demande d'utilisation d'un objet. Cela veut simplement dire qu'il n'y a rien de spŽcial ˆ propos de l'utilisation de cet objet. RACCOURCIS CLAVIER Nous avons intŽgrŽ des raccourcis clavier dans la version Apple IIgs : - pomme-ouverte-? pour afficher le copyright, - pomme-ouverte-D pour recommencer une partie, - pomme-ouverte-L pour charger une partie, - pomme-ouverte-S pour enregistrer une partie en cours, - pomme-ouverte-Z pour dŽmarrer ou arrter la musique (parce que dans la version Apple IIgs, on entend la jolie musique Adventure Time - I'm just your problem rŽcupŽrŽe de bitmidi.com), - M, O et B pour activer la Main, l'Oeil ou la Bouche, - les flches de direction pour faciliter les dŽplacements, et c'est probablement tout... AMUSEZ-VOUS BIEN ! ! REMERCIEMENTS Nous remercions Franois Coulon qui a acceptŽ que nous portions Bill Palmer sur Apple IIgs. Nous remercions Žgalement Hugo Labrande qui nous a mis en relation avec Franois Coulon. UN DISCLAIMER Un jeu de Franois Coulon, dessins de Dominique Petter. Version Apple IIgs par Brutal Deluxe Software : Antoine Vignau & Olivier Zardini Pour plus d'informations : francoiscoulon.com brutaldeluxe.fr \ No newline at end of file diff --git a/billpalmer/fr/_FileInformation.txt b/billpalmer/fr/_FileInformation.txt new file mode 100644 index 0000000..e69de29 diff --git a/billpalmer/fr/bill b/billpalmer/fr/bill new file mode 100644 index 0000000..a7dd438 Binary files /dev/null and b/billpalmer/fr/bill differ diff --git a/billpalmer/fr/bill_ResourceFork.bin b/billpalmer/fr/bill_ResourceFork.bin new file mode 100644 index 0000000..58d95d6 Binary files /dev/null and b/billpalmer/fr/bill_ResourceFork.bin differ diff --git a/billpalmer/fr/palmer b/billpalmer/fr/palmer new file mode 100644 index 0000000..a06af7c Binary files /dev/null and b/billpalmer/fr/palmer differ diff --git a/billpalmer/fr/palmer_ResourceFork.bin b/billpalmer/fr/palmer_ResourceFork.bin new file mode 100644 index 0000000..2cd55c2 Binary files /dev/null and b/billpalmer/fr/palmer_ResourceFork.bin differ