diff --git a/lemanoirdudocteurgenius/apple2/ampersand b/lemanoirdudocteurgenius/apple2/ampersand index 0549171..c054a66 100644 Binary files a/lemanoirdudocteurgenius/apple2/ampersand and b/lemanoirdudocteurgenius/apple2/ampersand differ diff --git a/lemanoirdudocteurgenius/apple2/ampersand.s b/lemanoirdudocteurgenius/apple2/ampersand.s index 06fa78f..de4d019 100644 --- a/lemanoirdudocteurgenius/apple2/ampersand.s +++ b/lemanoirdudocteurgenius/apple2/ampersand.s @@ -59,6 +59,7 @@ WAIT = $fca8 ; WAIT routine * DRAW D * RESTORE R to a line number * GOSUB G to an expression +* GOTO T to an expression * * On ne fait pas : @@ -119,7 +120,7 @@ doVECTOR txa pha rts -myCMDS asc 'SMDCIPHWERG' +myCMDS asc 'SMDCIPHWERGT' myADRS da doS-1 da doM-1 @@ -132,6 +133,7 @@ myADRS da doS-1 da doE-1 da doR-1 da doG-1 + da doT-1 *----------------------------------- Data @@ -364,7 +366,7 @@ dx dex stx DATPTR rts -*----------------------------------- GOSUB address +*----------------------------------- GOSUB expression doG lda #3 ; make sure there's enough stack @@ -387,6 +389,14 @@ doG jsr GOTO+3 ; point at chosen statement jmp NEWSTT ; start running it +*----------------------------------- GOTO expression + +doT + jsr CHRGET ; get next token + jsr FRMNUM ; parse numeric expr + jsr GETADR ; convert it to int + jmp GOTO+3 ; point at chosen statement + *--- End of code asc "(c) 2023, Antoine Vignau & Olivier Zardini" diff --git a/lemanoirdudocteurgenius/apple2/ampersand_Output.txt b/lemanoirdudocteurgenius/apple2/ampersand_Output.txt index 77c8765..940726b 100644 --- a/lemanoirdudocteurgenius/apple2/ampersand_Output.txt +++ b/lemanoirdudocteurgenius/apple2/ampersand_Output.txt @@ -62,86 +62,88 @@ 59 | 1 ampersand.s 59 | Comment | 11 | | 0 | 00/1800 | * DRAW D 60 | 1 ampersand.s 60 | Comment | 11 | | 0 | 00/1800 | * RESTORE R to a line number 61 | 1 ampersand.s 61 | Comment | 11 | | 0 | 00/1800 | * GOSUB G to an expression - 62 | 1 ampersand.s 62 | Empty | 11 | | 0 | 00/1800 | - 63 | 1 ampersand.s 63 | Comment | 11 | | 0 | 00/1800 | * - 64 | 1 ampersand.s 64 | Comment | 11 | | 0 | 00/1800 | * On ne fait pas : - 65 | 1 ampersand.s 65 | Comment | 11 | | 0 | 00/1800 | * CIRCLE C - 66 | 1 ampersand.s 66 | Comment | 11 | | 0 | 00/1800 | * EXPLODE E - 67 | 1 ampersand.s 67 | Comment | 11 | | 0 | 00/1800 | * - 68 | 1 ampersand.s 68 | Comment | 11 | | 0 | 00/1800 | * On des/installe par CALL 6144 - 69 | 1 ampersand.s 69 | Empty | 11 | | 0 | 00/1800 | - 70 | 1 ampersand.s 70 | Comment | 11 | | 0 | 00/1800 | *----------------------------------- - 71 | 1 ampersand.s 71 | Empty | 11 | | 0 | 00/1800 | - 72 | 1 ampersand.s 72 | Code | 11 | | 2 | 00/1800 : A9 00 | myENTRY lda #0 - 73 | 1 ampersand.s 73 | Code | 11 | | 2 | 00/1802 : D0 25 | bne doUNINSTALL - 74 | 1 ampersand.s 74 | Empty | 11 | | 0 | 00/1804 | - 75 | 1 ampersand.s 75 | Code | 11 | | 3 | 00/1804 : EE 01 18 | inc myENTRY+1 ; on dit qu'on installe - 76 | 1 ampersand.s 76 | Empty | 11 | | 0 | 00/1807 | - 77 | 1 ampersand.s 77 | Code | 11 | | 3 | 00/1807 : AD F5 03 | lda {$3f5} ; on sauve - 78 | 1 ampersand.s 78 | Code | 11 | | 3 | 00/180A : 8D 3F 18 | sta myPTR - 79 | 1 ampersand.s 79 | Code | 11 | | 3 | 00/180D : AD F6 03 | lda {$3f5}+1 - 80 | 1 ampersand.s 80 | Code | 11 | | 3 | 00/1810 : 8D 40 18 | sta myPTR+1 - 81 | 1 ampersand.s 81 | Code | 11 | | 3 | 00/1813 : AD F7 03 | lda {$3f5}+2 - 82 | 1 ampersand.s 82 | Code | 11 | | 3 | 00/1816 : 8D 41 18 | sta myPTR+2 - 83 | 1 ampersand.s 83 | Empty | 11 | | 0 | 00/1819 | - 84 | 1 ampersand.s 84 | Code | 11 | | 2 | 00/1819 : A9 4C | lda #$4c ; on installe le vecteur - 85 | 1 ampersand.s 85 | Code | 11 | | 3 | 00/181B : 8D F5 03 | sta {$3f5} - 86 | 1 ampersand.s 86 | Code | 11 | | 2 | 00/181E : A9 42 | lda #myVECTOR - 89 | 1 ampersand.s 89 | Code | 11 | | 3 | 00/1825 : 8D F7 03 | sta {$3f5}+2 - 90 | 1 ampersand.s 90 | Code | 11 | | 1 | 00/1828 : 60 | rts - 91 | 1 ampersand.s 91 | Empty | 11 | | 0 | 00/1829 | - 92 | 1 ampersand.s 92 | Code | 11 | | 3 | 00/1829 : CE 01 18 | doUNINSTALL dec myENTRY+1 - 93 | 1 ampersand.s 93 | Empty | 11 | | 0 | 00/182C | - 94 | 1 ampersand.s 94 | Code | 11 | | 3 | 00/182C : AD 3F 18 | lda myPTR - 95 | 1 ampersand.s 95 | Code | 11 | | 3 | 00/182F : 8D F5 03 | sta {$3f5} - 96 | 1 ampersand.s 96 | Code | 11 | | 3 | 00/1832 : AD 40 18 | lda myPTR+1 - 97 | 1 ampersand.s 97 | Code | 11 | | 3 | 00/1835 : 8D F6 03 | sta {$3f5}+1 - 98 | 1 ampersand.s 98 | Code | 11 | | 3 | 00/1838 : AD 41 18 | lda myPTR+2 - 99 | 1 ampersand.s 99 | Code | 11 | | 3 | 00/183B : 8D F7 03 | sta {$3f5}+2 - 100 | 1 ampersand.s 100 | Code | 11 | | 1 | 00/183E : 60 | rts - 101 | 1 ampersand.s 101 | Empty | 11 | | 0 | 00/183F | - 102 | 1 ampersand.s 102 | Data | 11 | | 3 | 00/183F : 00 00 00 | myPTR ds 3 ; 4C xx yy - 103 | 1 ampersand.s 103 | Empty | 11 | | 0 | 00/1842 | - 104 | 1 ampersand.s 104 | Comment | 11 | | 0 | 00/1842 | *----------------------------------- - 105 | 1 ampersand.s 105 | Empty | 11 | | 0 | 00/1842 | - 106 | 1 ampersand.s 106 | Code | 11 | | 2 | 00/1842 : A2 0A | myVECTOR ldx #myADRS-myCMDS-1 - 107 | 1 ampersand.s 107 | Code | 11 | | 3 | 00/1844 : DD 5B 18 | ozunid_1 cmp myCMDS,x - 108 | 1 ampersand.s 108 | Code | 11 | | 2 | 00/1847 : F0 06 | beq doVECTOR - 109 | 1 ampersand.s 109 | Code | 11 | | 1 | 00/1849 : CA | dex - 110 | 1 ampersand.s 110 | Code | 11 | | 2 | 00/184A : 10 F8 | bpl ozunid_1 - 111 | 1 ampersand.s 111 | Code | 11 | | 3 | 00/184C : 4C C9 DE | jmp {$dec9} - 112 | 1 ampersand.s 112 | Empty | 11 | | 0 | 00/184F | - 113 | 1 ampersand.s 113 | Code | 11 | | 1 | 00/184F : 8A | doVECTOR txa - 114 | 1 ampersand.s 114 | Code | 11 | | 1 | 00/1850 : 0A | asl - 115 | 1 ampersand.s 115 | Code | 11 | | 1 | 00/1851 : AA | tax - 116 | 1 ampersand.s 116 | Code | 11 | | 3 | 00/1852 : BD 67 18 | lda myADRS+1,x - 117 | 1 ampersand.s 117 | Code | 11 | | 1 | 00/1855 : 48 | pha - 118 | 1 ampersand.s 118 | Code | 11 | | 3 | 00/1856 : BD 66 18 | lda myADRS,x - 119 | 1 ampersand.s 119 | Code | 11 | | 1 | 00/1859 : 48 | pha - 120 | 1 ampersand.s 120 | Code | 11 | | 1 | 00/185A : 60 | rts - 121 | 1 ampersand.s 121 | Empty | 11 | | 0 | 00/185B | - 122 | 1 ampersand.s 122 | Data | 11 | | 11 | 00/185B : 53 4D 44 43 | myCMDS asc 'SMDCIPHWERG' + 62 | 1 ampersand.s 62 | Comment | 11 | | 0 | 00/1800 | * GOTO T to an expression + 63 | 1 ampersand.s 63 | Empty | 11 | | 0 | 00/1800 | + 64 | 1 ampersand.s 64 | Comment | 11 | | 0 | 00/1800 | * + 65 | 1 ampersand.s 65 | Comment | 11 | | 0 | 00/1800 | * On ne fait pas : + 66 | 1 ampersand.s 66 | Comment | 11 | | 0 | 00/1800 | * CIRCLE C + 67 | 1 ampersand.s 67 | Comment | 11 | | 0 | 00/1800 | * EXPLODE E + 68 | 1 ampersand.s 68 | Comment | 11 | | 0 | 00/1800 | * + 69 | 1 ampersand.s 69 | Comment | 11 | | 0 | 00/1800 | * On des/installe par CALL 6144 + 70 | 1 ampersand.s 70 | Empty | 11 | | 0 | 00/1800 | + 71 | 1 ampersand.s 71 | Comment | 11 | | 0 | 00/1800 | *----------------------------------- + 72 | 1 ampersand.s 72 | Empty | 11 | | 0 | 00/1800 | + 73 | 1 ampersand.s 73 | Code | 11 | | 2 | 00/1800 : A9 00 | myENTRY lda #0 + 74 | 1 ampersand.s 74 | Code | 11 | | 2 | 00/1802 : D0 25 | bne doUNINSTALL + 75 | 1 ampersand.s 75 | Empty | 11 | | 0 | 00/1804 | + 76 | 1 ampersand.s 76 | Code | 11 | | 3 | 00/1804 : EE 01 18 | inc myENTRY+1 ; on dit qu'on installe + 77 | 1 ampersand.s 77 | Empty | 11 | | 0 | 00/1807 | + 78 | 1 ampersand.s 78 | Code | 11 | | 3 | 00/1807 : AD F5 03 | lda {$3f5} ; on sauve + 79 | 1 ampersand.s 79 | Code | 11 | | 3 | 00/180A : 8D 3F 18 | sta myPTR + 80 | 1 ampersand.s 80 | Code | 11 | | 3 | 00/180D : AD F6 03 | lda {$3f5}+1 + 81 | 1 ampersand.s 81 | Code | 11 | | 3 | 00/1810 : 8D 40 18 | sta myPTR+1 + 82 | 1 ampersand.s 82 | Code | 11 | | 3 | 00/1813 : AD F7 03 | lda {$3f5}+2 + 83 | 1 ampersand.s 83 | Code | 11 | | 3 | 00/1816 : 8D 41 18 | sta myPTR+2 + 84 | 1 ampersand.s 84 | Empty | 11 | | 0 | 00/1819 | + 85 | 1 ampersand.s 85 | Code | 11 | | 2 | 00/1819 : A9 4C | lda #$4c ; on installe le vecteur + 86 | 1 ampersand.s 86 | Code | 11 | | 3 | 00/181B : 8D F5 03 | sta {$3f5} + 87 | 1 ampersand.s 87 | Code | 11 | | 2 | 00/181E : A9 42 | lda #myVECTOR + 90 | 1 ampersand.s 90 | Code | 11 | | 3 | 00/1825 : 8D F7 03 | sta {$3f5}+2 + 91 | 1 ampersand.s 91 | Code | 11 | | 1 | 00/1828 : 60 | rts + 92 | 1 ampersand.s 92 | Empty | 11 | | 0 | 00/1829 | + 93 | 1 ampersand.s 93 | Code | 11 | | 3 | 00/1829 : CE 01 18 | doUNINSTALL dec myENTRY+1 + 94 | 1 ampersand.s 94 | Empty | 11 | | 0 | 00/182C | + 95 | 1 ampersand.s 95 | Code | 11 | | 3 | 00/182C : AD 3F 18 | lda myPTR + 96 | 1 ampersand.s 96 | Code | 11 | | 3 | 00/182F : 8D F5 03 | sta {$3f5} + 97 | 1 ampersand.s 97 | Code | 11 | | 3 | 00/1832 : AD 40 18 | lda myPTR+1 + 98 | 1 ampersand.s 98 | Code | 11 | | 3 | 00/1835 : 8D F6 03 | sta {$3f5}+1 + 99 | 1 ampersand.s 99 | Code | 11 | | 3 | 00/1838 : AD 41 18 | lda myPTR+2 + 100 | 1 ampersand.s 100 | Code | 11 | | 3 | 00/183B : 8D F7 03 | sta {$3f5}+2 + 101 | 1 ampersand.s 101 | Code | 11 | | 1 | 00/183E : 60 | rts + 102 | 1 ampersand.s 102 | Empty | 11 | | 0 | 00/183F | + 103 | 1 ampersand.s 103 | Data | 11 | | 3 | 00/183F : 00 00 00 | myPTR ds 3 ; 4C xx yy + 104 | 1 ampersand.s 104 | Empty | 11 | | 0 | 00/1842 | + 105 | 1 ampersand.s 105 | Comment | 11 | | 0 | 00/1842 | *----------------------------------- + 106 | 1 ampersand.s 106 | Empty | 11 | | 0 | 00/1842 | + 107 | 1 ampersand.s 107 | Code | 11 | | 2 | 00/1842 : A2 0B | myVECTOR ldx #myADRS-myCMDS-1 + 108 | 1 ampersand.s 108 | Code | 11 | | 3 | 00/1844 : DD 5B 18 | ozunid_1 cmp myCMDS,x + 109 | 1 ampersand.s 109 | Code | 11 | | 2 | 00/1847 : F0 06 | beq doVECTOR + 110 | 1 ampersand.s 110 | Code | 11 | | 1 | 00/1849 : CA | dex + 111 | 1 ampersand.s 111 | Code | 11 | | 2 | 00/184A : 10 F8 | bpl ozunid_1 + 112 | 1 ampersand.s 112 | Code | 11 | | 3 | 00/184C : 4C C9 DE | jmp {$dec9} + 113 | 1 ampersand.s 113 | Empty | 11 | | 0 | 00/184F | + 114 | 1 ampersand.s 114 | Code | 11 | | 1 | 00/184F : 8A | doVECTOR txa + 115 | 1 ampersand.s 115 | Code | 11 | | 1 | 00/1850 : 0A | asl + 116 | 1 ampersand.s 116 | Code | 11 | | 1 | 00/1851 : AA | tax + 117 | 1 ampersand.s 117 | Code | 11 | | 3 | 00/1852 : BD 68 18 | lda myADRS+1,x + 118 | 1 ampersand.s 118 | Code | 11 | | 1 | 00/1855 : 48 | pha + 119 | 1 ampersand.s 119 | Code | 11 | | 3 | 00/1856 : BD 67 18 | lda myADRS,x + 120 | 1 ampersand.s 120 | Code | 11 | | 1 | 00/1859 : 48 | pha + 121 | 1 ampersand.s 121 | Code | 11 | | 1 | 00/185A : 60 | rts + 122 | 1 ampersand.s 122 | Empty | 11 | | 0 | 00/185B | + 123 | 1 ampersand.s 123 | Data | 11 | | 12 | 00/185B : 53 4D 44 43 | myCMDS asc 'SMDCIPHWERGT' | | | | | | 49 50 48 57 | - | | | | | | 45 52 47 | - 123 | 1 ampersand.s 123 | Empty | 11 | | 0 | 00/1866 | - 124 | 1 ampersand.s 124 | Data | 11 | | 2 | 00/1866 : ED 18 | myADRS da doS-1 - 125 | 1 ampersand.s 125 | Data | 11 | | 2 | 00/1868 : 22 19 | da doM-1 - 126 | 1 ampersand.s 126 | Data | 11 | | 2 | 00/186A : 65 19 | da doD-1 - 127 | 1 ampersand.s 127 | Data | 11 | | 2 | 00/186C : D8 19 | da doC-1 - 128 | 1 ampersand.s 128 | Data | 11 | | 2 | 00/186E : F5 19 | da doI-1 - 129 | 1 ampersand.s 129 | Data | 11 | | 2 | 00/1870 : 04 1A | da doP-1 - 130 | 1 ampersand.s 130 | Data | 11 | | 2 | 00/1872 : 13 1A | da doH-1 - 131 | 1 ampersand.s 131 | Data | 11 | | 2 | 00/1874 : 30 1A | da doW-1 - 132 | 1 ampersand.s 132 | Data | 11 | | 2 | 00/1876 : 49 1A | da doE-1 - 133 | 1 ampersand.s 133 | Data | 11 | | 2 | 00/1878 : 4D 1A | da doR-1 - 134 | 1 ampersand.s 134 | Data | 11 | | 2 | 00/187A : 66 1A | da doG-1 - 135 | 1 ampersand.s 135 | Empty | 11 | | 0 | 00/187C | - 136 | 1 ampersand.s 136 | Comment | 11 | | 0 | 00/187C | *----------------------------------- Data - 137 | 1 ampersand.s 137 | Empty | 11 | | 0 | 00/187C | - 138 | 1 ampersand.s 138 | Data | 11 | | 2 | 00/187C : 8C 00 | theX dw 140 ; milieu de l'ˇcran par dˇfaut - 139 | 1 ampersand.s 139 | Data | 11 | | 96 | 00/187E : 00 00 00 00 | theY ds 96 + | | | | | | 45 52 47 54 | + 124 | 1 ampersand.s 124 | Empty | 11 | | 0 | 00/1867 | + 125 | 1 ampersand.s 125 | Data | 11 | | 2 | 00/1867 : F0 18 | myADRS da doS-1 + 126 | 1 ampersand.s 126 | Data | 11 | | 2 | 00/1869 : 25 19 | da doM-1 + 127 | 1 ampersand.s 127 | Data | 11 | | 2 | 00/186B : 68 19 | da doD-1 + 128 | 1 ampersand.s 128 | Data | 11 | | 2 | 00/186D : DB 19 | da doC-1 + 129 | 1 ampersand.s 129 | Data | 11 | | 2 | 00/186F : F8 19 | da doI-1 + 130 | 1 ampersand.s 130 | Data | 11 | | 2 | 00/1871 : 07 1A | da doP-1 + 131 | 1 ampersand.s 131 | Data | 11 | | 2 | 00/1873 : 16 1A | da doH-1 + 132 | 1 ampersand.s 132 | Data | 11 | | 2 | 00/1875 : 33 1A | da doW-1 + 133 | 1 ampersand.s 133 | Data | 11 | | 2 | 00/1877 : 4C 1A | da doE-1 + 134 | 1 ampersand.s 134 | Data | 11 | | 2 | 00/1879 : 50 1A | da doR-1 + 135 | 1 ampersand.s 135 | Data | 11 | | 2 | 00/187B : 69 1A | da doG-1 + 136 | 1 ampersand.s 136 | Data | 11 | | 2 | 00/187D : 8C 1A | da doT-1 + 137 | 1 ampersand.s 137 | Empty | 11 | | 0 | 00/187F | + 138 | 1 ampersand.s 138 | Comment | 11 | | 0 | 00/187F | *----------------------------------- Data + 139 | 1 ampersand.s 139 | Empty | 11 | | 0 | 00/187F | + 140 | 1 ampersand.s 140 | Data | 11 | | 2 | 00/187F : 8C 00 | theX dw 140 ; milieu de l'ˇcran par dˇfaut + 141 | 1 ampersand.s 141 | Data | 11 | | 96 | 00/1881 : 00 00 00 00 | theY ds 96 | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | @@ -165,260 +167,268 @@ | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | | | | | | | 00 00 00 00 | - 140 | 1 ampersand.s 140 | Data | 11 | | 2 | 00/18DE : 00 00 | theX2 ds 2 - 141 | 1 ampersand.s 141 | Data | 11 | | 2 | 00/18E0 : 00 00 | theY2 ds 2 - 142 | 1 ampersand.s 142 | Data | 11 | | 1 | 00/18E2 : 00 | theRADIUS ds 1 - 143 | 1 ampersand.s 143 | Data | 11 | | 1 | 00/18E3 : 00 | theFB ds 1 - 144 | 1 ampersand.s 144 | Data | 11 | | 1 | 00/18E4 : 00 | theINK ds 1 - 145 | 1 ampersand.s 145 | Data | 11 | | 1 | 00/18E5 : 00 | thePAPER ds 1 - 146 | 1 ampersand.s 146 | Empty | 11 | | 0 | 00/18E6 | - 147 | 1 ampersand.s 147 | Comment | 11 | | 0 | 00/18E6 | * APPLE ORIC - 148 | 1 ampersand.s 148 | Comment | 11 | | 0 | 00/18E6 | * 0 black1 black - 149 | 1 ampersand.s 149 | Comment | 11 | | 0 | 00/18E6 | * 1 green red - 150 | 1 ampersand.s 150 | Comment | 11 | | 0 | 00/18E6 | * 2 blue green - 151 | 1 ampersand.s 151 | Comment | 11 | | 0 | 00/18E6 | * 3 white1 yellow - 152 | 1 ampersand.s 152 | Comment | 11 | | 0 | 00/18E6 | * 4 black2 blue - 153 | 1 ampersand.s 153 | Comment | 11 | | 0 | 00/18E6 | * 5 - magenta - 154 | 1 ampersand.s 154 | Comment | 11 | | 0 | 00/18E6 | * 6 - cyan - 155 | 1 ampersand.s 155 | Comment | 11 | | 0 | 00/18E6 | * 7 white2 white - 156 | 1 ampersand.s 156 | Empty | 11 | | 0 | 00/18E6 | - 157 | 1 ampersand.s 157 | Data | 11 | | 8 | 00/18E6 : 07 05 01 06 | oric2hgr hex 0705010602030400 + 142 | 1 ampersand.s 142 | Data | 11 | | 2 | 00/18E1 : 00 00 | theX2 ds 2 + 143 | 1 ampersand.s 143 | Data | 11 | | 2 | 00/18E3 : 00 00 | theY2 ds 2 + 144 | 1 ampersand.s 144 | Data | 11 | | 1 | 00/18E5 : 00 | theRADIUS ds 1 + 145 | 1 ampersand.s 145 | Data | 11 | | 1 | 00/18E6 : 00 | theFB ds 1 + 146 | 1 ampersand.s 146 | Data | 11 | | 1 | 00/18E7 : 00 | theINK ds 1 + 147 | 1 ampersand.s 147 | Data | 11 | | 1 | 00/18E8 : 00 | thePAPER ds 1 + 148 | 1 ampersand.s 148 | Empty | 11 | | 0 | 00/18E9 | + 149 | 1 ampersand.s 149 | Comment | 11 | | 0 | 00/18E9 | * APPLE ORIC + 150 | 1 ampersand.s 150 | Comment | 11 | | 0 | 00/18E9 | * 0 black1 black + 151 | 1 ampersand.s 151 | Comment | 11 | | 0 | 00/18E9 | * 1 green red + 152 | 1 ampersand.s 152 | Comment | 11 | | 0 | 00/18E9 | * 2 blue green + 153 | 1 ampersand.s 153 | Comment | 11 | | 0 | 00/18E9 | * 3 white1 yellow + 154 | 1 ampersand.s 154 | Comment | 11 | | 0 | 00/18E9 | * 4 black2 blue + 155 | 1 ampersand.s 155 | Comment | 11 | | 0 | 00/18E9 | * 5 - magenta + 156 | 1 ampersand.s 156 | Comment | 11 | | 0 | 00/18E9 | * 6 - cyan + 157 | 1 ampersand.s 157 | Comment | 11 | | 0 | 00/18E9 | * 7 white2 white + 158 | 1 ampersand.s 158 | Empty | 11 | | 0 | 00/18E9 | + 159 | 1 ampersand.s 159 | Data | 11 | | 8 | 00/18E9 : 07 05 01 06 | oric2hgr hex 0705010602030400 | | | | | | 02 03 04 00 | - 158 | 1 ampersand.s 158 | Empty | 11 | | 0 | 00/18EE | - 159 | 1 ampersand.s 159 | Comment | 11 | | 0 | 00/18EE | *----------------------------------- CURSET x,y,fb - 160 | 1 ampersand.s 160 | Empty | 11 | | 0 | 00/18EE | - 161 | 1 ampersand.s 161 | Empty | 11 | | 0 | 00/18EE | doS - 162 | 1 ampersand.s 162 | Code | 11 | | 3 | 00/18EE : 20 B1 00 | jsr {$b1} ; get next token - 163 | 1 ampersand.s 163 | Code | 11 | | 3 | 00/18F1 : 20 67 DD | jsr {$dd67} ; eval expression - 164 | 1 ampersand.s 164 | Code | 11 | | 3 | 00/18F4 : 20 52 E7 | jsr {$e752} ; convert to int - 165 | 1 ampersand.s 165 | Code | 11 | | 2 | 00/18F7 : A5 50 | lda {$50} - 166 | 1 ampersand.s 166 | Code | 11 | | 3 | 00/18F9 : 8D 7C 18 | sta theX - 167 | 1 ampersand.s 167 | Code | 11 | | 2 | 00/18FC : A5 51 | lda {$50}+1 - 168 | 1 ampersand.s 168 | Code | 11 | | 3 | 00/18FE : 8D 7D 18 | sta theX+1 ; new X-coord - 169 | 1 ampersand.s 169 | Empty | 11 | | 0 | 00/1901 | - 170 | 1 ampersand.s 170 | Code | 11 | | 3 | 00/1901 : 20 BE DE | jsr {$debe} ; check for comma - 171 | 1 ampersand.s 171 | Code | 11 | | 3 | 00/1904 : 20 67 DD | jsr {$dd67} ; eval expression - 172 | 1 ampersand.s 172 | Code | 11 | | 3 | 00/1907 : 20 52 E7 | jsr {$e752} ; convert to int - 173 | 1 ampersand.s 173 | Code | 11 | | 2 | 00/190A : A5 50 | lda {$50} - 174 | 1 ampersand.s 174 | Code | 11 | | 3 | 00/190C : 8D 7E 18 | sta theY - 175 | 1 ampersand.s 175 | Code | 11 | | 2 | 00/190F : A5 51 | lda {$50}+1 - 176 | 1 ampersand.s 176 | Code | 11 | | 3 | 00/1911 : 8D 7F 18 | sta theY+1 ; new Y-coord - 177 | 1 ampersand.s 177 | Empty | 11 | | 0 | 00/1914 | - 178 | 1 ampersand.s 178 | Code | 11 | | 3 | 00/1914 : 20 BE DE | jsr {$debe} ; check for comma - 179 | 1 ampersand.s 179 | Code | 11 | | 3 | 00/1917 : 20 67 DD | jsr {$dd67} ; eval expression - 180 | 1 ampersand.s 180 | Code | 11 | | 3 | 00/191A : 20 52 E7 | jsr {$e752} ; convert to int - 181 | 1 ampersand.s 181 | Code | 11 | | 2 | 00/191D : A5 50 | lda {$50} - 182 | 1 ampersand.s 182 | Code | 11 | | 3 | 00/191F : 8D E3 18 | sta theFB - 183 | 1 ampersand.s 183 | Code | 11 | | 1 | 00/1922 : 60 | rts - 184 | 1 ampersand.s 184 | Empty | 11 | | 0 | 00/1923 | - 185 | 1 ampersand.s 185 | Comment | 11 | | 0 | 00/1923 | *----------------------------------- CURMOV x,y,fb - 186 | 1 ampersand.s 186 | Empty | 11 | | 0 | 00/1923 | - 187 | 1 ampersand.s 187 | Empty | 11 | | 0 | 00/1923 | doM - 188 | 1 ampersand.s 188 | Code | 11 | | 3 | 00/1923 : 20 B1 00 | jsr {$b1} ; get next token - 189 | 1 ampersand.s 189 | Code | 11 | | 3 | 00/1926 : 20 67 DD | jsr {$dd67} ; eval expression - 190 | 1 ampersand.s 190 | Code | 11 | | 3 | 00/1929 : 20 52 E7 | jsr {$e752} ; convert to int - 191 | 1 ampersand.s 191 | Code | 11 | | 2 | 00/192C : A5 50 | lda {$50} - 192 | 1 ampersand.s 192 | Code | 11 | | 1 | 00/192E : 18 | clc - 193 | 1 ampersand.s 193 | Code | 11 | | 3 | 00/192F : 6D 7C 18 | adc theX - 194 | 1 ampersand.s 194 | Code | 11 | | 3 | 00/1932 : 8D 7C 18 | sta theX - 195 | 1 ampersand.s 195 | Code | 11 | | 2 | 00/1935 : A5 51 | lda {$50}+1 - 196 | 1 ampersand.s 196 | Code | 11 | | 3 | 00/1937 : 6D 7D 18 | adc theX+1 - 197 | 1 ampersand.s 197 | Code | 11 | | 3 | 00/193A : 8D 7D 18 | sta theX+1 ; new X-coord - 198 | 1 ampersand.s 198 | Empty | 11 | | 0 | 00/193D | - 199 | 1 ampersand.s 199 | Code | 11 | | 3 | 00/193D : 20 BE DE | jsr {$debe} ; check for comma - 200 | 1 ampersand.s 200 | Code | 11 | | 3 | 00/1940 : 20 67 DD | jsr {$dd67} ; eval expression - 201 | 1 ampersand.s 201 | Code | 11 | | 3 | 00/1943 : 20 52 E7 | jsr {$e752} ; convert to int - 202 | 1 ampersand.s 202 | Code | 11 | | 2 | 00/1946 : A5 50 | lda {$50} - 203 | 1 ampersand.s 203 | Code | 11 | | 1 | 00/1948 : 18 | clc - 204 | 1 ampersand.s 204 | Code | 11 | | 3 | 00/1949 : 6D 7E 18 | adc theY - 205 | 1 ampersand.s 205 | Code | 11 | | 3 | 00/194C : 8D 7E 18 | sta theY - 206 | 1 ampersand.s 206 | Code | 11 | | 2 | 00/194F : A5 51 | lda {$50}+1 - 207 | 1 ampersand.s 207 | Code | 11 | | 3 | 00/1951 : 6D 7F 18 | adc theY+1 - 208 | 1 ampersand.s 208 | Code | 11 | | 3 | 00/1954 : 8D 7F 18 | sta theY+1 ; new Y-coord - 209 | 1 ampersand.s 209 | Empty | 11 | | 0 | 00/1957 | - 210 | 1 ampersand.s 210 | Code | 11 | | 3 | 00/1957 : 20 BE DE | jsr {$debe} ; check for comma - 211 | 1 ampersand.s 211 | Code | 11 | | 3 | 00/195A : 20 67 DD | jsr {$dd67} ; eval expression - 212 | 1 ampersand.s 212 | Code | 11 | | 3 | 00/195D : 20 52 E7 | jsr {$e752} ; convert to int - 213 | 1 ampersand.s 213 | Code | 11 | | 2 | 00/1960 : A5 50 | lda {$50} - 214 | 1 ampersand.s 214 | Code | 11 | | 3 | 00/1962 : 8D E3 18 | sta theFB - 215 | 1 ampersand.s 215 | Code | 11 | | 1 | 00/1965 : 60 | rts - 216 | 1 ampersand.s 216 | Empty | 11 | | 0 | 00/1966 | - 217 | 1 ampersand.s 217 | Comment | 11 | | 0 | 00/1966 | *----------------------------------- DRAW x,y,fb - 218 | 1 ampersand.s 218 | Empty | 11 | | 0 | 00/1966 | - 219 | 1 ampersand.s 219 | Empty | 11 | | 0 | 00/1966 | doD - 220 | 1 ampersand.s 220 | Code | 11 | | 3 | 00/1966 : 20 B1 00 | jsr {$b1} ; get next token - 221 | 1 ampersand.s 221 | Code | 11 | | 3 | 00/1969 : 20 67 DD | jsr {$dd67} ; eval expression - 222 | 1 ampersand.s 222 | Code | 11 | | 3 | 00/196C : 20 52 E7 | jsr {$e752} ; convert to int - 223 | 1 ampersand.s 223 | Code | 11 | | 2 | 00/196F : A5 50 | lda {$50} - 224 | 1 ampersand.s 224 | Code | 11 | | 1 | 00/1971 : 18 | clc - 225 | 1 ampersand.s 225 | Code | 11 | | 3 | 00/1972 : 6D 7C 18 | adc theX - 226 | 1 ampersand.s 226 | Code | 11 | | 3 | 00/1975 : 8D DE 18 | sta theX2 - 227 | 1 ampersand.s 227 | Code | 11 | | 2 | 00/1978 : A5 51 | lda {$50}+1 - 228 | 1 ampersand.s 228 | Code | 11 | | 3 | 00/197A : 6D 7D 18 | adc theX+1 - 229 | 1 ampersand.s 229 | Code | 11 | | 3 | 00/197D : 8D DF 18 | sta theX2+1 ; new X-coord - 230 | 1 ampersand.s 230 | Empty | 11 | | 0 | 00/1980 | - 231 | 1 ampersand.s 231 | Code | 11 | | 3 | 00/1980 : 20 BE DE | jsr {$debe} ; check for comma - 232 | 1 ampersand.s 232 | Code | 11 | | 3 | 00/1983 : 20 67 DD | jsr {$dd67} ; eval expression - 233 | 1 ampersand.s 233 | Code | 11 | | 3 | 00/1986 : 20 52 E7 | jsr {$e752} ; convert to int - 234 | 1 ampersand.s 234 | Code | 11 | | 2 | 00/1989 : A5 50 | lda {$50} - 235 | 1 ampersand.s 235 | Code | 11 | | 1 | 00/198B : 18 | clc - 236 | 1 ampersand.s 236 | Code | 11 | | 3 | 00/198C : 6D 7E 18 | adc theY - 237 | 1 ampersand.s 237 | Code | 11 | | 3 | 00/198F : 8D E0 18 | sta theY2 - 238 | 1 ampersand.s 238 | Code | 11 | | 2 | 00/1992 : A5 51 | lda {$50}+1 - 239 | 1 ampersand.s 239 | Code | 11 | | 3 | 00/1994 : 6D 7E 18 | adc theY - 240 | 1 ampersand.s 240 | Code | 11 | | 3 | 00/1997 : 8D E1 18 | sta theY2+1 ; new Y-coord - 241 | 1 ampersand.s 241 | Empty | 11 | | 0 | 00/199A | - 242 | 1 ampersand.s 242 | Code | 11 | | 3 | 00/199A : 20 BE DE | jsr {$debe} ; check for comma - 243 | 1 ampersand.s 243 | Code | 11 | | 3 | 00/199D : 20 67 DD | jsr {$dd67} ; eval expression - 244 | 1 ampersand.s 244 | Code | 11 | | 3 | 00/19A0 : 20 52 E7 | jsr {$e752} ; convert to int - 245 | 1 ampersand.s 245 | Code | 11 | | 2 | 00/19A3 : A5 50 | lda {$50} - 246 | 1 ampersand.s 246 | Code | 11 | | 3 | 00/19A5 : 8D E3 18 | sta theFB - 247 | 1 ampersand.s 247 | Empty | 11 | | 0 | 00/19A8 | - 248 | 1 ampersand.s 248 | Comment | 11 | | 0 | 00/19A8 | *---------- It is now time to draw as we have all variables - 249 | 1 ampersand.s 249 | Empty | 11 | | 0 | 00/19A8 | - 250 | 1 ampersand.s 250 | Code | 11 | | 3 | 00/19A8 : AC E4 18 | ldy theINK ; the ink color - 251 | 1 ampersand.s 251 | Code | 11 | | 3 | 00/19AB : BE E6 18 | ldx oric2hgr,y ; from the Oric to the Apple II - 252 | 1 ampersand.s 252 | Code | 11 | | 3 | 00/19AE : 20 EC F6 | jsr {$f6e9}+3 ; to skip CHRGET - 253 | 1 ampersand.s 253 | Empty | 11 | | 0 | 00/19B1 | - 254 | 1 ampersand.s 254 | Code | 11 | | 3 | 00/19B1 : AE 7C 18 | ldx theX ; HPLOT x,y - 255 | 1 ampersand.s 255 | Code | 11 | | 3 | 00/19B4 : AC 7D 18 | ldy theX+1 - 256 | 1 ampersand.s 256 | Code | 11 | | 3 | 00/19B7 : AD 7E 18 | lda theY - 257 | 1 ampersand.s 257 | Code | 11 | | 3 | 00/19BA : 20 57 F4 | jsr {$f457} - 258 | 1 ampersand.s 258 | Empty | 11 | | 0 | 00/19BD | - 259 | 1 ampersand.s 259 | Code | 11 | | 3 | 00/19BD : AD DE 18 | lda theX2 ; TO x2,Y2 - 260 | 1 ampersand.s 260 | Code | 11 | | 3 | 00/19C0 : AE DF 18 | ldx theX2+1 - 261 | 1 ampersand.s 261 | Code | 11 | | 3 | 00/19C3 : AC E0 18 | ldy theY2 - 262 | 1 ampersand.s 262 | Code | 11 | | 3 | 00/19C6 : 20 3A F5 | jsr {$f53a} ; draw the line - 263 | 1 ampersand.s 263 | Empty | 11 | | 0 | 00/19C9 | - 264 | 1 ampersand.s 264 | Code | 11 | | 2 | 00/19C9 : A5 E0 | lda {$e0} ; save the updated coords - 265 | 1 ampersand.s 265 | Code | 11 | | 3 | 00/19CB : 8D 7C 18 | sta theX - 266 | 1 ampersand.s 266 | Code | 11 | | 2 | 00/19CE : A5 E1 | lda {$e1} - 267 | 1 ampersand.s 267 | Code | 11 | | 3 | 00/19D0 : 8D 7D 18 | sta theX+1 - 268 | 1 ampersand.s 268 | Code | 11 | | 2 | 00/19D3 : A5 E2 | lda {$e2} - 269 | 1 ampersand.s 269 | Code | 11 | | 3 | 00/19D5 : 8D 7E 18 | sta theY - 270 | 1 ampersand.s 270 | Code | 11 | | 1 | 00/19D8 : 60 | rts - 271 | 1 ampersand.s 271 | Empty | 11 | | 0 | 00/19D9 | - 272 | 1 ampersand.s 272 | Comment | 11 | | 0 | 00/19D9 | *----------------------------------- CIRCLE n,fb - 273 | 1 ampersand.s 273 | Empty | 11 | | 0 | 00/19D9 | - 274 | 1 ampersand.s 274 | Empty | 11 | | 0 | 00/19D9 | doC - 275 | 1 ampersand.s 275 | Code | 11 | | 3 | 00/19D9 : 20 B1 00 | jsr {$b1} ; get next token - 276 | 1 ampersand.s 276 | Code | 11 | | 3 | 00/19DC : 20 67 DD | jsr {$dd67} ; eval expression - 277 | 1 ampersand.s 277 | Code | 11 | | 3 | 00/19DF : 20 52 E7 | jsr {$e752} ; convert to int - 278 | 1 ampersand.s 278 | Code | 11 | | 2 | 00/19E2 : A5 50 | lda {$50} - 279 | 1 ampersand.s 279 | Code | 11 | | 3 | 00/19E4 : 8D E2 18 | sta theRADIUS ; the radius - 280 | 1 ampersand.s 280 | Empty | 11 | | 0 | 00/19E7 | - 281 | 1 ampersand.s 281 | Code | 11 | | 3 | 00/19E7 : 20 BE DE | jsr {$debe} ; check for comma - 282 | 1 ampersand.s 282 | Code | 11 | | 3 | 00/19EA : 20 67 DD | jsr {$dd67} ; eval expression - 283 | 1 ampersand.s 283 | Code | 11 | | 3 | 00/19ED : 20 52 E7 | jsr {$e752} ; convert to int - 284 | 1 ampersand.s 284 | Code | 11 | | 2 | 00/19F0 : A5 50 | lda {$50} - 285 | 1 ampersand.s 285 | Code | 11 | | 3 | 00/19F2 : 8D E3 18 | sta theFB ; the foreground color - 286 | 1 ampersand.s 286 | Code | 11 | | 1 | 00/19F5 : 60 | rts - 287 | 1 ampersand.s 287 | Empty | 11 | | 0 | 00/19F6 | - 288 | 1 ampersand.s 288 | Comment | 11 | | 0 | 00/19F6 | *----------------------------------- INK fb - 289 | 1 ampersand.s 289 | Empty | 11 | | 0 | 00/19F6 | - 290 | 1 ampersand.s 290 | Empty | 11 | | 0 | 00/19F6 | doI - 291 | 1 ampersand.s 291 | Code | 11 | | 3 | 00/19F6 : 20 B1 00 | jsr {$b1} ; get next token - 292 | 1 ampersand.s 292 | Code | 11 | | 3 | 00/19F9 : 20 67 DD | jsr {$dd67} ; eval expression - 293 | 1 ampersand.s 293 | Code | 11 | | 3 | 00/19FC : 20 52 E7 | jsr {$e752} ; convert to int - 294 | 1 ampersand.s 294 | Code | 11 | | 2 | 00/19FF : A5 50 | lda {$50} - 295 | 1 ampersand.s 295 | Code | 11 | | 3 | 00/1A01 : 8D E4 18 | sta theINK - 296 | 1 ampersand.s 296 | Code | 11 | | 1 | 00/1A04 : 60 | rts - 297 | 1 ampersand.s 297 | Empty | 11 | | 0 | 00/1A05 | - 298 | 1 ampersand.s 298 | Comment | 11 | | 0 | 00/1A05 | *----------------------------------- PAPER fb - 299 | 1 ampersand.s 299 | Empty | 11 | | 0 | 00/1A05 | - 300 | 1 ampersand.s 300 | Empty | 11 | | 0 | 00/1A05 | doP - 301 | 1 ampersand.s 301 | Code | 11 | | 3 | 00/1A05 : 20 B1 00 | jsr {$b1} ; get next token - 302 | 1 ampersand.s 302 | Code | 11 | | 3 | 00/1A08 : 20 67 DD | jsr {$dd67} ; eval expression - 303 | 1 ampersand.s 303 | Code | 11 | | 3 | 00/1A0B : 20 52 E7 | jsr {$e752} ; convert to int - 304 | 1 ampersand.s 304 | Code | 11 | | 2 | 00/1A0E : A5 50 | lda {$50} - 305 | 1 ampersand.s 305 | Code | 11 | | 3 | 00/1A10 : 8D E5 18 | sta thePAPER - 306 | 1 ampersand.s 306 | Code | 11 | | 1 | 00/1A13 : 60 | rts - 307 | 1 ampersand.s 307 | Empty | 11 | | 0 | 00/1A14 | - 308 | 1 ampersand.s 308 | Comment | 11 | | 0 | 00/1A14 | *----------------------------------- HIRES - 309 | 1 ampersand.s 309 | Empty | 11 | | 0 | 00/1A14 | - 310 | 1 ampersand.s 310 | Empty | 11 | | 0 | 00/1A14 | doH - 311 | 1 ampersand.s 311 | Code | 11 | | 3 | 00/1A14 : 20 B1 00 | jsr {$b1} ; get next token - 312 | 1 ampersand.s 312 | Empty | 11 | | 0 | 00/1A17 | - 313 | 1 ampersand.s 313 | Code | 11 | | 2 | 00/1A17 : A9 00 | lda #0 - 314 | 1 ampersand.s 314 | Code | 11 | | 2 | 00/1A19 : 85 20 | sta {$20} - 315 | 1 ampersand.s 315 | Code | 11 | | 2 | 00/1A1B : A9 28 | lda #40 - 316 | 1 ampersand.s 316 | Code | 11 | | 2 | 00/1A1D : 85 21 | sta {$21} - 317 | 1 ampersand.s 317 | Code | 11 | | 2 | 00/1A1F : A9 14 | lda #20 - 318 | 1 ampersand.s 318 | Code | 11 | | 2 | 00/1A21 : 85 22 | sta {$22} - 319 | 1 ampersand.s 319 | Code | 11 | | 2 | 00/1A23 : A9 18 | lda #24 - 320 | 1 ampersand.s 320 | Code | 11 | | 2 | 00/1A25 : 85 23 | sta {$23} - 321 | 1 ampersand.s 321 | Code | 11 | | 3 | 00/1A27 : 20 58 FC | jsr {$fc58} - 322 | 1 ampersand.s 322 | Empty | 11 | | 0 | 00/1A2A | - 323 | 1 ampersand.s 323 | Code | 11 | | 3 | 00/1A2A : 20 E2 F3 | jsr {$f3e2} - 324 | 1 ampersand.s 324 | Code | 11 | | 3 | 00/1A2D : 8D 52 C0 | sta {$c052} - 325 | 1 ampersand.s 325 | Code | 11 | | 1 | 00/1A30 : 60 | rts - 326 | 1 ampersand.s 326 | Empty | 11 | | 0 | 00/1A31 | - 327 | 1 ampersand.s 327 | Comment | 11 | | 0 | 00/1A31 | *----------------------------------- WAIT x - 328 | 1 ampersand.s 328 | Empty | 11 | | 0 | 00/1A31 | - 329 | 1 ampersand.s 329 | Empty | 11 | | 0 | 00/1A31 | doW - 330 | 1 ampersand.s 330 | Code | 11 | | 3 | 00/1A31 : 20 B1 00 | jsr {$b1} ; get next token - 331 | 1 ampersand.s 331 | Code | 11 | | 3 | 00/1A34 : 20 67 DD | jsr {$dd67} ; eval expression - 332 | 1 ampersand.s 332 | Code | 11 | | 3 | 00/1A37 : 20 52 E7 | jsr {$e752} ; convert to int - 333 | 1 ampersand.s 333 | Empty | 11 | | 0 | 00/1A3A | - 334 | 1 ampersand.s 334 | Code | 11 | | 2 | 00/1A3A : A6 51 | ldx {$50}+1 - 335 | 1 ampersand.s 335 | Code | 11 | | 2 | 00/1A3C : A4 50 | doW1 ldy {$50} - 336 | 1 ampersand.s 336 | Code | 11 | | 2 | 00/1A3E : A9 3C | ozunid_2 lda #60 ; 1/100¸me de seconde - 337 | 1 ampersand.s 337 | Code | 11 | | 3 | 00/1A40 : 20 A8 FC | jsr {$fca8} - 338 | 1 ampersand.s 338 | Code | 11 | | 1 | 00/1A43 : 88 | dey - 339 | 1 ampersand.s 339 | Code | 11 | | 2 | 00/1A44 : D0 F8 | bne ozunid_2 - 340 | 1 ampersand.s 340 | Code | 11 | | 1 | 00/1A46 : CA | dex - 341 | 1 ampersand.s 341 | Code | 11 | | 2 | 00/1A47 : 10 F3 | bpl doW1 - 342 | 1 ampersand.s 342 | Code | 11 | | 1 | 00/1A49 : 60 | rts - 343 | 1 ampersand.s 343 | Empty | 11 | | 0 | 00/1A4A | - 344 | 1 ampersand.s 344 | Comment | 11 | | 0 | 00/1A4A | *----------------------------------- EXPLODE - 345 | 1 ampersand.s 345 | Empty | 11 | | 0 | 00/1A4A | - 346 | 1 ampersand.s 346 | Empty | 11 | | 0 | 00/1A4A | doE - 347 | 1 ampersand.s 347 | Code | 11 | | 3 | 00/1A4A : 20 B1 00 | jsr {$b1} - 348 | 1 ampersand.s 348 | Code | 11 | | 1 | 00/1A4D : 60 | rts - 349 | 1 ampersand.s 349 | Empty | 11 | | 0 | 00/1A4E | - 350 | 1 ampersand.s 350 | Comment | 11 | | 0 | 00/1A4E | *----------------------------------- RESTORE address - 351 | 1 ampersand.s 351 | Empty | 11 | | 0 | 00/1A4E | - 352 | 1 ampersand.s 352 | Empty | 11 | | 0 | 00/1A4E | doR - 353 | 1 ampersand.s 353 | Code | 11 | | 3 | 00/1A4E : 20 B1 00 | jsr {$b1} ; get next token - 354 | 1 ampersand.s 354 | Code | 11 | | 3 | 00/1A51 : 20 67 DD | jsr {$dd67} ; eval expression - 355 | 1 ampersand.s 355 | Code | 11 | | 3 | 00/1A54 : 20 52 E7 | jsr {$e752} ; convert to int - 356 | 1 ampersand.s 356 | Code | 11 | | 3 | 00/1A57 : 20 1A D6 | jsr {$d61a} ; find chosen line no. - 357 | 1 ampersand.s 357 | Empty | 11 | | 0 | 00/1A5A | - 358 | 1 ampersand.s 358 | Code | 11 | | 2 | 00/1A5A : A4 9C | ldy {$9b}+1 ; point DATPTR at byte before it - 359 | 1 ampersand.s 359 | Code | 11 | | 2 | 00/1A5C : A6 9B | ldx {$9b} - 360 | 1 ampersand.s 360 | Code | 11 | | 2 | 00/1A5E : D0 01 | bne dx - 361 | 1 ampersand.s 361 | Code | 11 | | 1 | 00/1A60 : 88 | dey - 362 | 1 ampersand.s 362 | Code | 11 | | 1 | 00/1A61 : CA | dx dex - 363 | 1 ampersand.s 363 | Code | 11 | | 2 | 00/1A62 : 84 7E | sty {$7d}+1 - 364 | 1 ampersand.s 364 | Code | 11 | | 2 | 00/1A64 : 86 7D | stx {$7d} - 365 | 1 ampersand.s 365 | Code | 11 | | 1 | 00/1A66 : 60 | rts - 366 | 1 ampersand.s 366 | Empty | 11 | | 0 | 00/1A67 | - 367 | 1 ampersand.s 367 | Comment | 11 | | 0 | 00/1A67 | *----------------------------------- GOSUB address - 368 | 1 ampersand.s 368 | Empty | 11 | | 0 | 00/1A67 | - 369 | 1 ampersand.s 369 | Empty | 11 | | 0 | 00/1A67 | doG - 370 | 1 ampersand.s 370 | Code | 11 | | 2 | 00/1A67 : A9 03 | lda #3 ; make sure there's enough stack - 371 | 1 ampersand.s 371 | Code | 11 | | 3 | 00/1A69 : 20 D6 D3 | jsr {$d3d6} - 372 | 1 ampersand.s 372 | Empty | 11 | | 0 | 00/1A6C | - 373 | 1 ampersand.s 373 | Code | 11 | | 2 | 00/1A6C : A5 B9 | lda {$b8}+1 ; push marker for RETURN - 374 | 1 ampersand.s 374 | Code | 11 | | 1 | 00/1A6E : 48 | pha - 375 | 1 ampersand.s 375 | Code | 11 | | 2 | 00/1A6F : A5 B8 | lda {$b8} + 160 | 1 ampersand.s 160 | Empty | 11 | | 0 | 00/18F1 | + 161 | 1 ampersand.s 161 | Comment | 11 | | 0 | 00/18F1 | *----------------------------------- CURSET x,y,fb + 162 | 1 ampersand.s 162 | Empty | 11 | | 0 | 00/18F1 | + 163 | 1 ampersand.s 163 | Empty | 11 | | 0 | 00/18F1 | doS + 164 | 1 ampersand.s 164 | Code | 11 | | 3 | 00/18F1 : 20 B1 00 | jsr {$b1} ; get next token + 165 | 1 ampersand.s 165 | Code | 11 | | 3 | 00/18F4 : 20 67 DD | jsr {$dd67} ; eval expression + 166 | 1 ampersand.s 166 | Code | 11 | | 3 | 00/18F7 : 20 52 E7 | jsr {$e752} ; convert to int + 167 | 1 ampersand.s 167 | Code | 11 | | 2 | 00/18FA : A5 50 | lda {$50} + 168 | 1 ampersand.s 168 | Code | 11 | | 3 | 00/18FC : 8D 7F 18 | sta theX + 169 | 1 ampersand.s 169 | Code | 11 | | 2 | 00/18FF : A5 51 | lda {$50}+1 + 170 | 1 ampersand.s 170 | Code | 11 | | 3 | 00/1901 : 8D 80 18 | sta theX+1 ; new X-coord + 171 | 1 ampersand.s 171 | Empty | 11 | | 0 | 00/1904 | + 172 | 1 ampersand.s 172 | Code | 11 | | 3 | 00/1904 : 20 BE DE | jsr {$debe} ; check for comma + 173 | 1 ampersand.s 173 | Code | 11 | | 3 | 00/1907 : 20 67 DD | jsr {$dd67} ; eval expression + 174 | 1 ampersand.s 174 | Code | 11 | | 3 | 00/190A : 20 52 E7 | jsr {$e752} ; convert to int + 175 | 1 ampersand.s 175 | Code | 11 | | 2 | 00/190D : A5 50 | lda {$50} + 176 | 1 ampersand.s 176 | Code | 11 | | 3 | 00/190F : 8D 81 18 | sta theY + 177 | 1 ampersand.s 177 | Code | 11 | | 2 | 00/1912 : A5 51 | lda {$50}+1 + 178 | 1 ampersand.s 178 | Code | 11 | | 3 | 00/1914 : 8D 82 18 | sta theY+1 ; new Y-coord + 179 | 1 ampersand.s 179 | Empty | 11 | | 0 | 00/1917 | + 180 | 1 ampersand.s 180 | Code | 11 | | 3 | 00/1917 : 20 BE DE | jsr {$debe} ; check for comma + 181 | 1 ampersand.s 181 | Code | 11 | | 3 | 00/191A : 20 67 DD | jsr {$dd67} ; eval expression + 182 | 1 ampersand.s 182 | Code | 11 | | 3 | 00/191D : 20 52 E7 | jsr {$e752} ; convert to int + 183 | 1 ampersand.s 183 | Code | 11 | | 2 | 00/1920 : A5 50 | lda {$50} + 184 | 1 ampersand.s 184 | Code | 11 | | 3 | 00/1922 : 8D E6 18 | sta theFB + 185 | 1 ampersand.s 185 | Code | 11 | | 1 | 00/1925 : 60 | rts + 186 | 1 ampersand.s 186 | Empty | 11 | | 0 | 00/1926 | + 187 | 1 ampersand.s 187 | Comment | 11 | | 0 | 00/1926 | *----------------------------------- CURMOV x,y,fb + 188 | 1 ampersand.s 188 | Empty | 11 | | 0 | 00/1926 | + 189 | 1 ampersand.s 189 | Empty | 11 | | 0 | 00/1926 | doM + 190 | 1 ampersand.s 190 | Code | 11 | | 3 | 00/1926 : 20 B1 00 | jsr {$b1} ; get next token + 191 | 1 ampersand.s 191 | Code | 11 | | 3 | 00/1929 : 20 67 DD | jsr {$dd67} ; eval expression + 192 | 1 ampersand.s 192 | Code | 11 | | 3 | 00/192C : 20 52 E7 | jsr {$e752} ; convert to int + 193 | 1 ampersand.s 193 | Code | 11 | | 2 | 00/192F : A5 50 | lda {$50} + 194 | 1 ampersand.s 194 | Code | 11 | | 1 | 00/1931 : 18 | clc + 195 | 1 ampersand.s 195 | Code | 11 | | 3 | 00/1932 : 6D 7F 18 | adc theX + 196 | 1 ampersand.s 196 | Code | 11 | | 3 | 00/1935 : 8D 7F 18 | sta theX + 197 | 1 ampersand.s 197 | Code | 11 | | 2 | 00/1938 : A5 51 | lda {$50}+1 + 198 | 1 ampersand.s 198 | Code | 11 | | 3 | 00/193A : 6D 80 18 | adc theX+1 + 199 | 1 ampersand.s 199 | Code | 11 | | 3 | 00/193D : 8D 80 18 | sta theX+1 ; new X-coord + 200 | 1 ampersand.s 200 | Empty | 11 | | 0 | 00/1940 | + 201 | 1 ampersand.s 201 | Code | 11 | | 3 | 00/1940 : 20 BE DE | jsr {$debe} ; check for comma + 202 | 1 ampersand.s 202 | Code | 11 | | 3 | 00/1943 : 20 67 DD | jsr {$dd67} ; eval expression + 203 | 1 ampersand.s 203 | Code | 11 | | 3 | 00/1946 : 20 52 E7 | jsr {$e752} ; convert to int + 204 | 1 ampersand.s 204 | Code | 11 | | 2 | 00/1949 : A5 50 | lda {$50} + 205 | 1 ampersand.s 205 | Code | 11 | | 1 | 00/194B : 18 | clc + 206 | 1 ampersand.s 206 | Code | 11 | | 3 | 00/194C : 6D 81 18 | adc theY + 207 | 1 ampersand.s 207 | Code | 11 | | 3 | 00/194F : 8D 81 18 | sta theY + 208 | 1 ampersand.s 208 | Code | 11 | | 2 | 00/1952 : A5 51 | lda {$50}+1 + 209 | 1 ampersand.s 209 | Code | 11 | | 3 | 00/1954 : 6D 82 18 | adc theY+1 + 210 | 1 ampersand.s 210 | Code | 11 | | 3 | 00/1957 : 8D 82 18 | sta theY+1 ; new Y-coord + 211 | 1 ampersand.s 211 | Empty | 11 | | 0 | 00/195A | + 212 | 1 ampersand.s 212 | Code | 11 | | 3 | 00/195A : 20 BE DE | jsr {$debe} ; check for comma + 213 | 1 ampersand.s 213 | Code | 11 | | 3 | 00/195D : 20 67 DD | jsr {$dd67} ; eval expression + 214 | 1 ampersand.s 214 | Code | 11 | | 3 | 00/1960 : 20 52 E7 | jsr {$e752} ; convert to int + 215 | 1 ampersand.s 215 | Code | 11 | | 2 | 00/1963 : A5 50 | lda {$50} + 216 | 1 ampersand.s 216 | Code | 11 | | 3 | 00/1965 : 8D E6 18 | sta theFB + 217 | 1 ampersand.s 217 | Code | 11 | | 1 | 00/1968 : 60 | rts + 218 | 1 ampersand.s 218 | Empty | 11 | | 0 | 00/1969 | + 219 | 1 ampersand.s 219 | Comment | 11 | | 0 | 00/1969 | *----------------------------------- DRAW x,y,fb + 220 | 1 ampersand.s 220 | Empty | 11 | | 0 | 00/1969 | + 221 | 1 ampersand.s 221 | Empty | 11 | | 0 | 00/1969 | doD + 222 | 1 ampersand.s 222 | Code | 11 | | 3 | 00/1969 : 20 B1 00 | jsr {$b1} ; get next token + 223 | 1 ampersand.s 223 | Code | 11 | | 3 | 00/196C : 20 67 DD | jsr {$dd67} ; eval expression + 224 | 1 ampersand.s 224 | Code | 11 | | 3 | 00/196F : 20 52 E7 | jsr {$e752} ; convert to int + 225 | 1 ampersand.s 225 | Code | 11 | | 2 | 00/1972 : A5 50 | lda {$50} + 226 | 1 ampersand.s 226 | Code | 11 | | 1 | 00/1974 : 18 | clc + 227 | 1 ampersand.s 227 | Code | 11 | | 3 | 00/1975 : 6D 7F 18 | adc theX + 228 | 1 ampersand.s 228 | Code | 11 | | 3 | 00/1978 : 8D E1 18 | sta theX2 + 229 | 1 ampersand.s 229 | Code | 11 | | 2 | 00/197B : A5 51 | lda {$50}+1 + 230 | 1 ampersand.s 230 | Code | 11 | | 3 | 00/197D : 6D 80 18 | adc theX+1 + 231 | 1 ampersand.s 231 | Code | 11 | | 3 | 00/1980 : 8D E2 18 | sta theX2+1 ; new X-coord + 232 | 1 ampersand.s 232 | Empty | 11 | | 0 | 00/1983 | + 233 | 1 ampersand.s 233 | Code | 11 | | 3 | 00/1983 : 20 BE DE | jsr {$debe} ; check for comma + 234 | 1 ampersand.s 234 | Code | 11 | | 3 | 00/1986 : 20 67 DD | jsr {$dd67} ; eval expression + 235 | 1 ampersand.s 235 | Code | 11 | | 3 | 00/1989 : 20 52 E7 | jsr {$e752} ; convert to int + 236 | 1 ampersand.s 236 | Code | 11 | | 2 | 00/198C : A5 50 | lda {$50} + 237 | 1 ampersand.s 237 | Code | 11 | | 1 | 00/198E : 18 | clc + 238 | 1 ampersand.s 238 | Code | 11 | | 3 | 00/198F : 6D 81 18 | adc theY + 239 | 1 ampersand.s 239 | Code | 11 | | 3 | 00/1992 : 8D E3 18 | sta theY2 + 240 | 1 ampersand.s 240 | Code | 11 | | 2 | 00/1995 : A5 51 | lda {$50}+1 + 241 | 1 ampersand.s 241 | Code | 11 | | 3 | 00/1997 : 6D 81 18 | adc theY + 242 | 1 ampersand.s 242 | Code | 11 | | 3 | 00/199A : 8D E4 18 | sta theY2+1 ; new Y-coord + 243 | 1 ampersand.s 243 | Empty | 11 | | 0 | 00/199D | + 244 | 1 ampersand.s 244 | Code | 11 | | 3 | 00/199D : 20 BE DE | jsr {$debe} ; check for comma + 245 | 1 ampersand.s 245 | Code | 11 | | 3 | 00/19A0 : 20 67 DD | jsr {$dd67} ; eval expression + 246 | 1 ampersand.s 246 | Code | 11 | | 3 | 00/19A3 : 20 52 E7 | jsr {$e752} ; convert to int + 247 | 1 ampersand.s 247 | Code | 11 | | 2 | 00/19A6 : A5 50 | lda {$50} + 248 | 1 ampersand.s 248 | Code | 11 | | 3 | 00/19A8 : 8D E6 18 | sta theFB + 249 | 1 ampersand.s 249 | Empty | 11 | | 0 | 00/19AB | + 250 | 1 ampersand.s 250 | Comment | 11 | | 0 | 00/19AB | *---------- It is now time to draw as we have all variables + 251 | 1 ampersand.s 251 | Empty | 11 | | 0 | 00/19AB | + 252 | 1 ampersand.s 252 | Code | 11 | | 3 | 00/19AB : AC E7 18 | ldy theINK ; the ink color + 253 | 1 ampersand.s 253 | Code | 11 | | 3 | 00/19AE : BE E9 18 | ldx oric2hgr,y ; from the Oric to the Apple II + 254 | 1 ampersand.s 254 | Code | 11 | | 3 | 00/19B1 : 20 EC F6 | jsr {$f6e9}+3 ; to skip CHRGET + 255 | 1 ampersand.s 255 | Empty | 11 | | 0 | 00/19B4 | + 256 | 1 ampersand.s 256 | Code | 11 | | 3 | 00/19B4 : AE 7F 18 | ldx theX ; HPLOT x,y + 257 | 1 ampersand.s 257 | Code | 11 | | 3 | 00/19B7 : AC 80 18 | ldy theX+1 + 258 | 1 ampersand.s 258 | Code | 11 | | 3 | 00/19BA : AD 81 18 | lda theY + 259 | 1 ampersand.s 259 | Code | 11 | | 3 | 00/19BD : 20 57 F4 | jsr {$f457} + 260 | 1 ampersand.s 260 | Empty | 11 | | 0 | 00/19C0 | + 261 | 1 ampersand.s 261 | Code | 11 | | 3 | 00/19C0 : AD E1 18 | lda theX2 ; TO x2,Y2 + 262 | 1 ampersand.s 262 | Code | 11 | | 3 | 00/19C3 : AE E2 18 | ldx theX2+1 + 263 | 1 ampersand.s 263 | Code | 11 | | 3 | 00/19C6 : AC E3 18 | ldy theY2 + 264 | 1 ampersand.s 264 | Code | 11 | | 3 | 00/19C9 : 20 3A F5 | jsr {$f53a} ; draw the line + 265 | 1 ampersand.s 265 | Empty | 11 | | 0 | 00/19CC | + 266 | 1 ampersand.s 266 | Code | 11 | | 2 | 00/19CC : A5 E0 | lda {$e0} ; save the updated coords + 267 | 1 ampersand.s 267 | Code | 11 | | 3 | 00/19CE : 8D 7F 18 | sta theX + 268 | 1 ampersand.s 268 | Code | 11 | | 2 | 00/19D1 : A5 E1 | lda {$e1} + 269 | 1 ampersand.s 269 | Code | 11 | | 3 | 00/19D3 : 8D 80 18 | sta theX+1 + 270 | 1 ampersand.s 270 | Code | 11 | | 2 | 00/19D6 : A5 E2 | lda {$e2} + 271 | 1 ampersand.s 271 | Code | 11 | | 3 | 00/19D8 : 8D 81 18 | sta theY + 272 | 1 ampersand.s 272 | Code | 11 | | 1 | 00/19DB : 60 | rts + 273 | 1 ampersand.s 273 | Empty | 11 | | 0 | 00/19DC | + 274 | 1 ampersand.s 274 | Comment | 11 | | 0 | 00/19DC | *----------------------------------- CIRCLE n,fb + 275 | 1 ampersand.s 275 | Empty | 11 | | 0 | 00/19DC | + 276 | 1 ampersand.s 276 | Empty | 11 | | 0 | 00/19DC | doC + 277 | 1 ampersand.s 277 | Code | 11 | | 3 | 00/19DC : 20 B1 00 | jsr {$b1} ; get next token + 278 | 1 ampersand.s 278 | Code | 11 | | 3 | 00/19DF : 20 67 DD | jsr {$dd67} ; eval expression + 279 | 1 ampersand.s 279 | Code | 11 | | 3 | 00/19E2 : 20 52 E7 | jsr {$e752} ; convert to int + 280 | 1 ampersand.s 280 | Code | 11 | | 2 | 00/19E5 : A5 50 | lda {$50} + 281 | 1 ampersand.s 281 | Code | 11 | | 3 | 00/19E7 : 8D E5 18 | sta theRADIUS ; the radius + 282 | 1 ampersand.s 282 | Empty | 11 | | 0 | 00/19EA | + 283 | 1 ampersand.s 283 | Code | 11 | | 3 | 00/19EA : 20 BE DE | jsr {$debe} ; check for comma + 284 | 1 ampersand.s 284 | Code | 11 | | 3 | 00/19ED : 20 67 DD | jsr {$dd67} ; eval expression + 285 | 1 ampersand.s 285 | Code | 11 | | 3 | 00/19F0 : 20 52 E7 | jsr {$e752} ; convert to int + 286 | 1 ampersand.s 286 | Code | 11 | | 2 | 00/19F3 : A5 50 | lda {$50} + 287 | 1 ampersand.s 287 | Code | 11 | | 3 | 00/19F5 : 8D E6 18 | sta theFB ; the foreground color + 288 | 1 ampersand.s 288 | Code | 11 | | 1 | 00/19F8 : 60 | rts + 289 | 1 ampersand.s 289 | Empty | 11 | | 0 | 00/19F9 | + 290 | 1 ampersand.s 290 | Comment | 11 | | 0 | 00/19F9 | *----------------------------------- INK fb + 291 | 1 ampersand.s 291 | Empty | 11 | | 0 | 00/19F9 | + 292 | 1 ampersand.s 292 | Empty | 11 | | 0 | 00/19F9 | doI + 293 | 1 ampersand.s 293 | Code | 11 | | 3 | 00/19F9 : 20 B1 00 | jsr {$b1} ; get next token + 294 | 1 ampersand.s 294 | Code | 11 | | 3 | 00/19FC : 20 67 DD | jsr {$dd67} ; eval expression + 295 | 1 ampersand.s 295 | Code | 11 | | 3 | 00/19FF : 20 52 E7 | jsr {$e752} ; convert to int + 296 | 1 ampersand.s 296 | Code | 11 | | 2 | 00/1A02 : A5 50 | lda {$50} + 297 | 1 ampersand.s 297 | Code | 11 | | 3 | 00/1A04 : 8D E7 18 | sta theINK + 298 | 1 ampersand.s 298 | Code | 11 | | 1 | 00/1A07 : 60 | rts + 299 | 1 ampersand.s 299 | Empty | 11 | | 0 | 00/1A08 | + 300 | 1 ampersand.s 300 | Comment | 11 | | 0 | 00/1A08 | *----------------------------------- PAPER fb + 301 | 1 ampersand.s 301 | Empty | 11 | | 0 | 00/1A08 | + 302 | 1 ampersand.s 302 | Empty | 11 | | 0 | 00/1A08 | doP + 303 | 1 ampersand.s 303 | Code | 11 | | 3 | 00/1A08 : 20 B1 00 | jsr {$b1} ; get next token + 304 | 1 ampersand.s 304 | Code | 11 | | 3 | 00/1A0B : 20 67 DD | jsr {$dd67} ; eval expression + 305 | 1 ampersand.s 305 | Code | 11 | | 3 | 00/1A0E : 20 52 E7 | jsr {$e752} ; convert to int + 306 | 1 ampersand.s 306 | Code | 11 | | 2 | 00/1A11 : A5 50 | lda {$50} + 307 | 1 ampersand.s 307 | Code | 11 | | 3 | 00/1A13 : 8D E8 18 | sta thePAPER + 308 | 1 ampersand.s 308 | Code | 11 | | 1 | 00/1A16 : 60 | rts + 309 | 1 ampersand.s 309 | Empty | 11 | | 0 | 00/1A17 | + 310 | 1 ampersand.s 310 | Comment | 11 | | 0 | 00/1A17 | *----------------------------------- HIRES + 311 | 1 ampersand.s 311 | Empty | 11 | | 0 | 00/1A17 | + 312 | 1 ampersand.s 312 | Empty | 11 | | 0 | 00/1A17 | doH + 313 | 1 ampersand.s 313 | Code | 11 | | 3 | 00/1A17 : 20 B1 00 | jsr {$b1} ; get next token + 314 | 1 ampersand.s 314 | Empty | 11 | | 0 | 00/1A1A | + 315 | 1 ampersand.s 315 | Code | 11 | | 2 | 00/1A1A : A9 00 | lda #0 + 316 | 1 ampersand.s 316 | Code | 11 | | 2 | 00/1A1C : 85 20 | sta {$20} + 317 | 1 ampersand.s 317 | Code | 11 | | 2 | 00/1A1E : A9 28 | lda #40 + 318 | 1 ampersand.s 318 | Code | 11 | | 2 | 00/1A20 : 85 21 | sta {$21} + 319 | 1 ampersand.s 319 | Code | 11 | | 2 | 00/1A22 : A9 14 | lda #20 + 320 | 1 ampersand.s 320 | Code | 11 | | 2 | 00/1A24 : 85 22 | sta {$22} + 321 | 1 ampersand.s 321 | Code | 11 | | 2 | 00/1A26 : A9 18 | lda #24 + 322 | 1 ampersand.s 322 | Code | 11 | | 2 | 00/1A28 : 85 23 | sta {$23} + 323 | 1 ampersand.s 323 | Code | 11 | | 3 | 00/1A2A : 20 58 FC | jsr {$fc58} + 324 | 1 ampersand.s 324 | Empty | 11 | | 0 | 00/1A2D | + 325 | 1 ampersand.s 325 | Code | 11 | | 3 | 00/1A2D : 20 E2 F3 | jsr {$f3e2} + 326 | 1 ampersand.s 326 | Code | 11 | | 3 | 00/1A30 : 8D 52 C0 | sta {$c052} + 327 | 1 ampersand.s 327 | Code | 11 | | 1 | 00/1A33 : 60 | rts + 328 | 1 ampersand.s 328 | Empty | 11 | | 0 | 00/1A34 | + 329 | 1 ampersand.s 329 | Comment | 11 | | 0 | 00/1A34 | *----------------------------------- WAIT x + 330 | 1 ampersand.s 330 | Empty | 11 | | 0 | 00/1A34 | + 331 | 1 ampersand.s 331 | Empty | 11 | | 0 | 00/1A34 | doW + 332 | 1 ampersand.s 332 | Code | 11 | | 3 | 00/1A34 : 20 B1 00 | jsr {$b1} ; get next token + 333 | 1 ampersand.s 333 | Code | 11 | | 3 | 00/1A37 : 20 67 DD | jsr {$dd67} ; eval expression + 334 | 1 ampersand.s 334 | Code | 11 | | 3 | 00/1A3A : 20 52 E7 | jsr {$e752} ; convert to int + 335 | 1 ampersand.s 335 | Empty | 11 | | 0 | 00/1A3D | + 336 | 1 ampersand.s 336 | Code | 11 | | 2 | 00/1A3D : A6 51 | ldx {$50}+1 + 337 | 1 ampersand.s 337 | Code | 11 | | 2 | 00/1A3F : A4 50 | doW1 ldy {$50} + 338 | 1 ampersand.s 338 | Code | 11 | | 2 | 00/1A41 : A9 3C | ozunid_2 lda #60 ; 1/100¸me de seconde + 339 | 1 ampersand.s 339 | Code | 11 | | 3 | 00/1A43 : 20 A8 FC | jsr {$fca8} + 340 | 1 ampersand.s 340 | Code | 11 | | 1 | 00/1A46 : 88 | dey + 341 | 1 ampersand.s 341 | Code | 11 | | 2 | 00/1A47 : D0 F8 | bne ozunid_2 + 342 | 1 ampersand.s 342 | Code | 11 | | 1 | 00/1A49 : CA | dex + 343 | 1 ampersand.s 343 | Code | 11 | | 2 | 00/1A4A : 10 F3 | bpl doW1 + 344 | 1 ampersand.s 344 | Code | 11 | | 1 | 00/1A4C : 60 | rts + 345 | 1 ampersand.s 345 | Empty | 11 | | 0 | 00/1A4D | + 346 | 1 ampersand.s 346 | Comment | 11 | | 0 | 00/1A4D | *----------------------------------- EXPLODE + 347 | 1 ampersand.s 347 | Empty | 11 | | 0 | 00/1A4D | + 348 | 1 ampersand.s 348 | Empty | 11 | | 0 | 00/1A4D | doE + 349 | 1 ampersand.s 349 | Code | 11 | | 3 | 00/1A4D : 20 B1 00 | jsr {$b1} + 350 | 1 ampersand.s 350 | Code | 11 | | 1 | 00/1A50 : 60 | rts + 351 | 1 ampersand.s 351 | Empty | 11 | | 0 | 00/1A51 | + 352 | 1 ampersand.s 352 | Comment | 11 | | 0 | 00/1A51 | *----------------------------------- RESTORE address + 353 | 1 ampersand.s 353 | Empty | 11 | | 0 | 00/1A51 | + 354 | 1 ampersand.s 354 | Empty | 11 | | 0 | 00/1A51 | doR + 355 | 1 ampersand.s 355 | Code | 11 | | 3 | 00/1A51 : 20 B1 00 | jsr {$b1} ; get next token + 356 | 1 ampersand.s 356 | Code | 11 | | 3 | 00/1A54 : 20 67 DD | jsr {$dd67} ; eval expression + 357 | 1 ampersand.s 357 | Code | 11 | | 3 | 00/1A57 : 20 52 E7 | jsr {$e752} ; convert to int + 358 | 1 ampersand.s 358 | Code | 11 | | 3 | 00/1A5A : 20 1A D6 | jsr {$d61a} ; find chosen line no. + 359 | 1 ampersand.s 359 | Empty | 11 | | 0 | 00/1A5D | + 360 | 1 ampersand.s 360 | Code | 11 | | 2 | 00/1A5D : A4 9C | ldy {$9b}+1 ; point DATPTR at byte before it + 361 | 1 ampersand.s 361 | Code | 11 | | 2 | 00/1A5F : A6 9B | ldx {$9b} + 362 | 1 ampersand.s 362 | Code | 11 | | 2 | 00/1A61 : D0 01 | bne dx + 363 | 1 ampersand.s 363 | Code | 11 | | 1 | 00/1A63 : 88 | dey + 364 | 1 ampersand.s 364 | Code | 11 | | 1 | 00/1A64 : CA | dx dex + 365 | 1 ampersand.s 365 | Code | 11 | | 2 | 00/1A65 : 84 7E | sty {$7d}+1 + 366 | 1 ampersand.s 366 | Code | 11 | | 2 | 00/1A67 : 86 7D | stx {$7d} + 367 | 1 ampersand.s 367 | Code | 11 | | 1 | 00/1A69 : 60 | rts + 368 | 1 ampersand.s 368 | Empty | 11 | | 0 | 00/1A6A | + 369 | 1 ampersand.s 369 | Comment | 11 | | 0 | 00/1A6A | *----------------------------------- GOSUB expression + 370 | 1 ampersand.s 370 | Empty | 11 | | 0 | 00/1A6A | + 371 | 1 ampersand.s 371 | Empty | 11 | | 0 | 00/1A6A | doG + 372 | 1 ampersand.s 372 | Code | 11 | | 2 | 00/1A6A : A9 03 | lda #3 ; make sure there's enough stack + 373 | 1 ampersand.s 373 | Code | 11 | | 3 | 00/1A6C : 20 D6 D3 | jsr {$d3d6} + 374 | 1 ampersand.s 374 | Empty | 11 | | 0 | 00/1A6F | + 375 | 1 ampersand.s 375 | Code | 11 | | 2 | 00/1A6F : A5 B9 | lda {$b8}+1 ; push marker for RETURN 376 | 1 ampersand.s 376 | Code | 11 | | 1 | 00/1A71 : 48 | pha - 377 | 1 ampersand.s 377 | Code | 11 | | 2 | 00/1A72 : A5 76 | lda {$75}+1 + 377 | 1 ampersand.s 377 | Code | 11 | | 2 | 00/1A72 : A5 B8 | lda {$b8} 378 | 1 ampersand.s 378 | Code | 11 | | 1 | 00/1A74 : 48 | pha - 379 | 1 ampersand.s 379 | Code | 11 | | 2 | 00/1A75 : A5 75 | lda {$75} + 379 | 1 ampersand.s 379 | Code | 11 | | 2 | 00/1A75 : A5 76 | lda {$75}+1 380 | 1 ampersand.s 380 | Code | 11 | | 1 | 00/1A77 : 48 | pha - 381 | 1 ampersand.s 381 | Code | 11 | | 2 | 00/1A78 : A9 B0 | lda #{$b0} + 381 | 1 ampersand.s 381 | Code | 11 | | 2 | 00/1A78 : A5 75 | lda {$75} 382 | 1 ampersand.s 382 | Code | 11 | | 1 | 00/1A7A : 48 | pha - 383 | 1 ampersand.s 383 | Empty | 11 | | 0 | 00/1A7B | - 384 | 1 ampersand.s 384 | Code | 11 | | 3 | 00/1A7B : 20 B1 00 | jsr {$b1} ; get next token - 385 | 1 ampersand.s 385 | Code | 11 | | 3 | 00/1A7E : 20 67 DD | jsr {$dd67} ; parse numeric expr - 386 | 1 ampersand.s 386 | Code | 11 | | 3 | 00/1A81 : 20 52 E7 | jsr {$e752} ; convert it to int - 387 | 1 ampersand.s 387 | Code | 11 | | 3 | 00/1A84 : 20 41 D9 | jsr {$d93e}+3 ; point at chosen statement - 388 | 1 ampersand.s 388 | Code | 11 | | 3 | 00/1A87 : 4C D2 D7 | jmp {$d7d2} ; start running it - 389 | 1 ampersand.s 389 | Empty | 11 | | 0 | 00/1A8A | - 390 | 1 ampersand.s 390 | Comment | 11 | | 0 | 00/1A8A | *--- End of code - 391 | 1 ampersand.s 391 | Empty | 11 | | 0 | 00/1A8A | - 392 | 1 ampersand.s 392 | Data | 11 | | 42 | 00/1A8A : A8 E3 A9 A0 | asc "(c) 2023, Antoine Vignau & Olivier Zardini" + 383 | 1 ampersand.s 383 | Code | 11 | | 2 | 00/1A7B : A9 B0 | lda #{$b0} + 384 | 1 ampersand.s 384 | Code | 11 | | 1 | 00/1A7D : 48 | pha + 385 | 1 ampersand.s 385 | Empty | 11 | | 0 | 00/1A7E | + 386 | 1 ampersand.s 386 | Code | 11 | | 3 | 00/1A7E : 20 B1 00 | jsr {$b1} ; get next token + 387 | 1 ampersand.s 387 | Code | 11 | | 3 | 00/1A81 : 20 67 DD | jsr {$dd67} ; parse numeric expr + 388 | 1 ampersand.s 388 | Code | 11 | | 3 | 00/1A84 : 20 52 E7 | jsr {$e752} ; convert it to int + 389 | 1 ampersand.s 389 | Code | 11 | | 3 | 00/1A87 : 20 41 D9 | jsr {$d93e}+3 ; point at chosen statement + 390 | 1 ampersand.s 390 | Code | 11 | | 3 | 00/1A8A : 4C D2 D7 | jmp {$d7d2} ; start running it + 391 | 1 ampersand.s 391 | Empty | 11 | | 0 | 00/1A8D | + 392 | 1 ampersand.s 392 | Comment | 11 | | 0 | 00/1A8D | *----------------------------------- GOTO expression + 393 | 1 ampersand.s 393 | Empty | 11 | | 0 | 00/1A8D | + 394 | 1 ampersand.s 394 | Empty | 11 | | 0 | 00/1A8D | doT + 395 | 1 ampersand.s 395 | Code | 11 | | 3 | 00/1A8D : 20 B1 00 | jsr {$b1} ; get next token + 396 | 1 ampersand.s 396 | Code | 11 | | 3 | 00/1A90 : 20 67 DD | jsr {$dd67} ; parse numeric expr + 397 | 1 ampersand.s 397 | Code | 11 | | 3 | 00/1A93 : 20 52 E7 | jsr {$e752} ; convert it to int + 398 | 1 ampersand.s 398 | Code | 11 | | 3 | 00/1A96 : 4C 41 D9 | jmp {$d93e}+3 ; point at chosen statement + 399 | 1 ampersand.s 399 | Empty | 11 | | 0 | 00/1A99 | + 400 | 1 ampersand.s 400 | Comment | 11 | | 0 | 00/1A99 | *--- End of code + 401 | 1 ampersand.s 401 | Empty | 11 | | 0 | 00/1A99 | + 402 | 1 ampersand.s 402 | Data | 11 | | 42 | 00/1A99 : A8 E3 A9 A0 | asc "(c) 2023, Antoine Vignau & Olivier Zardini" | | | | | | B2 B0 B2 B3 | | | | | | | AC A0 C1 EE | | | | | | | F4 EF E9 EE | @@ -429,5 +439,5 @@ | | | | | | E5 F2 A0 DA | | | | | | | E1 F2 E4 E9 | | | | | | | EE E9 | - 393 | 1 ampersand.s 393 | Empty | 11 | | 0 | 00/1AB4 | + 403 | 1 ampersand.s 403 | Empty | 11 | | 0 | 00/1AC3 | ------+-----------------------+-------------+----+---------+------+-----------------------+------------------------------------------------------------------- diff --git a/lemanoirdudocteurgenius/apple2/gagne.bas b/lemanoirdudocteurgenius/apple2/gagne.bas new file mode 100644 index 0000000..56815f8 --- /dev/null +++ b/lemanoirdudocteurgenius/apple2/gagne.bas @@ -0,0 +1,65 @@ +10 GOSUB 32000 +30 PRINT: PRINT: PRINT: PRINT: PRINT "Voulez-vous rejouer ?":GET X$ +40 IF X$="O" THEN PRINT CHR$(4);"RUN PRESENTATION" +50 IF X$="N" THEN GOTO 70 +60 GOTO 30 +70 HOME: PRINT: PRINT: PRINT: PRINT " AU REVOIR" +80 END + +32000 REM TEA FOR TWO +32001 GOSUB 33000 +32002 & R 32000: REM RESTORE +32003 RETURN +32004 FOR N=1 TO 166:READ Y$,Y$,Y$,Y$,Y$,Y$,Y$,Y$:NEXT +32005 FOR N=1 TO 110 +32010 READ A1,A2,A3 +32015 REM MUSIC1,A1,A2,10:PLAY1,0,0,100: & W A3 +32020 REM PLAY0,0,0,0 +32022 NEXT +32025 DATA 4,6,45,4,3,15,4,5,45,4,3,15,4,6,45,4,3,15,4,5,45 +32030 DATA 4,1,15,4,5,45,4,1,15,4,3,45,4,1,15,4,5,45,4,1,15 +32035 DATA4,3,45,4,1,15,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45 +32040 DATA4,3,15,4,5,45,4,1,30,4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,7,8 +32045 DATA4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,5,8,4,9,30,4,7,22,4,5,8 +32050 DATA4,7,30,4,7,22,4,5,8,4,9,30,4,9,22,4,5,8,4,7,30,4,7,22,4,5,8 +32055 DATA4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,7,8,4,10,30,4,10,22,4,7,8 +32060 DATA4,9,30,4,9,30,5,2,120,5,1,60,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45 +32065 DATA4,3,15,4,5,45,4,1,15,4,5,45,4,1,15,4,3,45,4,1,15,4,5,45,4,1,15 +32070 DATA4,3,45,4,1,15,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45,4,3,15,4,5,45 +32075 DATA4,1,30,5,3,45,5,3,15,5,1,45,5,1,15,4,11,45,4,11,15,4,10,45,4,10,15 +32080 DATA5,1,45,5,1,15,4,11,45,4,11,15,4,10,45,4,10,15,4,8,45,4,8,15 +32085 DATA4,6,45,4,3,15,4,5,45,4,3,15 +32090 DATA4,6,45,4,3,15,4,5,45,4,10,15,4,6,120 + +33000 TEXT:HOME:NORMAL +33002 GOSUB 50000 +33003 RETURN: REM LOGO +33005 FOR N=1 TO 331:READ Y$,Y$,Y$,Y$,Y$:NEXT:READ Y$,Y$,Y$ +33010 FOR N=46360 TO 46423 +33020 READ GH:POKE N,GH +33030 NEXT +33040 DATA 1,2,4,4,4,2,3,1,48,32,24,16,32,16,32,32 +33050 DATA 2,6,9,8,8,8,4,6,16,16,8,40,26,12,10,16 +33060 DATA 7,8,8,16,16,8,28,0,48,8,8,4,4,2,3,0 +33070 DATA 3,4,4,6,2,2,3,0,48,24,8,4,4,4,6,0 +33100 FOR N=48802 TO 48836 STEP 2 +33110 POKE N,35:POKE N+1,36:POKE N+40,37:POKE N+41,38:POKE N+80,39:POKE N+81,40 +33120 REM & W 48836-N +33130 POKE N,32:POKE N+40,32:POKE N+80,32 +33140 POKE N+1,35:POKE N+2,36:POKE N+41,37:POKE N+42,38:POKE N+81,41:POKE N+82,42 +33150 REM & W 48836-N +33160 POKE N+1,32:POKE N+41,32:POKE N+81,32 +33170 NEXT +33180 POKE N,32:POKE N+40,32:POKE N+80,32 +33190 REM CALL#F89B +33200 RETURN + +50000 PRINT +50010 PRINT " Cela est exceptionnel, vous etes le" +50020 PRINT "premier a etre sorti vivant de cette" +50030 PRINT "maison."; +50040 PRINT: PRINT +50050 PRINT " Mais si j'etais vous, je me mettrais" +50060 PRINT "a courir car un nain rode peut-etre" +50070 PRINT "dans les parages..." +50080 RETURN diff --git a/lemanoirdudocteurgenius/apple2/initialisation.bas b/lemanoirdudocteurgenius/apple2/initialisation.bas new file mode 100644 index 0000000..40e82e4 --- /dev/null +++ b/lemanoirdudocteurgenius/apple2/initialisation.bas @@ -0,0 +1,109 @@ +8000 REM CHARGEMENT VARIABLES +8001 REM RESTORE +8010 V=70:DIM V$(V) +8020 FOR N=1 TO V +8030 READ KO$ +8040 V$(N)=KO$ +8050 NEXT +8060 DATA 01N,01NORD,02S,02SUD,03E,03EST,04O,04OUEST,05MONT,05GRIM,06DESC +8070 DATA 10PREN,10RAMA,11POSE,12OUVR,13FERM,14ENTR,14AVAN,15ALLU,16ETEI +8080 DATA 17REPA,17DEPA,18LIS,19REGA,20RETO,21RENI,21SENS,22REMP,23VIDE +8090 DATA 24INVE,24LIST,25RIEN,25ATTE,26POIG,27COUT,28TOUR,29LAMP,30CODE +8100 DATA 31ESCA,32PIST,33PLAC,34TORC,35TELE,36MONS,37PETR,38POT,18LIT +8110 DATA 39CLEF,40PAPI,41LIVR,42BRIQ,43COMB,44COFF,45ROUG,46BLEU,47VERT +8120 DATA 48TITR,49ROBI,50CISE,51PORT +8124 DATA 52ACTI,53JETE,53LANCE,54EAU,55ENFI,55PASS,56APPU,56ENFO,57ENLE +8126 DATA 58RENT +8130 O=25:DIM O(O):DIM O$(O) +8140 FOR N=1 TO O +8150 READ KO +8160 O(N)=KO +8170 NEXT +8180 DATA 06,05,05,08,08,00,00,11,11 +8190 DATA 13,20,18,16,16,16,16,00,21 +8200 DATA 00,22,25,12,00,25,00 +8210 FOR N=1 TO O +8220 READ KO$ +8230 O$(N)=KO$ +8240 NEXT +8250 DATA UNE TORCHE ELECTRIQUE,UN ROBINET,UN CISEAU,UN TOURNEVIS +8260 DATA UNE LAMPE A PETROLE,UNE LAMPE PLEINE,UNE LAMPE ALLUME,UN COUTEAU +8270 DATA UN PAPIER,UN LIVRE,DU PETROLE DANS UN LAVABO BOUCHE +8280 DATA UNE CLEF,UN BOUTON ROUGE,UN BOUTON BLEU +8290 DATA UN BOUTON VERT,UN TELEPORTEUR,UN TELEPORTEUR REPARE +8300 DATA UNE COMBINAISON ARGENTEE,UNE COMBINAISON ENFILEE,UN MONSTRE ALL'EST +8310 DATA UN PISTOLET,UN BRIQUET,UN BRIQUET ALLUME,UN POT,UN POT PLEIN D'EAU +8320 M=25:DIM M$(M) +8330 FOR N=1 TO M +8340 READ KO$ +8350 M$(N)=KO$ +8360 NEXT +8370 DATA 00,0403030400,030200,04020305010600,04040107032000,020400 +8380 DATA 04080109020500,030700,04130207031000 +8390 DATA 0409021100,0110031200,041100,030900,0209031500,00,00 +8400 DATA00,00,0122032100,040500,0125022200,012100 +8410 DATA 0124042200,022300,022100 +8430 A=128:DIM A$(A) +8440 FOR N=1 TO A +8450 READ KO$ +8460 A$(N)=KO$ +8470 NEXT +8480 DATA 1400A01.I02D02M.,0500A03D08.D03N.,0500A03E08E09D24.D04D05I19E02M. +8485 DATA 0500A03E08D24.D04D06N. +8490 DATA 0500A03E07.I19M.,0500A03E03.I19M.,0500A03.I19E02M.,0600A19D08.D03N. +8500 DATA0600A19E08E09D24.D04D05I03M.,0600A19E08D24.D04D06N.,0600A19.I03M. +8505 DATA 0100A09E07B22.D07N. +8510 DATA 0100A09E03B05.D07N.,0100A09.I14E02M.,0100A14.I16E02M. +8515 DATA 0200A16E07B22.D07N.,0200A16E03B05.D07N. +8520 DATA 0200A16.I14E02M.,0400A15E03B05.D07N.,0400A15E07B22.D07N. +8522 DATA 0400A15.I14E02M.,0100A15E03.I17M.,0100A15E07.I17M.,0100A15.I17E02M. +8525 DATA 0200A17.F01I15M. +8530 DATA 0300A17.D08N.,0400A17.D09K.,0300A18.D10F03E01E02I17M. +8531 DATA 0400A21E03.I19M. +8535 DATA 0400A21E07.I19M.,0400A21.I19E02M.,0200A22E03.I19M.,0200A22E07.I19M. +8540 DATA 0200A22.I19E02M.,0200A19.D11N.,0400A19.D11N.,0300A22.D12I23M. +8541 DATA 2500A01.D13.,2500I01.D14K.,1244A03.D15M.,1034B01.B01J.,1027B08.B08J. +8545 DATA 1028B04.B04J.,1029B05.B05J.,1032B21.B21J.,1038B24.B24J. +8548 DATA 1039B12.B12J.,1040B09.B09J.,1041B10.B10J.,1043B18.B18J. +8550 DATA 1050B03.B03J.,1042B22.B22J.,1037A20B05.H11P05E05D16K.,1037A20.D17K. +8553 DATA 1134.C01J.,1127.C08J.,1128.C04J.,1129.C05J.,1132.C21J.,1138.C24J. +8555 DATA 1143E09.D62K. +8556 DATA 1139.C12J.,1140.C09J.,1141.C10J.,1143.C18J.,1150.C03J.,1142.C22J. +8560 DATA 2400.A00L.,1249A05.E04D20G0405J.,1349A05.F04J.,2238A05E04.P24E08J. +8563 DATA 2338A05E08.F08P24J.,2338E08.D21N.,1848B10.D22L.,1841B10.D23N. +8566 DATA1840B09.D24K.,2040B09.D25K.,1951A02.D26M.,1951.D27K.,2100A14.D28K. +8570 DATA 2100.D29K.,1542C22.D33K.,1542E07.D30K.,1542A14.D07N. +8575 DATA 1542A17E01.D10K.,1542E02.F02E07E06P22M.,1542.E07P22J. +8580 DATA 1529C05.D33K.,1529E03.D30K.,1529F07.D31L.,1529F05.D32L. +8590 DATA 1529E02.F02E03E06P06P05M.,1529.E03P06P05J. +8595 DATA 1642C22.D33K.,1642F07.D30K.,1642E06E03.D36F07P22M. +8597 DATA 1642E06.E02F07F06P22M. +8600 DATA 1642.F07P22M.,1629C05.D33K.,1629F03.D30K.,1629E07E06.D34F03P05M. +8605 DATA 1629E06.E02F06F03P05M.,1629.F03P05M.,1534B01.D35N. +8610 DATA 1735I16.D45K.,1735E02.D43K.,1735F03.D44K.,1735C04.D46K. +8615 DATA 1735.P16E10J.,5600A16F10.D47K.,5646A16.D48N.,5647A16.D48N. +8620 DATA 5645A16F09.D50D06N.,5645A16.D49I18M.,5543D18E09.D30K. +8625 DATA 5543D18.P18E09J.,574& E AND18F09.D30K.,5743D18.P18F09J. +8630 DATA 1233A24C12.D51K.,1233A24C03.D52N.,1233A24.G0503E11D63K. +8635 DATA 2636E11.D54F11D55K.,5350E11.D54F11D55K.,5232B21.D56N. +8640 DATA 5830F08.D57.,5830.D58D59.,1233A06.D61M. +8650 DATA 1233A25.D64N. +8700 PL=INT(RND(1)*9000+1000) +8800 C=14:DIMC$(C) +8810 FOR N=1 TO C +8820 READ KO$ +8830 C$(N)=KO$ +8840 NEXT N +8850 DATA G03E03.D00N.,G04E04.D01N.,I14I16I17I19.F02.,G07E07.D18N.,GO1.D19N. +8860 DATA H06C03C08.D37N.,H08D08.D39L.,H06D03.D38L.,G08E08B24.D40D21N. +8870 DATA H02.D41N.,G09E02.D42N.,G05E11.D52N.,I24E11.D53D52N.,.L. + +8955 DIM P(13):P(11)=0:P(12)=0 +8960 SAL=1 +8970 FOR N=1 TO 10 +8980 P(N)=0:C(N)=0 +8985 NEXT +8990 C(3)=14:C(7)=12:C(1)=80:C(9)=12 + +9000 PRINT CHR$(4);"BLOAD CHAIN,A520" +9010 CALL 520"JEU" diff --git a/lemanoirdudocteurgenius/apple2/jeu complet.bas b/lemanoirdudocteurgenius/apple2/jeu complet.bas new file mode 100644 index 0000000..6076d4b --- /dev/null +++ b/lemanoirdudocteurgenius/apple2/jeu complet.bas @@ -0,0 +1,888 @@ +1 REM +2 REM COPYRIGHT LORICIELS 83 L.BENES +3 REM LE MANOIR DU DOCTEUR GENIUS +4 REM +5 REM VERSION APPLE II REALISEE EN 2023 +6 REM PAR BRUTAL DELUXE SOFTWARE : ANTOINE VIGNAU & OLIVIER ZARDINI +7 REM +9 REM ... COPYRIGHT LORICIELS TOUT DROIT DE REPRODUCTION INTERDIT ..... + +45 HOME: PRINT: PRINT " VEUILLEZ PATIENTER" +50 GOSUB 8000 'CHARGEMENT VARIABLES +55 & H:DIM P(12):P(11)=0:P(12)=0 +60 SALLE=1 +70 FOR N=1 TO 10 +80 P(N)=0:C(N)=0 +85 NEXT +90 C(3)=14:C(7)=12:C(1)=80:C(9)=12 +100 IFSALLE<>14ANDSALLE<>16ANDSALLE<>17ANDSALLE<>19 THEN P(2)=0 +105 IF P(2)=0 THEN 200 +106 IF O(22)=SA AND P(7)=1 THEN 200 +107 IF O(05)=SA AND P(3)=1 THEN 200 +110 IF C(9)>1 THEN C(9)=C(9)-1 +130 & H +140 PRINT "Il fait noir comme dans un four,il faudrait peut etre allumer" +145 IF PEEK(-16384)>128 THEN & W 500 ELSE & W 300 +150 POKE -16368,0: GOTO 500 +200 REM DESCRIPTION SALLE +210 PRINT +220 & G (7000+SALLE*10)-10 +300 H=0:N=1 +310 IF O(N)<>SALLE THEN 400 +320 IF H=1 THEN GOTO 350 +330 PRINT "Il y a dans la salle:": & W 100 +340 H=1 +350 PRINT " ";O$(N); +360 & W 150 +400 N=N+1 +410 IF N<=O THEN 310 +420 PRINT "" +500 REM ACCEPTATION COMMANDE +510 T=1:Y$(1) ="":Y$(2)="":N=0 +520 GOTO 1000 +530 IF C(7)>1 AND P(7)=1 THEN C(7)=C(7)-1 +540 IF C(3)>1 AND P(3)=1 THEN C(3)=C(3)-1 +545 IF C(4)>1 AND P(4)=1 THEN C(4)=C(4)-1 +547 IF C(5)>1 THEN C(5)=C(5)-1 +550 INPUT"Que faites vous";X$ +560 HOME:PRINTX$ +570 GOSUB 6000 +580 IF MO$(1)="00" THEN PRINT "Je ne comprends pas...": & W 200:GOTO100 +900 REM CONTROLE Mvt +910 Z=1 +920 T$=MID$(M$(SALLE),Z,2) +930 IF T$="00" THEN 980 +940 IF T$<>MO$(1) THEN 970 +950 SALLE=VAL(MID$(M$(SALLE),Z+2,2)) +960 GOTO 100 +970 Z=Z+4:GOTO920 +980 T=0 +990 A1=0 + +1000 REM CONTROLE +1010 NL=0 +1100 NL=NL+1 +1110 IF T=0 THEN GOTO 1150 +1120 E$=C$(NL) +1130 GOTO 1400 +1150 IF NL<=A THEN 1200 +1159 PY=23:CO=12 +1160 IF A1=1 THEN GOTO 500 +1170 PRINT "Impossible "; +1180 IF VAL(MO$(1))<10 THEN PRINT "de prendre ce chemin"; +1190 PRINT "!":GOTO 100 +1200 IF MID$(A$(NL),1,2)<>MO$(1) THEN 1100 +1210 Y$=MID$(A$(NL),3,2) +1220 IF Y$<>"00" AND Y$<>MO$(2) THEN 1100 +1230 E$=MID$(A$(NL),5) +1400 REM CONDITIONS +1410 E=1 +1420 IF MID$(E$,E,1)="." THEN 1700 +1430 LI=ASC(MID$(E$,E,1))-65 +1440 N=VAL(MID$(E$,E+1,2)) +1450 & G 1500+LI*10 +1460 IF OK=0 THEN 1100 +1470 E=E+3:GOTO1420 +1500 IF N=SALLE THEN OK=1 ELSE OK=0 +1505 RETURN +1510 IF O(N)=-1 OR O(N)=SALLE THEN OK=1 ELSE OK=0 +1515 RETURN +1520 IF O(N)<>SALLE AND O(N)<>-1 THEN OK=1 ELSE OK=0 +1525 RETURN +1530 IF O(N)=-1 THEN OK=1 ELSE OK=0 +1535 RETURN +1540 IF P(N)=1 THEN OK=1 ELSE OK=0 +1545 RETURN +1550 IF P(N)=0 THEN OK=1 ELSE OK=0 +1555 RETURN +1560 IF C(N)=1 THEN OK=1 ELSE OK=0 +1565 RETURN +1570 IF INT(RND(1)*99+1)SALLE THEN OK=1 ELSE OK=0 +1585 RETURN +1700 REM ACTIONS +1705 E=E+1:A1=1 +1710 IF MID$(E$,E,1)="." THEN 1100 +1720 LI=ASC(MID$(E$,E,1))-65 +1730 IF MID$(E$,E+1,1)<>"." THEN N=VAL(MID$(E$,E+1,2)) +1740 BREAK=0 +1750 & G 1800+LI*100 +1760 IF BREAK<>0 THEN GOTO BREAK +1780 E=E+3 +1790 GOTO 1710 +1800 G=0:HH=0 +1810 G=G+1 +1820 IF O(G)=-1 THEN GOTO 1840 +1830 IF G-1 THEN 1960 +1935 REM CE PROGRAMMEEST LA PROPRIETE DE L.WEILL LORICIELS +1940 PRINT "Vous l'avez deja,vous etes etourdit etdans cette maison ce n'est pas" +1945 & W 400 +1950 PRINT "tres conseille...":GOTO1920 +1960 O(N)=-1:S(1)=S(1)+1: RETURN +2000 IF O(N)=-1 THEN 2030 +2010 PRINT "Comment voulez vous poser ce que vous n'avez pas" +2020 GOTO 1920 +2030 O(N)=SALLE:S(1)=S(1)-1: RETURN +2100 HOME: & G 4000+N*10 +2110 RETURN +2200 P(N)=1: RETURN +2300 P(N)=0: RETURN +2400 C(N)=VAL(MID$(A$(N),E+3,2)):E=E+2: RETURN +2500 IF O(N)=-1 THEN S(1)=S(1)-1 +2510 O(N)=0 : RETURN +2600 SALLE=N: RETURN +2700 PRINT "D'accord..." +2710 & W 150:BREAK=300: RETURN +2800 BREAK=500 +2810 RETURN +2900 BREAK=530: RETURN +3000 BREAK=100: RETURN +3100 POP:GOTO20000 +3200 O(N)=SALLE: RETURN +3300 X$=O$(N):O$(N)=O$(N+1):O$(N+1)=X$: RETURN + +4000 & H: FOR N = 1 TO 20: & E : & W 4: NEXT +4001 PRINT "Vous avez gardez la lampe trop longtemps allumee,elle a explose" +4005 & W 400: RETURN +4010 & H +4011 PRINT "Vous avez oubliez de fermer le robinetvous mourez sous des tonnes d'eau" +4015 & W 500: RETURN +4020 & H +4022 PRINT "Lapporte vient de se refermer derrierevous,vous voila prisonnier..." +4025 & W 500: RETURN +4030 & H +4031 PRINT "Vous avez trebuche dans l'escalier,vous vous empallez sur le couteau!" +4035 & W 500: RETURN +4040 & H +4041 PRINT "Vous renversez l'eau dans l'escalier, ce qui provoque une decharge"; +4042 PRINT " de la": & W 300:PRINT "prise electrique" +4045 & W 300: RETURN +4050 & H +4051 PRINT "Vous etes sauf grace a la combinaison que vous avez enfile..!" +4055 & W 500: RETURN +4060 PRINT "Vous mourrez electrocute..." +4065 & W 300: RETURN +4070 & H: REM FOR N=1 TO 20:MUSIC2,2,2,10:PLAY3,7,4,80: & W 1: & E : & W 6:NEXT +4071 PRINT "La piece etait pleine de gaz explosif,vous auriez du eteindre..." +4072 & W 500:HOME:PRINT "On ramassera vos morceaux un autre jour..!" +4075 & W 300: RETURN +4080 & H +4081 PRINT "Vous mourez empalle sur des lances sorties du mur...!" +4085 & W 400: RETURN +4090 REM +4091 PRINT "La porte ne s'ouvre pas de cette piece": & W 300: RETURN +4100 & H +4101 PRINT "La lampe et le briquet refusent de marcher dans cette piece" +4105 & W 400: RETURN +4110 & H +4111 PRINT "Vous tombez dans une trappe,vous vous disloquez en arrivant au sol.." +4115 & W 500: RETURN +4120 REM +4121 PRINT "Vous avez raison de passer,car ce monstre n'etait qu'une projection" +4124 & W 400:PRINT "en 3 dimentions sur un ecran de fumee" +4125 & W 250: RETURN +4130 REM +4131 PRINT "Vous avez raison,la curiosite est un vilain defaut!!!" +4132 & W 400 +4133 POP:TEXT:PRINT:PRINT:PRINTSPC(12)"AU REVOIR" +4135 & W 200:GOTO 20100 +4140 PRINT "Vous avez raison d'attendre,mais cela ne pourra pas durer"; +4141 PRINT " eternellement.." +4142 & W 450: RETURN +4150 : & H:PRINT "Vous avez de la chance car ce coffre etait ouvert.": & W 400 +4152 PRINT "Un message a l'interieur dit:": & W 250:PRINT "Ne respectez pas les "; +4154 PRINT "couleurs du":PRINT "code de la route...?": & W 500 +4156 PRINT "Tiens le coffre se referme": & W 200: RETURN +4160 PRINT "Maintenant,vous avez une lampe pleine de petrole" +4165 & W 400: RETURN +4170 PRINT "Vous n'avez rien pour transporter le petrole": & W 400: RETURN +4180 & H:PRINT "Le briquet que vous aviez laisse allume vient d'exploser" +4181 FOR N=1 TO 10: & E : & W 6:NEXT +4185 & W 300:PRINT "Ca tue l'etourderie.....": & W 200: RETURN +4190 & H:PRINT "A force de marcher en long et en large dans cette maison," +4195 & W 300:PRINT "vous sombrez dans un coma des plus mortel...": & W 300: RETURN +4200 PRINT "L'eau coule...": RETURN +4210 & H:PRINT "Vous avez les pieds trempes,et cela vous rend tres malade..." +4215 & W 400:PRINT "Vous mourez d'une triple pneumonie...!": & W 300: RETURN +4220 PRINT "Le titre est:": & W 200:PRINT "La mort a la premiere page.": & W 300: RETURN +4230 & H:FOR N=1 TO 20: & E :NEXT +4233 PRINT "Le livre a explose lorsque vous l'avezouvert...": & W 400: RETURN +4240 PRINT "Le papier indique: Cherchez la clef.": & W 300: RETURN +4250 PRINT "La clef vous permettera de trouver le code de la porte d'entree." +4255 & W 400: RETURN +4260 & H:PRINT "Il y a , a cote de la porte,un claviernumerique permettant "; +4265 PRINT "d'entrer un code": & W 400: RETURN +4270 PRINT "Pour faire quoi..?": & W 200: RETURN +4280 PRINT "Il y a une odeur de gaz.": & W 300: RETURN +4290 PRINT "Apparement,il n'y a occune odeur mais...": & W 300: RETURN +4300 PRINT "C'est deja fait,espece de rigolo": & W 300: RETURN +4310 PRINT "Il faudrait peut etre du feu": & W 300: RETURN +4320 PRINT "La lampe ne contient pas de petrole": & W 300: RETURN +4330 PRINT "Vous ne l'avez pas": & W 200: RETURN +4340 PRINT "Le briquet est encore allume et il eclaire la piece."& W 300: RETURN +4350 FOR N=1 TO 15: & E : & W 4:NEXT +4355 PRINT "La torche etait piegee,elle vous explose dans les mains.." +4357 & W 400: RETURN +4360 PRINT "La lampe est encore allumee,et elle vous eclaire": & W 300: RETURN +4370 & H:PRINT "Un nain vient de vous lancer un poignard en plein coeur.." +4375 & W 300: RETURN +4380 PRINT "Un nain vient de se precipiter sur vous,il s'empalle sur votre"; +4385 PRINT " ciseau": & W 400: RETURN +4390 PRINT "Un nain vient de se precipiter sur vous,il s'empalle sur votre"; +4395 PRINT " couteau": & W 400: RETURN +4400 & H:PRINT "Vous venez de renverser le pot": & W 150: RETURN +4410 & H:PRINT "La foudre vient de tomber sur la maison": & W 200 +4412 PRINT "La maison n'existe plus,vous non plus": & W 200: RETURN +4420 & H:PRINT "A force de marcher dans le noir,vous avez trebuche": & W 200 +4425 PRINT "Vous mourez d'une fracture du crane...": & W 200: RETURN +4430 PRINT "Vous ne pouvez pas travailler dans le noir...": & W 300: RETURN +4440 PRINT "La lumiere du briquet ne suffit pas pour travaillez...": & W 400: RETURN +4450 PRINT "Impossible !": & W 100: RETURN +4460 PRINT "Vous n'avez aucun outil..": & W 250: RETURN +4470 PRINT "Le teleporteur est en panne,donc les boutons ne fonctionnent pas." +4475 & W 400: RETURN +4480 FOR N=1 TO 25: & E : & W 5:NEXT +4484 PRINT "Le teleporteur vient d'exploser,vous etes decompose..!": & W 400: RETURN +4490 PRINT "Le teleporteur se met en marche,vous disparaissez" +4491 REM MUSIC2,1,5,0:PLAY2,1,3,1000 +4492 FOR N=1 TO 12 +4493 & P 4: & W 8: & P 1: & W 8: & P 3: & W 8: & P 4: & W 8: & P 1: & W 8 +4494 NEXT: & P 0: REM PLAY0,0,0,0 +4495 FOR N=500 TO 30 STEP-5 +4497 NEXT: REM SOUND2,N,12:PLAY2,0,0,100:NEXT +4498 RETURN : REM PLAY0,0,0,0 : & H: RETURN +4500 & H:PRINT "Vous prenez du 30000 Volts dans les doigts,": & W 300: RETURN +4510 PRINT "Le placard est ferme a clef": & W 150: RETURN +4520 & H:PRINT "L'horrible monstre sorti du placard vient de vous devorer" +4525 & W 400: RETURN +4530 PRINT "Il ne fallait pas fuir": & W 200: RETURN +4540 & H:PRINT "Vous avez raison d'utiliser le ciseau,le monstre est mort" +4545 & W 400: RETURN +4550 PRINT "A l'interieur du placard,le No "PL" est inscrit": & W 300 +4555 PRINT "Le placard se referme.": & W 150: RETURN +4560 & H:FOR N=1 TO 30: & E : & W 5:NEXT:PRINT "le pistolet a explose": & W 200 +4565 RETURN +4570 & H:FOR N=1 TO 25: & E : & W 7:NEXT: +4575 PRINT "le clavier numerique a explose": & W 250: RETURN +4580 & H:PRINT "Le clavier numerique prends feu, heureusement,vous aviez "; +4582 & W 300:PRINT "un pot plein": & W 100 +4585 PRINT "d'eau qui vous a permis d'eteindre ce feu" +4586 & W 400: RETURN +4590 & H:INPUT"No DE CODE";ZC +4595 IF ZC<>PL THEN GOTO 4570 +4600 & W 200:PRINT "Le code est exact...":POP:PRINT "La porte s'ouvre..." +4603 & W 400 +4605 GOSUB 10000: PRINT "Vous voila en dehors de la maison..." +4608 GOSUB 32000: GOTO 20100 +4610 & H:PRINT "A l'interieur du placard,il y a un motqui parle d'un teleporteur" +4615 & W 400:PRINT "Tiens le placard se ferme tout seul...": & W 150: RETURN +4620 PRINT "Avant de la poser par terre,il faudrait peut etre l'enlever." +4625 & W 350: RETURN +4630 & H:PRINT "Il y a un horrible monstre devant vousqui est sortie du placart." +4635 & W 400: RETURN +4640 & H:PRINT "Le placard etait piege,vous n'auriez pas du l'ouvrir" +4645 FOR N=1 TO 30: & E : & W 7:NEXT +4647 & W 150: RETURN + +6000 REM ANALYSE DU MOT +6010 N=0:GN=0 +6020 REPEAT:N=N+1 +6030 UNTIL MID$(X$,N,1)<>" " +6040 REPEAT:GN=GN+1 +6050 UNTIL MID$(X$,N+GN,1)=" "OR MID$(X$,N+GN,1)="" OR GN=20 +6060 IF GN>4 THEN GN=4 +6070 X$(1)=MID$(X$,N,GN) +6080 REPEAT:N=N+1 +6090 UNTIL MID$(X$,N,1)=" "OR MID$(X$,N,1)="" +6100 REPEAT:N=N+1 +6110 UNTIL MID$(X$,N,1)<>" " +6115 GN=0 +6120 REPEAT:GN=GN+1 +6130 UNTIL MID$(X$,N+GN,1)=" "OR MID$(X$,N+GN,1)="" OR GN=20 +6140 IF GN>4 THEN GN=4 +6150 X$(2)=MID$(X$,N,GN) +6160 FOR W=1 TO 2:N=0:MO$(W)="00" +6170 N=N+1 +6180 IF N>V THEN W=3:GOTO 6300 +6190 IF MID$(V$(N),3,4)=X$(W) THEN GOTO 6250 +6200 GOTO 6170 +6250 MO$(W)=MID$(V$(N),1,2) +6300 NEXT W +6310 RETURN + +7000 GOSUB 10000 +7005 PRINT "Vous etes devant le manoir du defunt":PRINT: & W 250 +7006 PRINT SPC(12)"Dr GENIUS" +7007 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7008 POKE -16368,0: RETURN +7010 GOSUB 10100 +7015 PRINT "Vous etes dans le hall d'entree." +7016 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7017 POKE -16368,0: RETURN +7020 GOSUB 10200 +7024 PRINT "Vous etes en bas de l'escalier menant au 2eme etage" +7025 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7026 POKE -16368,0: RETURN +7030 F1=0: GOSUB 10300 +7034 PRINT "Vous etes dans la salle a manger." +7035 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7036 POKE -16368,0: RETURN +7040 F1=1: GOSUB 10300 +7043 PRINT "Vous etes dans une biblioteque sans livre...!" +7045 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7046 POKE -16368,0: RETURN +7050 GOSUB 10500 +7053 PRINT "Vous etes dans une buanderie" +7055 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7056 POKE -16368,0: RETURN +7060 GOSUB 10600 +7063 PRINT "Vous etes dans le salon" +7065 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7066 POKE -16368,0: RETURN +7070 LX=0: GOSUB 10700 +7073 PRINT "Vous etes dans une chambre." +7075 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7076 POKE -16368,0: RETURN +7080 GOSUB 10800 +7083 PRINT "Vous etes dans un corridor" +7085 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7086 POKE -16368,0: RETURN +7090 LX=0: GOSUB 10900 +7093 PRINT "Vous etes dans une salle d'attente." +7095 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7096 POKE -16368,0: RETURN +7100 LX=0: GOSUB 11000 +7103 PRINT "Vous etes dans le vestibules" +7105 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7106 POKE -16368,0: RETURN +7110 LX=2: GOSUB 10700 +7113 PRINT "Vous etes dans la chambre d'amis." +7115 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7116 POKE -16368,0: RETURN +7120 LX=1: GOSUB 10700 +7123 PRINT "Vous etes dans une chambre." +7125 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7126 POKE -16368,0: RETURN +7140 LX=2: GOSUB 12200 +7143 PRINT "Vous etes dans une petite salle" +7145 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7146 POKE -16368,0: RETURN +7150 GOSUB 11500 +7153 PRINT "Vous etes dans le laboratoire du Dr GENIUS" +7155 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7156 POKE -16368,0: RETURN +7160 LX=1: GOSUB 10900 +7163 PRINT "Vous etes dans une petite piece vide." +7165 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7166 POKE -16368,0: RETURN +7170 GOSUB 11700 +7173 PRINT "Vous etes...": & W 300:PRINT "Justement,vous ne savez pas ou vous etes" +7175 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7176 POKE -16368,0: RETURN +7180 GOSUB 11800 +7183 PRINT "Vous etes en haut de l'escalier" +7185 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7186 POKE -16368,0: RETURN +7190 LX=2: GOSUB 10900 +7193 PRINT "Vous etes dans la salle bain" +7195 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7196 POKE -16368,0: RETURN +7200 LX=1: GOSUB 12200 +7203 PRINT "Vous etes dans le living room" +7205 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7206 POKE -16368,0: RETURN +7210 LX=1: GOSUB 11000 +7213 PRINT "Vous etes dans une piece enfumee...!" +7215 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7216 POKE -16368,0: RETURN +7220 LX=0: GOSUB 12200 +7223 PRINT "Vous etes dans une grande piece" +7225 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7226 POKE -16368,0: RETURN +7230 GOSUB 12300 +7233 PRINT "Vous etes dans une piece de rangement" +7235 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7236 POKE -16368,0: RETURN +7240 GOSUB 12400 +7243 PRINT "Vous etes dans le dressing" +7245 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +7246 POKE -16368,0: RETURN + +8000 REM CHARGEMENT VARIABLES +8001 & R 8000: REM RESTORE +8010 V=70:DIM V$(V) +8020 FOR N=1 TO V +8030 READ KO$ +8040 V$(N)=KO$ +8050 NEXT +8060 DATA 01N,01NORD,02S,02SUD,03E,03EST,04O,04OUEST,05MONT,05GRIM,06DESC +8070 DATA 10PREN,10RAMA,11POSE,12OUVR,13FERM,14ENTR,14AVAN,15ALLU,16ETEI +8080 DATA 17REPA,17DEPA,18LIS,19REGA,20RETO,21RENI,21SENS,22REMP,23VIDE +8090 DATA 24INVE,24LIST,25RIEN,25ATTE,26POIG,27COUT,28TOUR,29LAMP,30CODE +8100 DATA 31ESCA,32PIST,33PLAC,34TORC,35TELE,36MONS,37PETR,38POT,18LIT +8110 DATA 39CLEF,40PAPI,41LIVR,42BRIQ,43COMB,44COFF,45ROUG,46BLEU,47VERT +8120 DATA 48TITR,49ROBI,50CISE,51PORT +8124 DATA 52ACTI,53JETE,53LANCE,54EAU,55ENFI,55PASS,56APPU,56ENFO,57ENLE +8126 DATA 58RENT +8130 O=25:DIM O(O):DIM O$(O) +8140 FOR N=1 TO O +8150 READ KO +8160 O(N)=KO +8170 NEXT +8180 DATA 06,05,05,08,08,00,00,11,11 +8190 DATA 13,20,18,16,16,16,16,00,21 +8200 DATA 00,22,25,12,00,25,00 +8210 FOR N=1 TO O +8220 READ KO$ +8230 O$(N)=KO$ +8240 NEXT +8250 DATA UNE TORCHE ELECTRIQUE,UN ROBINET,UN CISEAU,UN TOURNEVIS +8260 DATA UNE LAMPE A PETROLE,UNE LAMPE PLEINE,UNE LAMPE ALLUME,UN COUTEAU +8270 DATA UN PAPIER,UN LIVRE,DU PETROLE DANS UN LAVABO BOUCHE +8280 DATA UNE CLEF,UN BOUTON ROUGE,UN BOUTON BLEU +8290 DATA UN BOUTON VERT,UN TELEPORTEUR,UN TELEPORTEUR REPARE +8300 DATA UNE COMBINAISON ARGENTEE,UNE COMBINAISON ENFILEE,UN MONSTRE ALL'EST +8310 DATA UN PISTOLET,UN BRIQUET,UN BRIQUET ALLUME,UN POT,UN POT PLEIN D'EAU +8320 M=25:DIM M$(M) +8330 FOR N=1 TO M +8340 READ KO$ +8350 M$(N)=KO$ +8360 NEXT +8370 DATA 00,0403030400,030200,04020305010600,04040107032000,020400 +8380 DATA 04080109020500,030700,04130207031000 +8390 DATA 0409021100,0110031200,041100,030900,0209031500,00,00 +8400 DATA00,00,0122032100,040500,0125022200,012100 +8410 DATA 0124042200,022300,022100 +8430 A=128:DIM A$(A) +8440 FOR N=1 TO A +8450 READ KO$ +8460 A$(N)=KO$ +8470 NEXT +8480 DATA 1400A01.I02D02M.,0500A03D08.D03N.,0500A03E08E09D24.D04D05I19E02M. +8485 DATA 0500A03E08D24.D04D06N. +8490 DATA 0500A03E07.I19M.,0500A03E03.I19M.,0500A03.I19E02M.,0600A19D08.D03N. +8500 DATA0600A19E08E09D24.D04D05I03M.,0600A19E08D24.D04D06N.,0600A19.I03M. +8505 DATA 0100A09E07B22.D07N. +8510 DATA 0100A09E03B05.D07N.,0100A09.I14E02M.,0100A14.I16E02M. +8515 DATA 0200A16E07B22.D07N.,0200A16E03B05.D07N. +8520 DATA 0200A16.I14E02M.,0400A15E03B05.D07N.,0400A15E07B22.D07N. +8522 DATA 0400A15.I14E02M.,0100A15E03.I17M.,0100A15E07.I17M.,0100A15.I17E02M. +8525 DATA 0200A17.F01I15M. +8530 DATA 0300A17.D08N.,0400A17.D09K.,0300A18.D10F03E01E02I17M. +8531 DATA 0400A21E03.I19M. +8535 DATA 0400A21E07.I19M.,0400A21.I19E02M.,0200A22E03.I19M.,0200A22E07.I19M. +8540 DATA 0200A22.I19E02M.,0200A19.D11N.,0400A19.D11N.,0300A22.D12I23M. +8541 DATA 2500A01.D13.,2500I01.D14K.,1244A03.D15M.,1034B01.B01J.,1027B08.B08J. +8545 DATA 1028B04.B04J.,1029B05.B05J.,1032B21.B21J.,1038B24.B24J. +8548 DATA 1039B12.B12J.,1040B09.B09J.,1041B10.B10J.,1043B18.B18J. +8550 DATA 1050B03.B03J.,1042B22.B22J.,1037A20B05.H11P05E05D16K.,1037A20.D17K. +8553 DATA 1134.C01J.,1127.C08J.,1128.C04J.,1129.C05J.,1132.C21J.,1138.C24J. +8555 DATA 1143E09.D62K. +8556 DATA 1139.C12J.,1140.C09J.,1141.C10J.,1143.C18J.,1150.C03J.,1142.C22J. +8560 DATA 2400.A00L.,1249A05.E04D20G0405J.,1349A05.F04J.,2238A05E04.P24E08J. +8563 DATA 2338A05E08.F08P24J.,2338E08.D21N.,1848B10.D22L.,1841B10.D23N. +8566 DATA1840B09.D24K.,2040B09.D25K.,1951A02.D26M.,1951.D27K.,2100A14.D28K. +8570 DATA 2100.D29K.,1542C22.D33K.,1542E07.D30K.,1542A14.D07N. +8575 DATA 1542A17E01.D10K.,1542E02.F02E07E06P22M.,1542.E07P22J. +8580 DATA 1529C05.D33K.,1529E03.D30K.,1529F07.D31L.,1529F05.D32L. +8590 DATA 1529E02.F02E03E06P06P05M.,1529.E03P06P05J. +8595 DATA 1642C22.D33K.,1642F07.D30K.,1642E06E03.D36F07P22M. +8597 DATA 1642E06.E02F07F06P22M. +8600 DATA 1642.F07P22M.,1629C05.D33K.,1629F03.D30K.,1629E07E06.D34F03P05M. +8605 DATA 1629E06.E02F06F03P05M.,1629.F03P05M.,1534B01.D35N. +8610 DATA 1735I16.D45K.,1735E02.D43K.,1735F03.D44K.,1735C04.D46K. +8615 DATA 1735.P16E10J.,5600A16F10.D47K.,5646A16.D48N.,5647A16.D48N. +8620 DATA 5645A16F09.D50D06N.,5645A16.D49I18M.,5543D18E09.D30K. +8625 DATA 5543D18.P18E09J.,574& E AND18F09.D30K.,5743D18.P18F09J. +8630 DATA 1233A24C12.D51K.,1233A24C03.D52N.,1233A24.G0503E11D63K. +8635 DATA 2636E11.D54F11D55K.,5350E11.D54F11D55K.,5232B21.D56N. +8640 DATA 5830F08.D57.,5830.D58D59.,1233A06.D61M. +8650 DATA 1233A25.D64N. +8700 PL=INT(RND(1)*9000+1000) +8800 C=14:DIMC$(C) +8810 FOR N=1 TO C +8820 READ KO$ +8830 C$(N)=KO$ +8840 NEXT N +8850 DATA G03E03.D00N.,G04E04.D01N.,I14I16I17I19.F02.,G07E07.D18N.,GO1.D19N. +8860 DATA H06C03C08.D37N.,H08D08.D39L.,H06D03.D38L.,G08E08B24.D40D21N. +8870 DATA H02.D41N.,G09E02.D42N.,G05E11.D52N.,I24E11.D53D52N.,.L. +8900 RETURN + +10000 & H: & I 0: & S 100,190,1 +10005 & D 0,-60,1: & D 97,0,1: & D 7,10,1: & D -97,0,1: & D -7,-10,1: & D 15,-20,1 +10010 & D -30,-50,1: & D -15,20,1: & D 30,50,1: & S 100,190,1: & D -30,-50,1 +10015 & D 0,-60,1: & S 100,190,1: & D 22,0,1: & D 0,-30,1: & D 15,0,1: & D 0,30,1 +10020 & D 60,0,1: & D 0,-50,1: & M 0,-10,1: & D 0,-30,1: & D -67,-40,1 +10025 & D -23,30,1: & D -30,-50,1: & D 23,-30,1: & D 30,50,1: & S 197,100,1 +10030 & D -45,-60,1: & D -52,-30,1: & S 85,60,1: & D 0,-6,1: & S 115,110,1 +10035 & D 0,-30,1: & M 7,0,1: & D 7,-10,1: & D 7,10,1: & D 0,20,1: & D -15,0,1 +10040 & D 0,-20,1: & M 7,-10,1: & D 0,30,1: & S 182,100,1: & D -30,0,1 +10045 & D 0,20,1: & D 30,0,1: & D 0,-20,1: & M -7,0,1: & D 0,20,1: & M -16,0,1 +10050 & D 0,-20,1: & S 122,190,1: & D 13,7,1: & D 0,-30,1: & D -13,-7,1 +10055 & S 133,182,1: & S 182,150,1: & D -30,0,1: & D 0,20,1: & D 30,0,1 +10060 & D 0,-20,1: & M -7,0,1: & D 0,20,1: & M -16,0,1: & D 0,-20,1 +10065 & S 78,130,1: & D 15,25,1: & D 0,-20,1: & D -15,-25,1: & D 0,20,1 +10070 & M 3,5,1: & D 0,-20,1: & M 9,15,1: & D 0,20,1: & I 3: RETURN +10100 & H: & I 0: & S 15,190,1: & D 0,-160,1: & D 75,-20,1: & D 0,40,1 +10110 & D 0,-40,1: & D 60,0,1: & D 0,20,1: & D 10,10,1: & D -40,0,1: & D 40,0,1 +10120 & D 0,3,1: & D -40,0,1: & D 0,-3,1: & D 0,-10,1: & D 30,0,1: & D 0,-20,1 +10130 & D 82,20,1: & D 0,160,1: & D -73,-126,1: & D 73,126,3: & D -30,-50,3 +10140 & D 0,-80,1: & D -22,-16,1: & D 0,58,1: & M 19,-9,1: & C 1,1 +10145 & S 15,190,1: & D 37,-68,1: & D 0,-70,1: & D 18,-13,1: & D 0,50,1 +10150 & D -18,33,3: & D 38,-71,1: & D 31,0,1: & D 0,-8,3: & D 0,23,1: & D 3,0,1 +10155 & D 0,-23,1: & D 0,8,1: & D 21,0,1: & D 0,-8,1: & D 0,8,1: & D 1,2,1 +10157 & D 0,-10,1: & D 0,10,1 +10160 & D 2,0,1: & D 0,-10,1: & D 0,8,1: & D 2,0,1: & D 0,-8,1: & D 0,8,1 +10165 & D 3,5,1: & D 0,-12,1: & D 0,20,1: & D 2,3,1: & D 0,-23,1: & D 0,23,1 +10170 & D 3,0,1: & D 0,-23,1: & S 67,68,1: & C 1,1: & I 3: RETURN +10200 & H: & I 0: & S 15,190,1: & D 0,-120,1: & D 105,-50,1: & D 60,0,1 +10205 & D 45,50,1: & D 0,110,1: & D -45,-100,1: & M 0,-60,1: & D 0,60,1 +10210 & D -60,0,1: & M 0,-60,1: & D 0,60,1: & D -52,54,1: & S 15,190,1 +10215 & D 24,-26,1: & D 0,-104,1: & D 0,60,1: & D 27,14,1: & D 0,-10,1 +10220 & D 53,-50,1: & D -6,-2,1: & D -54,47,1: & M 7,3,1: & D -7,-3,1 +10225 & D 0,-10,1: & D 53,-44,1: & D 0,8,1: & D 0,-8,1: & D -5,-2,1: & D -56,40,1 +10230 & D 9,4,1: & D -9,-4,1: & D 0,-10,1: & D 55,-36,1: & D 0,7,1: & D 0,-7,1 +10235 & D -5,-2,1: & D -56,33,1: & D 7,3,1: & D -7,-3,1: & D 0,-10,1 +10240 & D -5,-2,1: & D 5,2,1: & D 57,-30,1: & D 0,8,1: & D 0,-8,1: & D -5,-2,1 +10245 & D -57,25,1: & D 57,-25,1: & D 0,-7,1: & D -57,24,1: & D 57,-24,1 +10250 & D -5,-2,1: & D -16,5,1: & D 16,-5,1: & D 0,-4,1 +10255 & S 211,146,1: & D 0,-64,1: & D -15,-20,1: & D 0,52,1: & S 207,108,1 +10260 & C 1,1: & S 156,80,1: & D 24,0,0: & D 6,12,0: & D -6,-12,0: & D 0,-40,0 +10265 & D -26,0,1: & D 0,40,1: & D 5,12,1: & D 27,0,1: & D 0,-42,1: & D -6,-10,1 +10270 & D 6,10,1: & D -27,0,1: & D -4,-10,1: & D 4,10,1: & D 0,42,1 +10275 & S 169,70,0: & C 4,1: & S 169,66,1: & D 0,-3,1: & S 169,74,1 +10280 & D 0,2,1: & S 165,70,1: & D -2,0,1: & S 173,70,1: & D 2,0,1 +10285 & S 165,58,1: & C 1,1: & S 170,58,1: & C 1,1: & S 175,58,1 +10290 & C 1,1: & I 3: RETURN +10300 & H: & I 0: & S 15,190,1: & D 67,-110,1: & D 68,0,1: & D 82,110,1 +10305 & D 0,-140,1: & D -82,-40,1: & D 0,70,0: & D 0,-70,1: & D -68,0,1 +10310 & D 0,70,0: & D 0,-70,1: & D -67,40,1: & D 0,140,1: & S 90,80,1 +10315 & D 0,-50,1: & D 24,0,1: & D 0,50,1: & D -24,0,0: & D 18,10,1: & D 0,-50,1 +10320 & D -18,-10,1: & S 105,64,1 +10325 & S 210,160,1: & D 0,-90,1: & D -23,-14,1: & D 0,74,1: & S 205,110,1 +10330 & S 45,140,1: & D 0,-74,1: & D 18,-14,1: & D 0,60,1: & S 60,86,1 +10335 IF F1=0 THEN & I 3: RETURN +10400 & I 0: & S 124,80,1: & D 26,0,0: & D 0,-70,0: & D 0,70,0 +10401 & S 149,80,0: & D 12,14,0 +10402 & S 150,80,0: & D 10,14,0 +10405 & S 168,18,1: & D 0,86,1: & D -38,0,1: & D 0,-86,1: & D 38,0,1 +10410 & D -38,0,1: & D -6,-8,1: & D 0,70,1: & D 6,24,1 +10415 & S 168,94,1: & D -38,0,1: & S 168,94,1: & D -8,-10,1: & S 168,84,1 +10420 & D -38,0,1: & S 168,84,1: & D -8,-10,1: & S 168,74,1: & D -38,0,1 +10430 & S 168,74,1: & D -9,-10,1: & S 168,64,1: & D -38,0,1: & S 168,64,1 +10435 & D -9,-10,1: & S 168,54,1: & D -38,0,1: & S 168,54,1: & D -18,-18,1 +10440 & D -18,0,1: & D 18,0,1: & D 0,-16,1 +10445 & I 3: RETURN +10500 & H: & I 0: & S 13,180,1: & D 0,-132,1: & D 63,-28,1: & D 83,0,1 +10505 & D 67,30,1: & D 0,130,1: & D -11,-14,1: & D -4,-4,0: & D -17,-25,1 +10510 & D -24,-36,0: & D -12,-20,1: & D 0,-61,1: & D 0,61,1: & D -83,0,1 +10515 & D 0,-60,1: & D 0,60,1: & D -63,100,1: & S 22,90,1: & D 19,0,1 +10520 & D 0,-30,3: & D -19,0,1: & D 0,30,1: & D 0,-30,1: & D 33,-20,1 +10525 & D 13,0,1: & D 0,20,1: & D -28,30,1: & D 0,-30,1: & D 27,-20,1 +10530 & D -11,9,1: & D 0,23,1: & S 52,64,1: & S 60,58,1: & S 157,100,1 +10535 & D 30,0,1: & D 29,34,1: & D -40,0,1: & D 0,2,1: & D 40,0,1: & D 0,-2,1 +10540 & D 0,2,3: & D -2,0,3: & D 0,34,1: & D -3,0,1: & D 0,-34,1: & D -30,0,1 +10545 & D 0,34,1: & D -3,0,1: & D 0,-34,1: & D -2,0,3: & D -20,-34,1: & D 0,-2,1 +10550 & D 20,34,1: & S 159,104,1: & D 0,24,1: & D 3,0,1: & D 0,-18,1 +10555 & I 3: RETURN +10600 & H: & I 0: & S 15,190,1: & D 0,-130,1: & D 75,-50,1 +10605 & D 52,0,1: & D 90,50,1: & D 0,130,1: & D -22,-32,1: & D 0,-52,1 +10610 & D -3,-5,1: & D -42,-43,1: & D -6,0,1: & D -2,4,1: & D 0,10,1: & D -12,0,1 +10613 & D 5,0,1: & D -7,-10,1: & D 0,-50,1: & D 0,50,1 +10615 & D -22,0,1: & D 0,-30,1: & D -15,0,1: & D 13,3,1: & D 0,30,1 +10620 & D -13,-3,1: & D 0,-30,1: & D 0,30,1: & D -15,0,1: & D 0,-50,1: & D 0,50,1 +10625 & D -23,40,1: & D -22,0,1: & D 22,0,1: & D 0,-52,1: & D -22,22,1: & D 0,70,1 +10630 & D -30,50,1: & S 116,49,1: & S 210,158,1: & D -45,0,1: & D 0,-18,1 +10633 & D 0,18,1 +10635 & D -26,-60,0: & D 0,-10,1: & D 6,-16,1: & D 12,0,3: & D 4,4,1: & D -12,0,1 +10640 & D -4,-4,1: & D 4,4,1: & D -6,14,1: & D 10,-2,1: & D 9,0,1: & D 0,-11,1 +10645 & D 0,11,1: & D 19,25,1: & S 165,140,1: & D 10,-20,1: & D 21,0,1 +10650 & D -5,-7,1: & D -21,0,1:: & D 5,7,1: & D -5,-7,1: & D -7,14,1 +10655 & D -20,-37,1: & S 165,140,1: & D -26,-50,1: & S 165,158,1 +10660 & D -26,-59,1: & D 0,-1,1: & S 196,120,1: & D 0,-14,1: & D 2,-5,1 +10665 & D 9,0,1: & D -9,0,1: & D -39,-43,1 +10670 & I 3: RETURN +10700 & H: & I 0: & S 15,190,1: & D 57,-106,1: & D -57,106,1: & D 0,-150,1 +10705 & D 67,-30,1: & D 0,32,1: & D 0,-32,1: & D 75,0,1: & D 0,50,1: & D 0,-50,1 +10710 & D 75,30,1: & D 0,150,1: & D -75,-130,1: & S 202,138,1: & D 0,-78,1 +10715 & D -22,-18,1: & D 0,56,1: & S 157,60,1: & D -9,0,1: & D 2,3,3 +10720 & D -78,0,1: & D 0,8,1: & D 78,0,2: & D 0,-8,1: & D 0,20,1 +10725 & D -78,0,1: & D 0,-38,1: & D 10,-12,1: & S 82,42,1: & D -10,13,1 +10730 & D 6,1,1: & D 9,-13,1: & D -4,-1,1: & D 4,1,1: & D 0,6,1: & D -9,13,1 +10735 & D 0,1,1: & D 0,-7,1: & D 0,6,1: & D 9,-13,1: & D 55,0,1: & D 8,15,1 +10738 IF LX=2 THEN GOTO 10745 +10740 & S 197,93,1: & C 1,1 +10745 IF LX=0 THEN & I 3: RETURN +10750 IF LX=1 THEN GOTO 10780 +10755 & S 202,137,0: & D 0,-77,0: & D -22,-18,0: & D 0,55,0 +10760 & S 30,162,1: & D 26,-49,0: & D 0,1,0: & D -26,49,0 +10765 & S 30,162,1: & D 0,-80,1: & D 22,-22,1: & D 0,9,1: & D 0,-9,1 +10770 & D -22,22,1: & D 27,-15,1: & D 0,77,1: & D -25,18,1: & S 51,111,1 +10775 & C 1,1: & I 3: RETURN +10780 & S 30,50,1: & D 0,40,1: & D 22,-24,1: & D 0,-29,1: & D -22,14,1 +10785 & D 12,-8,3: & D 0,33,1 +10790 & I 3: RETURN +10800 & H: & I 0: & S 15,190,1: & D 0,-140,1: & D 82,-40,1: & D 53,0,1 +10805 & D 75,40,1: & D 0,140,1: & D -30,-50,1: & D 0,-80,1: & D -26,-22,1 +10810 & D 0,60,1: & D 26,0,1: & D -26,0,1: & D -19,-30,1: & D 0,-58,1 +10812 & D 0,58,1: & D -22,0,1 +10815 & D 0,-40,1: & D -15,0,1: & D 13,4,1: & D 0,40,1: & D -13,-4,1: & D 0,-40,1 +10820 & D 0,40,1: & D -15,0,1: & D 0,-58,1: & D 0,58,1: & D -30,42,1: & D -22,0,1 +10825 & D 22,0,1: & D 0,-68,1: & D -22,16,1: & D 0,86,1: & D -30,43,1 +10830 & S 123,52,1: & I 3: RETURN +10900 & H: & I 0: & S 232,190,1: & D 0,-150,1: & D -82,-30,1: & D 0,50,1 +10905 & D 0,-50,1: & D -60,0,1: & D 0,50,1: & D 0,-50,1: & D -75,30,1: & D 0,150,1 +10910 IF LX=0 THEN & D 75,-130,1: & D -23,40,3:GOTO10920 +10915 & D 30,-52,1: & D -30,52,1: & D 75,-130,3: & D -23,40,1: & D -22,0,1 +10918 & D 22,0,1 +10920 & D 0,-58,1: & D -22,16,1: & D 0,80,1 +10925 & S 90,60,1: & D 60,0,1: & D 82,130,1 +10930 IF LX=0 THEN & S 63,78,1: & C 1,1: & I 3: RETURN +10935 IF LX=1 THEN & I 3: RETURN +10940 & S 210,100,1: & D -15,0,1: & D -3,-10,1: & D 18,0,1: & D 0,10,1 +10945 & D 0,-10,1: & D -27,-25,1: & D 0,5,1: & D 20,20,1: & D -20,-20,1 +10950 & D -8,0,1: & D 8,0,1: & D 0,-5,1: & D -12,0,1: & D 21,25,1: & D -21,-25,1 +10955 & D -1,0,1: & D 2,8,1: & D 21,26,1 +10960 & I 3: RETURN +11000 & H: & I 0: & S 15,190,1: & D 0,-150,1: & D 82,-30,1: & D 0,40,1 +11005 & D 0,-40,1: & D 60,0,1: & D 0,40,1: & D 0,-40,1: & D 75,30,1: & D 0,150,1 +11010 & D -22,-42,1: & D 0,-75,1: & D -23,-21,1: & D 0,52,1: & D 23,0,1 +11015 & D -23,0,1: & D -30,-54,1: & D -60,0,1: & D -82,140,0: & D 82,-140,1 +11020 & D 15,0,1: & D 0,-24,1: & D 12,0,1: & D 0,24,1: & M -3,-12,1 +11025 IF LX=0 THEN & I 3: RETURN +11030 & S 187,104,1: & D 22,0,0: & M -22,0,1: & D 23,44,1: & M -5,-45,1 +11035 & C 1,1: & S 30,50,1: & D 0,40,1: & D 37,-34,1: & D 0,-25,1: & D -37,20,1 +11040 & D 21,-10,3: & D 0,31,1: & I 3: RETURN +11500 & H: & I 0: & S 15,180,1: & D 0,-140,1: & D 67,-30,1: & D 75,0,1 +11505 & D 67,30,1: & D 0,150,1: & D -42,-70,1: & D 0,-70,1: & D -24,-20,1 +11510 & D 0,-20,1: & D 0,20,1: & D -45,0,1: & D -15,20,1: & D 85,0,1: & D -33,0,1 +11515 & D 0,70,1: & D 33,0,1: & D -34,0,1: & D -14,-40,1: & D 0,-30,1: & D 0,30,1 +11520 & D -22,0,1: & D 0,-30,1: & D 0,30,1: & D -15,40,1: & D 0,-70,1: & D 0,30,1 +11525 & D -15,0,1: & D 0,-70,1: & D 0,70,1: & D -67,100,1 +11530 & S 167,60,1: & C 1,1: & M 0,10,1: & C 1,1: & M 0,10,1: & C 1,1 +11540 & M 0,20,1: & D 6,2,1: & D -6,-2,1: & C 8,1 +11545 REM POKE 43346,1:POKE 43348,3:POKE 43386,1:POKE 43388,3 +11550 REM POKE 43746,4:POKE 43748,3:POKE 43786,4:POKE 43788,3 +11555 REM POKE 44146,2:POKE 44148,3:POKE 44186,2:POKE 44188,3 +11560 & I 3: RETURN +11700 & H: & I 0: & S 15,190,1: & D 0,-140,1: & D 60,-40,1: & D 75,00,1 +11705 & D 82,40,1: & D 0,140,1: & D -45,-72,3: & D 0,-54,1: & D -15,-14,1 +11710 & D 0,44,1: & S 232,190,1: & D -82,-130,1: & D 0,-50,1: & D 0,50,1 +11715 & D -75,0,1: & D 0,-50,1: & D 0,50,1: & D -4,10,1: & D 9,0,1: & D -23,0,1 +11720 & D -34,50,1: & D 39,0,1: & D 18,-50,1: & D 0,4,1: & D -18,52,1 +11725 & D 0,-6,1: & D 0,6,1: & D -39,0,1: & D 0,-6,1 +11730 & S 15,190,1: & D 15,-33,1: & D 0,-30,1 +11735 & D 4,0,3: & D 0,37,1: & D -4,0,1: & D 0,-7,1: & D 0,7,1: & D 4,0,1 +11740 : & D 3,-8,1: & D 0,-29,1: & D 15,0,3: & D 0,37,1: & D 4,0,1: & D 0,-37,1 +11745 & D 0,37,1: & D 3,-8,1: & D 0,-29,1: & D -14,0,3: & D -7,16,1 +11750 & S 74,93,1: & D 0,12,1: & D 3,0,1: & D 0,-19,1: & D 0,19,1 +11755 & D 2,-7,1: & D 0,-18,1 +11760 & S 184,86,1: & I 3: RETURN +11800 & H: & I 0: & S 15,191,1: & D 0,-160,1: & D 75,-30,1: & D 52,0,1 +11805 & D 90,30,1: & D 0,160,1: & S 15,191,1: & D 75,-140,1: & D 0,-50,1 +11810 & D 0,50,1: & D 15,0,1: & D 0,-30,1: & D 12,4,1: & D 0,30,1: & D -12,-4,1 +11815 & D 0,-30,1: & D 15,0,1: & D 0,30,1: & D 22,0,1: & D 0,-50,1: & D 0,50,1 +11820 & D 36,55,1: & D 21,0,1: & D -21,0,1: & D 0,-60,1: & D 21,15,1: & D 0,74,1 +11825 & D 6,8,1: & D -106,0,1: & D -15,46,1: & D 15,-46,1: & D 0,10,1: & D 106,0,1 +11830 & D 0,-10,1: & D 0,10,1: & D 4,5,1: & D -112,0,1: & D 2,-5,1: & D -2,5,1 +11835 & D 0,10,1: & D 112,0,1: & D 0,-10,1: & D 0,10,1: & D 4,6,1: & D -119,0,1 +11840 & D 3,-6,1: & D -3,6,1: & D 0,10,1: & D 119,0,1: & D 0,-10,1: & D 0,10,1 +11845 & D 4,6,1: & D -126,0,1: & D 3,-6,1: & S 115,49,1 +11850 & I 3: RETURN +12200 & H: & I 0: & S 15,190,1: & D 0,-150,1: & D 75,-30,1: & D 0,50,1 +12205 & D 0,-50,1: & D 60,0,1: & D 0,50,1: & D 0,-50,1: & D 82,30,1: & D 0,150,1 +12210 & D -82,-130,1: & D -45,0,1: & D 0,-30,1: & D 15,0,1: & D 0,30,1: & D -30,0,1 +12215 & D -30,53,1:IF LX=2 THEN & D -23,0,1: & D 23,0,1 +12220 & D 0,-60,1: & D -23,17,1: & D 0,80,1 +12225 IF LX<>2 THEN & D 23,-37,1: & D -23,37,1 +12230 & D -22,40,1:IF LX<>2 THEN & S 57,88,1: & C 1,1 +12235 IF LX<>0 THEN & S 117,45,1: & C 1,1: & I 3: RETURN +12240 & S 105,60,1: & D 15,0,0: & M -15,0,1: & D 0,-30,1: & D 12,3,1 +12245 & D 0,30,1: & D -12,-4,1: & S 115,48,1: & I 3: RETURN +12299 GOTO14000 +12300 & H: & I 0: & S 15,190,1: & D 0,-150,1: & D 67,-30,1: & D 67,0,1 +12310 & D 82,30,1: & D 0,150,1: & D -65,-104,1: & D 0,-54,1: & D -16,-10,1 +12315 & D 0,-10,1: & D 0,10,1: & D -37,0,1: & D -3,10,1: & D 0,54,1: & D 56,0,1 +12320 & D 0,-54,1: & D -28,0,1: & D 0,54,1: & D 0,-54,1: & D -28,0,1: & D 0,30,1 +12325 & D -27,0,1: & D 0,-50,1: & D 0,50,1: & D -67,130,1 +12330 & S 133,60,1: & C 1,1: & M 11,0,1: & C 1,1 +12340 & I 3: RETURN +12400 & H: & I 0: & S 30,164,1: & D -15,26,1: & D 0,-143,1: & D 15,-7,1 +12405 & D 0,124,1: & D 15,0,1: & D 0,-124,1: & D -15,0,1: & D 15,0,1: & D 45,-30,1 +12410 & D 0,13,1: & D 0,-13,1: & D 60,0,1: & D 0,50,1: & D 0,-50,1: & D 82,30,1 +12415 & D 0,150,1: & D -82,-130,1: & D -50,0,1: & D -32,104,1: & D -22,0,1 +12420 & D 22,0,1: & D 0,-92,1: & D -22,0,1: & D 44,-48,1: & D 10,0,1: & D -32,48,1 +12425 & D 32,-48,1: & D 0,35,1: & D -14,46,3: & D 0,-61,1 +12430 & S 81,88,1: & C 1,1: & M 11,-21,1: & C 1,1: & I 3: RETURN +12499 REM GOTO 14000 +13000 & H: & I 0: & S 75,62,1: & D -5,0,1: & D -55,108,1: & D 37,-10,1 +13005 & D 30,-90,1: & D -19,5,1: & D 19,-5,1: & D 20,5,1: & D -12,94,1 +13007 & D -38,-10,1: & D 38,10,1: & D 0,20,1: & D -75,0,1: & D 0,-20,1 +13010 & D 0,20,1: & D 75,0,1: & D 15,-112,1: & D 0,-15,1 +13012 & D -3,14,1: & D 3,-14,1: & D -13,0,1 +13015 & D 0,-12,1: & D 0,12,1: & D -4,10,1: & D 0,-22,1: & D 12,0,1 +13020 & D 4,-7,1: & D 0,-15,1: & D -4,6,1: & D 0,16,1: & D 0,-16,1: & D -12,0,1 +13025 & D 4,-6,1: & D 12,0,1: & D -12,0,1: & D 0,-16,1: & D -4,6,1: & D 0,16,1 +13030 & D 0,-16,1: & D -12,0,1: & D 4,-6,1: & D 12,0,1: & D -12,0,1: & D -4,6,1 +13035 & D 0,16,1: & D -12,0,1: & D 4,-6,1: & D 7,0,1: & D -7,0,1: & D -4,6,1 +13040 & D 0,16,1: & D 12,0,1: & D 0,22,1 +13045 & I 3: RETURN + +20000 GOSUB 13000 'TOMBE +20010 GOSUB 30000 'SARABANDE +20100 TEXT: PRINT: PRINT: PRINT: PRINT: PRINT "Voulez-vous rejouer ?":GET X$ +20105 IF X$="O" THEN RUN 45 +20110 IF X$="N" THEN GOTO 20200 +20120 GOTO 20100 +20200 HOME: PRINT: PRINT: PRINT: PRINT " AU REVOIR" +20210 END + +30000 REM SARABANDE +30001 RETURN +30005 & R 30000: REM RESTORE +30010 FOR N=1 TO 41:READ Y$,Y$,Y$,Y$,Y$,Y$,Y$:NEXT +30015 FOR N=1 TO 75 +30020 READ A1,A2,A3,A4,A5 +30025 READ A6,A7,A8,A9,A0 +30030 REM MUSIC1,A1,A2,A3:MUSIC2,A4,A5,A6:MUSIC3,A7,A8,A9:PLAY7,0,0,100: & W A0 +30032 REM IF N>70 THEN NEXT:PLAY0,0,0,0: RETURN +30035 REM PLAY0,0,0,0:NEXT +30040 DATA 3,6,8,3,3,8,2,10,8,80 +30045 DATA 3,6,8,3,3,8,2,10,8,80 +30050 DATA 0,1,1,0,1,1,0,1,1,40 +30055 DATA 3,8,8,3,5,8,0,1,1,40 +30060 DATA 3,5,8,3,2,8,2,10,8,80 +30065 DATA 3,5,8,3,2,8,2,10,8,40 +30070 DATA 1,11,8,0,1,1,0,1,1,40 +30075 DATA 1,10,8,0,1,1,0,1,1,40 +30080 DATA 1,8,8,0,1,1,0,1,1,40 +30085 DATA 3,10,8,3,6,9,3,1,8,80 +30090 DATA 3,10,8,3,6,9,3,1,8,80 +30095 DATA 0,1,1,0,1,1,0,1,1,40 +30100 DATA 3,11,8,3,8,8,0,1,1,40 +30105 DATA 3,8,8,3,5,8,3,1,8,80 +30110 DATA 3,8,8,3,5,8,3,1,8,40 +30115 DATA 2,1,8,0,1,1,0,1,1,40 +30120 DATA 1,11,8,0,1,1,0,1,1,40 +30125 DATA 1,10,8,3,7,8,3,10,8,40 +30130 DATA 3,11,8,3,8,8,3,3,8,80 +30135 DATA 3,11,8,3,8,8,3,3,8,80 +30140 DATA 1,8,8,0,1,1,0,1,1,40 +30145 DATA 1,8,8,3,10,8,4,1,8,40 +30150 DATA 3,10,8,3,6,8,3,3,8,80 +30155 DATA 3,10,8,3,6,8,3,3,8,80 +30160 DATA 0,1,1,0,1,1,0,1,1,40 +30165 DATA 3,10,8,2,1,8,0,1,1,40 +30170 DATA 4,3,8,3,10,8,1,11,8,80 +30175 DATA 4,3,8,3,8,8,2,11,9,80 +30180 DATA 0,1,1,0,1,1,0,1,1,40 +30185 DATA 4,5,8,0,1,1,0,1,1,40 +30190 DATA 4,2,8,3,10,8,3,5,8,80 +30195 DATA 4,2,8,3,10,8,3,5,8,40 +30200 DATA 2,8,8,0,1,1,0,1,1,40 +30202 DATA 2,6,8,0,1,1,0,1,1,40 +30203 DATA 2,5,8,0,1,1,0,1,1,40 +30205 DATA 3,6,8,3,3,8,2,10,8,80 +30210 DATA 3,6,8,3,3,8,2,10,8,80 +30215 DATA 0,1,1,0,1,1,0,1,1,40 +30220 DATA 3,8,8,3,5,8,0,1,1,40 +30225 DATA 3,5,8,3,2,8,2,10,8,80 +30230 DATA 3,5,8,3,2,8,2,10,8,40 +30235 DATA 1,11,8,0,1,1,0,1,1,40 +30240 DATA 1,10,8,0,1,1,0,1,1,40 +30245 DATA 1,8,8,0,1,1,0,1,1,40 +30250 DATA 3,10,8,3,6,9,3,1,8,80 +30255 DATA 3,10,8,3,6,9,3,1,8,80 +30260 DATA 0,1,1,0,1,1,0,1,1,40 +30265 DATA 3,11,8,3,8,8,0,1,1,40 +30270 DATA 3,8,8,3,5,8,3,1,8,80 +30275 DATA 3,8,8,3,5,8,3,1,8,40 +30280 DATA 2,1,8,0,1,1,0,1,1,40 +30285 DATA 1,11,8,0,1,1,0,1,1,40 +30290 DATA 1,10,8,3,7,8,3,10,8,40 +30295 DATA 3,11,8,3,8,8,3,3,8,80 +30300 DATA 2,8,8,0,1,1,0,1,1,40 +30305 DATA 3,11,8,3,8,8,3,1,8,40 +30310 DATA 2,8,8,0,1,1,0,1,1,40 +30315 DATA 2,1,8,0,1,1,0,1,1,40 +30320 DATA 4,1,8,2,5,8,0,1,1,40 +30325 DATA 3,10,8,3,6,8,3,1,8,80 +30330 DATA 3,10,8,2,3,8,0,1,1,40 +30335 DATA 4,3,8,3,6,8,2,11,8,40 +30340 DATA 4,2,8,0,1,1,0,1,1,40 +30345 DATA 4,3,8,3,11,8,2,8,8,40 +30350 DATA 4,5,8,0,1,1,0,1,1,40 +30355 DATA 4,6,8,3,10,8,2,10,8,80 +30360 DATA 4,5,8,3,8,8,1,10,8,40 +30365 DATA 0,1,1,3,8,8,1,10,8,40 +30370 DATA 4,3,8,0,1,1,0,1,1,40 +30375 DATA 4,3,8,3,6,8,2,3,8,80 +30380 DATA 3,3,8,3,10,8,3,6,8,40 +30385 DATA 3,3,7,3,10,7,3,6,7,40 +30390 DATA 3,3,6,3,10,6,3,6,6,40 +30395 DATA 3,3,5,3,10,5,3,6,5,40 +30400 DATA 3,3,4,3,10,4,3,6,5,40 + +32000 REM TEA FOR TWO +32001 GOTO 33000 +32002 & R 32000: REM RESTORE +32004 FOR N=1 TO 166:READ Y$,Y$,Y$,Y$,Y$,Y$,Y$,Y$:NEXT +32005 FOR N=1 TO 110 +32010 READ A1,A2,A3 +32015 REM MUSIC1,A1,A2,10:PLAY1,0,0,100: & W A3 +32020 REM PLAY0,0,0,0 +32022 NEXT +32025 DATA 4,6,45,4,3,15,4,5,45,4,3,15,4,6,45,4,3,15,4,5,45 +32030 DATA 4,1,15,4,5,45,4,1,15,4,3,45,4,1,15,4,5,45,4,1,15 +32035 DATA4,3,45,4,1,15,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45 +32040 DATA4,3,15,4,5,45,4,1,30,4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,7,8 +32045 DATA4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,5,8,4,9,30,4,7,22,4,5,8 +32050 DATA4,7,30,4,7,22,4,5,8,4,9,30,4,9,22,4,5,8,4,7,30,4,7,22,4,5,8 +32055 DATA4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,7,8,4,10,30,4,10,22,4,7,8 +32060 DATA4,9,30,4,9,30,5,2,120,5,1,60,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45 +32065 DATA4,3,15,4,5,45,4,1,15,4,5,45,4,1,15,4,3,45,4,1,15,4,5,45,4,1,15 +32070 DATA4,3,45,4,1,15,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45,4,3,15,4,5,45 +32075 DATA4,1,30,5,3,45,5,3,15,5,1,45,5,1,15,4,11,45,4,11,15,4,10,45,4,10,15 +32080 DATA5,1,45,5,1,15,4,11,45,4,11,15,4,10,45,4,10,15,4,8,45,4,8,15 +32085 DATA4,6,45,4,3,15,4,5,45,4,3,15 +32090 DATA4,6,45,4,3,15,4,5,45,4,10,15,4,6,120 + +33000 TEXT:HOME:NORMAL +33002 GOSUB 50000 +33003 RETURN: REM LOGO +33005 FOR N=1 TO 331:READ Y$,Y$,Y$,Y$,Y$:NEXT:READ Y$,Y$,Y$ +33010 FOR N=46360 TO 46423 +33020 READ GH:POKE N,GH +33030 NEXT +33040 DATA 1,2,4,4,4,2,3,1,48,32,24,16,32,16,32,32 +33050 DATA 2,6,9,8,8,8,4,6,16,16,8,40,26,12,10,16 +33060 DATA 7,8,8,16,16,8,28,0,48,8,8,4,4,2,3,0 +33070 DATA 3,4,4,6,2,2,3,0,48,24,8,4,4,4,6,0 +33100 FOR N=48802 TO 48836 STEP 2 +33110 POKE N,35:POKE N+1,36:POKE N+40,37:POKE N+41,38:POKE N+80,39:POKE N+81,40 +33120 REM & W 48836-N +33130 POKE N,32:POKE N+40,32:POKE N+80,32 +33140 POKE N+1,35:POKE N+2,36:POKE N+41,37:POKE N+42,38:POKE N+81,41:POKE N+82,42 +33150 REM & W 48836-N +33160 POKE N+1,32:POKE N+41,32:POKE N+81,32 +33170 NEXT +33180 POKE N,32:POKE N+40,32:POKE N+80,32 +33190 REM CALL#F89B +33200 RETURN + +50000 PRINT: PRINT " Cela est exceptionnel,vous etes le premier a etre sorti vivant"; +50010 PRINT " de cette": PRINT: PRINT "maison , mais je serais vous , je me ": PRINT "mettrais a "; +50020 PRINT "courrir car un nain rode": PRINT: PRINT "peut etre dans les parages" +50030 RETURN diff --git a/lemanoirdudocteurgenius/apple2/jeu simple.bas b/lemanoirdudocteurgenius/apple2/jeu simple.bas new file mode 100644 index 0000000..778b0c7 --- /dev/null +++ b/lemanoirdudocteurgenius/apple2/jeu simple.bas @@ -0,0 +1,409 @@ +10 & H +100 IF SAL<>14 AND SAL<>16 AND SAL<>17 AND SAL<>19 THEN P(2)=0 +105 IF P(2)=0 THEN 200 +106 IF O(22)=SAL AND P(7)=1 THEN 200 +107 IF O(05)=SAL AND P(3)=1 THEN 200 +110 IF C(9)>1 THEN C(9)=C(9)-1 +130 & H +140 PRINT "Il fait noir comme dans un four,": PRINT "il faudrait peut etre allumer" +145 GOSUB 13000: GOTO 500 + +200 REM DESCRIPTION SAL +210 PRINT +220 & G (7000+SAL*10)-10 +300 H=0:N=1 +310 IF O(N)<>SAL THEN 400 +320 IF H=1 THEN GOTO 350 +330 PRINT "Il y a dans la salle:": & W 100 +340 H=1 +350 PRINT " ";O$(N); +360 & W 150 +400 N=N+1 +410 IF N<=O THEN 310 +420 PRINT "" + +500 REM ACCEPTATION COMMANDE +510 T=1: Y$(1)="": Y$(2)="": N=0 +520 GOTO 1000 +530 IF C(7)>1 AND P(7)=1 THEN C(7)=C(7)-1 +540 IF C(3)>1 AND P(3)=1 THEN C(3)=C(3)-1 +545 IF C(4)>1 AND P(4)=1 THEN C(4)=C(4)-1 +547 IF C(5)>1 THEN C(5)=C(5)-1 +550 INPUT "Que faites vous : ";X$ +555 IF X$="" THEN GOSUB 13100: GOTO 550 +560 HOME:PRINT X$ +570 GOSUB 6000 +580 IF MO$(1)="00" THEN PRINT "Je ne comprends pas...": & W 200:GOTO100 +900 REM CONTROLE Mvt +910 Z=1 +920 T$=MID$(M$(SAL),Z,2) +930 IF T$="00" THEN 980 +940 IF T$<>MO$(1) THEN 970 +950 SAL=VAL(MID$(M$(SAL),Z+2,2)) +960 GOTO 100 +970 Z=Z+4:GOTO920 +980 T=0 +990 A1=0 + +1000 REM CONTROLE +1010 NL=0 +1100 NL=NL+1 +1110 IF T=0 THEN GOTO 1150 +1120 E$=C$(NL) +1130 GOTO 1400 +1150 IF NL<=A THEN 1200 +1159 PY=23:CO=12 +1160 IF A1=1 THEN GOTO 500 +1170 PRINT "Impossible "; +1180 IF VAL(MO$(1))<10 THEN PRINT "de prendre ce chemin"; +1190 PRINT "!":GOTO 100 +1200 IF MID$(A$(NL),1,2)<>MO$(1) THEN 1100 +1210 Y$=MID$(A$(NL),3,2) +1220 IF Y$<>"00" AND Y$<>MO$(2) THEN 1100 +1230 E$=MID$(A$(NL),5) +1400 REM CONDITIONS +1410 E=1 +1420 IF MID$(E$,E,1)="." THEN 1700 +1430 LI=ASC(MID$(E$,E,1))-65 +1440 N=VAL(MID$(E$,E+1,2)) +1450 OK=0: & G 1500+LI*10 +1460 IF OK=0 THEN 1100 +1470 E=E+3:GOTO1420 +1500 IF N=SAL THEN OK=1 +1505 RETURN +1510 IF O(N)=-1 OR O(N)=SAL THEN OK=1 +1515 RETURN +1520 IF O(N)<>SAL AND O(N)<>-1 THEN OK=1 +1525 RETURN +1530 IF O(N)=-1 THEN OK=1 +1535 RETURN +1540 IF P(N)=1 THEN OK=1 +1545 RETURN +1550 IF P(N)=0 THEN OK=1 +1555 RETURN +1560 IF C(N)=1 THEN OK=1 +1565 RETURN +1570 IF INT(RND(1)*99+1)SAL THEN OK=1 +1585 RETURN +1700 REM ACTIONS +1705 E=E+1:A1=1 +1710 IF MID$(E$,E,1)="." THEN 1100 +1720 LI=ASC(MID$(E$,E,1))-65 +1730 IF MID$(E$,E+1,1)<>"." THEN N=VAL(MID$(E$,E+1,2)) +1740 BREAK=0 +1750 & G 1800+LI*100 +1760 IF BREAK<>0 THEN & T BREAK +1780 E=E+3 +1790 GOTO 1710 +1800 G=0:HH=0 +1810 G=G+1 +1820 IF O(G)=-1 THEN GOTO 1840 +1830 IF G-1 THEN 1960 +1935 REM CE PROGRAMMEEST LA PROPRIETE DE L.WEILL LORICIELS +1940 PRINT "Vous l'avez deja,vous etes etourdit etdans cette maison ce n'est pas" +1945 & W 400 +1950 PRINT "tres conseille...":GOTO1920 +1960 O(N)=-1:S(1)=S(1)+1: RETURN +2000 IF O(N)=-1 THEN 2030 +2010 PRINT "Comment voulez vous poser ce que vous n'avez pas" +2020 GOTO 1920 +2030 O(N)=SAL:S(1)=S(1)-1: RETURN +2100 HOME: & G 4000+N*10 +2110 RETURN +2200 P(N)=1: RETURN +2300 P(N)=0: RETURN +2400 C(N)=VAL(MID$(A$(N),E+3,2)):E=E+2: RETURN +2500 IF O(N)=-1 THEN S(1)=S(1)-1 +2510 O(N)=0 : RETURN +2600 SAL=N: RETURN +2700 PRINT "D'accord..." +2710 & W 150:BREAK=300: RETURN +2800 BREAK=500 +2810 RETURN +2900 BREAK=530: RETURN +3000 BREAK=100: RETURN +3100 PRINT CHR$(4)"RUN PERDU" +3200 O(N)=SAL: RETURN +3300 X$=O$(N):O$(N)=O$(N+1):O$(N+1)=X$: RETURN + +4000 & H: FOR N = 1 TO 20: & E : & W 4: NEXT +4001 PRINT "Vous avez gardez la lampe trop longtemps allumee,elle a explose" +4005 & W 400: RETURN +4010 & H +4011 PRINT "Vous avez oubliez de fermer le robinetvous mourez sous des tonnes d'eau" +4015 & W 500: RETURN +4020 & H +4022 PRINT "Lapporte vient de se refermer derrierevous,vous voila prisonnier..." +4025 & W 500: RETURN +4030 & H +4031 PRINT "Vous avez trebuche dans l'escalier,vous vous empallez sur le couteau!" +4035 & W 500: RETURN +4040 & H +4041 PRINT "Vous renversez l'eau dans l'escalier, ce qui provoque une decharge"; +4042 PRINT " de la": & W 300:PRINT "prise electrique" +4045 & W 300: RETURN +4050 & H +4051 PRINT "Vous etes sauf grace a la combinaison que vous avez enfile..!" +4055 & W 500: RETURN +4060 PRINT "Vous mourrez electrocute..." +4065 & W 300: RETURN +4070 & H: REM FOR N=1 TO 20:MUSIC2,2,2,10:PLAY3,7,4,80: & W 1: & E : & W 6:NEXT +4071 PRINT "La piece etait pleine de gaz explosif,vous auriez du eteindre..." +4072 & W 500:HOME:PRINT "On ramassera vos morceaux un autre jour..!" +4075 & W 300: RETURN +4080 & H +4081 PRINT "Vous mourez empalle sur des lances sorties du mur...!" +4085 & W 400: RETURN +4090 REM +4091 PRINT "La porte ne s'ouvre pas de cette piece": & W 300: RETURN +4100 & H +4101 PRINT "La lampe et le briquet refusent de marcher dans cette piece" +4105 & W 400: RETURN +4110 & H +4111 PRINT "Vous tombez dans une trappe,vous vous disloquez en arrivant au sol.." +4115 & W 500: RETURN +4120 REM +4121 PRINT "Vous avez raison de passer,car ce monstre n'etait qu'une projection" +4124 & W 400:PRINT "en 3 dimentions sur un ecran de fumee" +4125 & W 250: RETURN +4130 REM +4131 PRINT "Vous avez raison,la curiosite est un vilain defaut!!!" +4132 & W 400 +4133 TEXT:PRINT:PRINT:PRINTSPC(12)"AU REVOIR" +4135 & W 200: PRINT CHR$(4)"RUN PERDU" +4140 PRINT "Vous avez raison d'attendre,mais cela ne pourra pas durer"; +4141 PRINT " eternellement.." +4142 & W 450: RETURN +4150 : & H:PRINT "Vous avez de la chance car ce coffre etait ouvert.": & W 400 +4152 PRINT "Un message a l'interieur dit:": & W 250:PRINT "Ne respectez pas les "; +4154 PRINT "couleurs du":PRINT "code de la route...?": & W 500 +4156 PRINT "Tiens le coffre se referme": & W 200: RETURN +4160 PRINT "Maintenant,vous avez une lampe pleine de petrole" +4165 & W 400: RETURN +4170 PRINT "Vous n'avez rien pour transporter le petrole": & W 400: RETURN +4180 & H:PRINT "Le briquet que vous aviez laisse allume vient d'exploser" +4181 FOR N=1 TO 10: & E : & W 6:NEXT +4185 & W 300:PRINT "Ca tue l'etourderie.....": & W 200: RETURN +4190 & H:PRINT "A force de marcher en long et en large dans cette maison," +4195 & W 300:PRINT "vous sombrez dans un coma des plus mortel...": & W 300: RETURN +4200 PRINT "L'eau coule...": RETURN +4210 & H:PRINT "Vous avez les pieds trempes,et cela vous rend tres malade..." +4215 & W 400:PRINT "Vous mourez d'une triple pneumonie...!": & W 300: RETURN +4220 PRINT "Le titre est:": & W 200:PRINT "La mort a la premiere page.": & W 300: RETURN +4230 & H:FOR N=1 TO 20: & E :NEXT +4233 PRINT "Le livre a explose lorsque vous l'avezouvert...": & W 400: RETURN +4240 PRINT "Le papier indique: Cherchez la clef.": & W 300: RETURN +4250 PRINT "La clef vous permettera de trouver le code de la porte d'entree." +4255 & W 400: RETURN +4260 & H:PRINT "Il y a , a cote de la porte,un claviernumerique permettant "; +4265 PRINT "d'entrer un code": & W 400: RETURN +4270 PRINT "Pour faire quoi..?": & W 200: RETURN +4280 PRINT "Il y a une odeur de gaz.": & W 300: RETURN +4290 PRINT "Apparement,il n'y a occune odeur mais...": & W 300: RETURN +4300 PRINT "C'est deja fait,espece de rigolo": & W 300: RETURN +4310 PRINT "Il faudrait peut etre du feu": & W 300: RETURN +4320 PRINT "La lampe ne contient pas de petrole": & W 300: RETURN +4330 PRINT "Vous ne l'avez pas": & W 200: RETURN +4340 PRINT "Le briquet est encore allume et il eclaire la piece."& W 300: RETURN +4350 FOR N=1 TO 15: & E : & W 4:NEXT +4355 PRINT "La torche etait piegee,elle vous explose dans les mains.." +4357 & W 400: RETURN +4360 PRINT "La lampe est encore allumee,et elle vous eclaire": & W 300: RETURN +4370 & H:PRINT "Un nain vient de vous lancer un poignard en plein coeur.." +4375 & W 300: RETURN +4380 PRINT "Un nain vient de se precipiter sur vous,il s'empalle sur votre"; +4385 PRINT " ciseau": & W 400: RETURN +4390 PRINT "Un nain vient de se precipiter sur vous,il s'empalle sur votre"; +4395 PRINT " couteau": & W 400: RETURN +4400 & H:PRINT "Vous venez de renverser le pot": & W 150: RETURN +4410 & H:PRINT "La foudre vient de tomber sur la maison": & W 200 +4412 PRINT "La maison n'existe plus,vous non plus": & W 200: RETURN +4420 & H:PRINT "A force de marcher dans le noir,vous avez trebuche": & W 200 +4425 PRINT "Vous mourez d'une fracture du crane...": & W 200: RETURN +4430 PRINT "Vous ne pouvez pas travailler dans le noir...": & W 300: RETURN +4440 PRINT "La lumiere du briquet ne suffit pas pour travaillez...": & W 400: RETURN +4450 PRINT "Impossible !": & W 100: RETURN +4460 PRINT "Vous n'avez aucun outil..": & W 250: RETURN +4470 PRINT "Le teleporteur est en panne,donc les boutons ne fonctionnent pas." +4475 & W 400: RETURN +4480 FOR N=1 TO 25: & E : & W 5:NEXT +4484 PRINT "Le teleporteur vient d'exploser,vous etes decompose..!": & W 400: RETURN +4490 PRINT "Le teleporteur se met en marche,vous disparaissez" +4491 REM MUSIC2,1,5,0:PLAY2,1,3,1000 +4492 FOR N=1 TO 12 +4493 & P 4: & W 8: & P 1: & W 8: & P 3: & W 8: & P 4: & W 8: & P 1: & W 8 +4494 NEXT: & P 0: REM PLAY0,0,0,0 +4495 FOR N=500 TO 30 STEP-5 +4497 NEXT: REM SOUND2,N,12:PLAY2,0,0,100:NEXT +4498 RETURN : REM PLAY0,0,0,0 : & H: RETURN +4500 & H:PRINT "Vous prenez du 30000 Volts dans les doigts,": & W 300: RETURN +4510 PRINT "Le placard est ferme a clef": & W 150: RETURN +4520 & H:PRINT "L'horrible monstre sorti du placard vient de vous devorer" +4525 & W 400: RETURN +4530 PRINT "Il ne fallait pas fuir": & W 200: RETURN +4540 & H:PRINT "Vous avez raison d'utiliser le ciseau,le monstre est mort" +4545 & W 400: RETURN +4550 PRINT "A l'interieur du placard,le No "PL" est inscrit": & W 300 +4555 PRINT "Le placard se referme.": & W 150: RETURN +4560 & H:FOR N=1 TO 30: & E : & W 5:NEXT:PRINT "le pistolet a explose": & W 200 +4565 RETURN +4570 & H:FOR N=1 TO 25: & E : & W 7:NEXT: +4575 PRINT "le clavier numerique a explose": & W 250: RETURN +4580 & H:PRINT "Le clavier numerique prends feu, heureusement,vous aviez "; +4582 & W 300:PRINT "un pot plein": & W 100 +4585 PRINT "d'eau qui vous a permis d'eteindre ce feu" +4586 & W 400: RETURN +4590 & H:INPUT"No DE CODE";ZC +4595 IF ZC<>PL THEN GOTO 4570 +4600 & W 200:PRINT "Le code est exact...":POP:PRINT "La porte s'ouvre..." +4603 & W 400 +4605 GOSUB 10000: PRINT "Vous voila en dehors de la maison..." +4608 PRINT CHR$(4);"RUN GAGNE" +4610 & H:PRINT "A l'interieur du placard,il y a un motqui parle d'un teleporteur" +4615 & W 400:PRINT "Tiens le placard se ferme tout seul...": & W 150: RETURN +4620 PRINT "Avant de la poser par terre,il faudrait peut etre l'enlever." +4625 & W 350: RETURN +4630 & H:PRINT "Il y a un horrible monstre devant vousqui est sortie du placart." +4635 & W 400: RETURN +4640 & H:PRINT "Le placard etait piege,vous n'auriez pas du l'ouvrir" +4645 FOR N=1 TO 30: & E : & W 7:NEXT +4647 & W 150: RETURN + +6000 REM ANALYSE DU MOT +6010 N=0:GN=0 +6020 REPEAT:N=N+1 +6030 UNTIL MID$(X$,N,1)<>" " +6040 REPEAT:GN=GN+1 +6050 UNTIL MID$(X$,N+GN,1)=" "OR MID$(X$,N+GN,1)="" OR GN=20 +6060 IF GN>4 THEN GN=4 +6070 X$(1)=MID$(X$,N,GN) +6080 REPEAT:N=N+1 +6090 UNTIL MID$(X$,N,1)=" "OR MID$(X$,N,1)="" +6100 REPEAT:N=N+1 +6110 UNTIL MID$(X$,N,1)<>" " +6115 GN=0 +6120 REPEAT:GN=GN+1 +6130 UNTIL MID$(X$,N+GN,1)=" "OR MID$(X$,N+GN,1)="" OR GN=20 +6140 IF GN>4 THEN GN=4 +6150 X$(2)=MID$(X$,N,GN) +6160 FOR W=1 TO 2:N=0:MO$(W)="00" +6170 N=N+1 +6180 IF N>V THEN W=3:GOTO 6300 +6190 IF MID$(V$(N),3,4)=X$(W) THEN GOTO 6250 +6200 GOTO 6170 +6250 MO$(W)=MID$(V$(N),1,2) +6300 NEXT W +6310 RETURN + +7000 GOSUB 10000 +7005 PRINT "Vous etes devant le manoir du defunt":& W 250 +7006 PRINT SPC(12)"Dr GENIUS" +7007 GOSUB 13000: RETURN +7010 GOSUB 10100 +7015 PRINT "Vous etes dans le hall d'entree." +7016 GOSUB 13000: RETURN +7020 GOSUB 10200 +7024 PRINT "Vous etes en bas de l'escalier menant au 2eme etage" +7025 GOSUB 13000: RETURN +7030 F1=0: GOSUB 10300 +7034 PRINT "Vous etes dans la salle a manger." +7035 GOSUB 13000: RETURN +7040 F1=1: GOSUB 10300 +7043 PRINT "Vous etes dans une biblioteque sans livre...!" +7045 GOSUB 13000: RETURN +7050 GOSUB 10500 +7053 PRINT "Vous etes dans une buanderie" +7055 GOSUB 13000: RETURN +7060 GOSUB 10600 +7063 PRINT "Vous etes dans le salon" +7065 GOSUB 13000: RETURN +7070 LX=0: GOSUB 10700 +7073 PRINT "Vous etes dans une chambre." +7075 GOSUB 13000: RETURN +7080 GOSUB 10800 +7083 PRINT "Vous etes dans un corridor" +7085 GOSUB 13000: RETURN +7090 LX=0: GOSUB 10900 +7093 PRINT "Vous etes dans une salle d'attente." +7095 GOSUB 13000: RETURN +7100 LX=0: GOSUB 11000 +7103 PRINT "Vous etes dans le vestibules" +7105 GOSUB 13000: RETURN +7110 LX=2: GOSUB 10700 +7113 PRINT "Vous etes dans la chambre d'amis." +7115 GOSUB 13000: RETURN +7120 LX=1: GOSUB 10700 +7123 PRINT "Vous etes dans une chambre." +7125 GOSUB 13000: RETURN +7140 LX=2: GOSUB 12200 +7143 PRINT "Vous etes dans une petite salle" +7145 GOSUB 13000: RETURN +7150 GOSUB 11500 +7153 PRINT "Vous etes dans le laboratoire du Dr GENIUS" +7155 GOSUB 13000: RETURN +7160 LX=1: GOSUB 10900 +7163 PRINT "Vous etes dans une petite piece vide." +7165 GOSUB 13000: RETURN +7170 GOSUB 11700 +7173 PRINT "Vous etes...": & W 300:PRINT "Justement,vous ne savez pas ou vous etes" +7175 GOSUB 13000: RETURN +7180 GOSUB 11800 +7183 PRINT "Vous etes en haut de l'escalier" +7185 GOSUB 13000: RETURN +7190 LX=2: GOSUB 10900 +7193 PRINT "Vous etes dans la salle bain" +7195 GOSUB 13000: RETURN +7200 LX=1: GOSUB 12200 +7203 PRINT "Vous etes dans le living room" +7205 GOSUB 13000: RETURN +7210 LX=1: GOSUB 11000 +7213 PRINT "Vous etes dans une piece enfumee...!" +7215 GOSUB 13000: RETURN +7220 LX=0: GOSUB 12200 +7223 PRINT "Vous etes dans une grande piece" +7225 GOSUB 13000: RETURN +7230 GOSUB 12300 +7233 PRINT "Vous etes dans une piece de rangement" +7235 GOSUB 13000: RETURN +7240 GOSUB 12400 +7243 PRINT "Vous etes dans le dressing" +7245 GOSUB 13000: RETURN + +10000 RETURN +10100 RETURN +10200 RETURN +10300 RETURN +10400 RETURN +10500 RETURN +10600 RETURN +10700 RETURN +10800 RETURN +10900 RETURN +11000 RETURN +11500 RETURN +11700 RETURN +11800 RETURN +12200 RETURN +12300 RETURN +12400 RETURN + +13000 IF PEEK(-16384)<128 THEN 13020 +13010 & W 300 +13020 & W 100: POKE -16368,0: RETURN + +13100 IF PEEK(49179)<128 THEN 13120 +13110 POKE 49234,0: RETURN +13120 POKE 49235,0: RETURN diff --git a/lemanoirdudocteurgenius/apple2/jeu.bas b/lemanoirdudocteurgenius/apple2/jeu.bas index 6076d4b..c50da21 100644 --- a/lemanoirdudocteurgenius/apple2/jeu.bas +++ b/lemanoirdudocteurgenius/apple2/jeu.bas @@ -1,20 +1,4 @@ -1 REM -2 REM COPYRIGHT LORICIELS 83 L.BENES -3 REM LE MANOIR DU DOCTEUR GENIUS -4 REM -5 REM VERSION APPLE II REALISEE EN 2023 -6 REM PAR BRUTAL DELUXE SOFTWARE : ANTOINE VIGNAU & OLIVIER ZARDINI -7 REM -9 REM ... COPYRIGHT LORICIELS TOUT DROIT DE REPRODUCTION INTERDIT ..... - -45 HOME: PRINT: PRINT " VEUILLEZ PATIENTER" -50 GOSUB 8000 'CHARGEMENT VARIABLES -55 & H:DIM P(12):P(11)=0:P(12)=0 -60 SALLE=1 -70 FOR N=1 TO 10 -80 P(N)=0:C(N)=0 -85 NEXT -90 C(3)=14:C(7)=12:C(1)=80:C(9)=12 +10 & H 100 IFSALLE<>14ANDSALLE<>16ANDSALLE<>17ANDSALLE<>19 THEN P(2)=0 105 IF P(2)=0 THEN 200 106 IF O(22)=SA AND P(7)=1 THEN 200 @@ -22,8 +6,8 @@ 110 IF C(9)>1 THEN C(9)=C(9)-1 130 & H 140 PRINT "Il fait noir comme dans un four,il faudrait peut etre allumer" -145 IF PEEK(-16384)>128 THEN & W 500 ELSE & W 300 -150 POKE -16368,0: GOTO 500 +145 GOSUB 13000: GOTO 500 + 200 REM DESCRIPTION SALLE 210 PRINT 220 & G (7000+SALLE*10)-10 @@ -148,7 +132,7 @@ 2810 RETURN 2900 BREAK=530: RETURN 3000 BREAK=100: RETURN -3100 POP:GOTO20000 +3100 PRINT CHR$(4)"RUN PERDU" 3200 O(N)=SALLE: RETURN 3300 X$=O$(N):O$(N)=O$(N+1):O$(N+1)=X$: RETURN @@ -195,8 +179,8 @@ 4130 REM 4131 PRINT "Vous avez raison,la curiosite est un vilain defaut!!!" 4132 & W 400 -4133 POP:TEXT:PRINT:PRINT:PRINTSPC(12)"AU REVOIR" -4135 & W 200:GOTO 20100 +4133 TEXT:PRINT:PRINT:PRINTSPC(12)"AU REVOIR" +4135 & W 200: PRINT CHR$(4)"RUN PERDU" 4140 PRINT "Vous avez raison d'attendre,mais cela ne pourra pas durer"; 4141 PRINT " eternellement.." 4142 & W 450: RETURN @@ -284,7 +268,7 @@ 4600 & W 200:PRINT "Le code est exact...":POP:PRINT "La porte s'ouvre..." 4603 & W 400 4605 GOSUB 10000: PRINT "Vous voila en dehors de la maison..." -4608 GOSUB 32000: GOTO 20100 +4608 PRINT CHR$(4)"RUN GAGNE" 4610 & H:PRINT "A l'interieur du placard,il y a un motqui parle d'un teleporteur" 4615 & W 400:PRINT "Tiens le placard se ferme tout seul...": & W 150: RETURN 4620 PRINT "Avant de la poser par terre,il faudrait peut etre l'enlever." @@ -324,201 +308,76 @@ 7000 GOSUB 10000 7005 PRINT "Vous etes devant le manoir du defunt":PRINT: & W 250 7006 PRINT SPC(12)"Dr GENIUS" -7007 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7008 POKE -16368,0: RETURN +7007 GOSUB 13000: RETURN 7010 GOSUB 10100 7015 PRINT "Vous etes dans le hall d'entree." -7016 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7017 POKE -16368,0: RETURN +7016 GOSUB 13000: RETURN 7020 GOSUB 10200 7024 PRINT "Vous etes en bas de l'escalier menant au 2eme etage" -7025 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7026 POKE -16368,0: RETURN +7025 GOSUB 13000: RETURN 7030 F1=0: GOSUB 10300 7034 PRINT "Vous etes dans la salle a manger." -7035 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7036 POKE -16368,0: RETURN +7035 GOSUB 13000: RETURN 7040 F1=1: GOSUB 10300 7043 PRINT "Vous etes dans une biblioteque sans livre...!" -7045 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7046 POKE -16368,0: RETURN +7045 GOSUB 13000: RETURN 7050 GOSUB 10500 7053 PRINT "Vous etes dans une buanderie" -7055 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7056 POKE -16368,0: RETURN +7055 GOSUB 13000: RETURN 7060 GOSUB 10600 7063 PRINT "Vous etes dans le salon" -7065 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7066 POKE -16368,0: RETURN +7065 GOSUB 13000: RETURN 7070 LX=0: GOSUB 10700 7073 PRINT "Vous etes dans une chambre." -7075 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7076 POKE -16368,0: RETURN +7075 GOSUB 13000: RETURN 7080 GOSUB 10800 7083 PRINT "Vous etes dans un corridor" -7085 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7086 POKE -16368,0: RETURN +7085 GOSUB 13000: RETURN 7090 LX=0: GOSUB 10900 7093 PRINT "Vous etes dans une salle d'attente." -7095 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7096 POKE -16368,0: RETURN +7095 GOSUB 13000: RETURN 7100 LX=0: GOSUB 11000 7103 PRINT "Vous etes dans le vestibules" -7105 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7106 POKE -16368,0: RETURN +7105 GOSUB 13000: RETURN 7110 LX=2: GOSUB 10700 7113 PRINT "Vous etes dans la chambre d'amis." -7115 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7116 POKE -16368,0: RETURN +7115 GOSUB 13000: RETURN 7120 LX=1: GOSUB 10700 7123 PRINT "Vous etes dans une chambre." -7125 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7126 POKE -16368,0: RETURN +7125 GOSUB 13000: RETURN 7140 LX=2: GOSUB 12200 7143 PRINT "Vous etes dans une petite salle" -7145 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7146 POKE -16368,0: RETURN +7145 GOSUB 13000: RETURN 7150 GOSUB 11500 7153 PRINT "Vous etes dans le laboratoire du Dr GENIUS" -7155 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7156 POKE -16368,0: RETURN +7155 GOSUB 13000: RETURN 7160 LX=1: GOSUB 10900 7163 PRINT "Vous etes dans une petite piece vide." -7165 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7166 POKE -16368,0: RETURN +7165 GOSUB 13000: RETURN 7170 GOSUB 11700 7173 PRINT "Vous etes...": & W 300:PRINT "Justement,vous ne savez pas ou vous etes" -7175 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7176 POKE -16368,0: RETURN +7175 GOSUB 13000: RETURN 7180 GOSUB 11800 7183 PRINT "Vous etes en haut de l'escalier" -7185 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7186 POKE -16368,0: RETURN +7185 GOSUB 13000: RETURN 7190 LX=2: GOSUB 10900 7193 PRINT "Vous etes dans la salle bain" -7195 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7196 POKE -16368,0: RETURN +7195 GOSUB 13000: RETURN 7200 LX=1: GOSUB 12200 7203 PRINT "Vous etes dans le living room" -7205 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7206 POKE -16368,0: RETURN +7205 GOSUB 13000: RETURN 7210 LX=1: GOSUB 11000 7213 PRINT "Vous etes dans une piece enfumee...!" -7215 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7216 POKE -16368,0: RETURN +7215 GOSUB 13000: RETURN 7220 LX=0: GOSUB 12200 7223 PRINT "Vous etes dans une grande piece" -7225 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7226 POKE -16368,0: RETURN +7225 GOSUB 13000: RETURN 7230 GOSUB 12300 7233 PRINT "Vous etes dans une piece de rangement" -7235 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7236 POKE -16368,0: RETURN +7235 GOSUB 13000: RETURN 7240 GOSUB 12400 7243 PRINT "Vous etes dans le dressing" -7245 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 -7246 POKE -16368,0: RETURN - -8000 REM CHARGEMENT VARIABLES -8001 & R 8000: REM RESTORE -8010 V=70:DIM V$(V) -8020 FOR N=1 TO V -8030 READ KO$ -8040 V$(N)=KO$ -8050 NEXT -8060 DATA 01N,01NORD,02S,02SUD,03E,03EST,04O,04OUEST,05MONT,05GRIM,06DESC -8070 DATA 10PREN,10RAMA,11POSE,12OUVR,13FERM,14ENTR,14AVAN,15ALLU,16ETEI -8080 DATA 17REPA,17DEPA,18LIS,19REGA,20RETO,21RENI,21SENS,22REMP,23VIDE -8090 DATA 24INVE,24LIST,25RIEN,25ATTE,26POIG,27COUT,28TOUR,29LAMP,30CODE -8100 DATA 31ESCA,32PIST,33PLAC,34TORC,35TELE,36MONS,37PETR,38POT,18LIT -8110 DATA 39CLEF,40PAPI,41LIVR,42BRIQ,43COMB,44COFF,45ROUG,46BLEU,47VERT -8120 DATA 48TITR,49ROBI,50CISE,51PORT -8124 DATA 52ACTI,53JETE,53LANCE,54EAU,55ENFI,55PASS,56APPU,56ENFO,57ENLE -8126 DATA 58RENT -8130 O=25:DIM O(O):DIM O$(O) -8140 FOR N=1 TO O -8150 READ KO -8160 O(N)=KO -8170 NEXT -8180 DATA 06,05,05,08,08,00,00,11,11 -8190 DATA 13,20,18,16,16,16,16,00,21 -8200 DATA 00,22,25,12,00,25,00 -8210 FOR N=1 TO O -8220 READ KO$ -8230 O$(N)=KO$ -8240 NEXT -8250 DATA UNE TORCHE ELECTRIQUE,UN ROBINET,UN CISEAU,UN TOURNEVIS -8260 DATA UNE LAMPE A PETROLE,UNE LAMPE PLEINE,UNE LAMPE ALLUME,UN COUTEAU -8270 DATA UN PAPIER,UN LIVRE,DU PETROLE DANS UN LAVABO BOUCHE -8280 DATA UNE CLEF,UN BOUTON ROUGE,UN BOUTON BLEU -8290 DATA UN BOUTON VERT,UN TELEPORTEUR,UN TELEPORTEUR REPARE -8300 DATA UNE COMBINAISON ARGENTEE,UNE COMBINAISON ENFILEE,UN MONSTRE ALL'EST -8310 DATA UN PISTOLET,UN BRIQUET,UN BRIQUET ALLUME,UN POT,UN POT PLEIN D'EAU -8320 M=25:DIM M$(M) -8330 FOR N=1 TO M -8340 READ KO$ -8350 M$(N)=KO$ -8360 NEXT -8370 DATA 00,0403030400,030200,04020305010600,04040107032000,020400 -8380 DATA 04080109020500,030700,04130207031000 -8390 DATA 0409021100,0110031200,041100,030900,0209031500,00,00 -8400 DATA00,00,0122032100,040500,0125022200,012100 -8410 DATA 0124042200,022300,022100 -8430 A=128:DIM A$(A) -8440 FOR N=1 TO A -8450 READ KO$ -8460 A$(N)=KO$ -8470 NEXT -8480 DATA 1400A01.I02D02M.,0500A03D08.D03N.,0500A03E08E09D24.D04D05I19E02M. -8485 DATA 0500A03E08D24.D04D06N. -8490 DATA 0500A03E07.I19M.,0500A03E03.I19M.,0500A03.I19E02M.,0600A19D08.D03N. -8500 DATA0600A19E08E09D24.D04D05I03M.,0600A19E08D24.D04D06N.,0600A19.I03M. -8505 DATA 0100A09E07B22.D07N. -8510 DATA 0100A09E03B05.D07N.,0100A09.I14E02M.,0100A14.I16E02M. -8515 DATA 0200A16E07B22.D07N.,0200A16E03B05.D07N. -8520 DATA 0200A16.I14E02M.,0400A15E03B05.D07N.,0400A15E07B22.D07N. -8522 DATA 0400A15.I14E02M.,0100A15E03.I17M.,0100A15E07.I17M.,0100A15.I17E02M. -8525 DATA 0200A17.F01I15M. -8530 DATA 0300A17.D08N.,0400A17.D09K.,0300A18.D10F03E01E02I17M. -8531 DATA 0400A21E03.I19M. -8535 DATA 0400A21E07.I19M.,0400A21.I19E02M.,0200A22E03.I19M.,0200A22E07.I19M. -8540 DATA 0200A22.I19E02M.,0200A19.D11N.,0400A19.D11N.,0300A22.D12I23M. -8541 DATA 2500A01.D13.,2500I01.D14K.,1244A03.D15M.,1034B01.B01J.,1027B08.B08J. -8545 DATA 1028B04.B04J.,1029B05.B05J.,1032B21.B21J.,1038B24.B24J. -8548 DATA 1039B12.B12J.,1040B09.B09J.,1041B10.B10J.,1043B18.B18J. -8550 DATA 1050B03.B03J.,1042B22.B22J.,1037A20B05.H11P05E05D16K.,1037A20.D17K. -8553 DATA 1134.C01J.,1127.C08J.,1128.C04J.,1129.C05J.,1132.C21J.,1138.C24J. -8555 DATA 1143E09.D62K. -8556 DATA 1139.C12J.,1140.C09J.,1141.C10J.,1143.C18J.,1150.C03J.,1142.C22J. -8560 DATA 2400.A00L.,1249A05.E04D20G0405J.,1349A05.F04J.,2238A05E04.P24E08J. -8563 DATA 2338A05E08.F08P24J.,2338E08.D21N.,1848B10.D22L.,1841B10.D23N. -8566 DATA1840B09.D24K.,2040B09.D25K.,1951A02.D26M.,1951.D27K.,2100A14.D28K. -8570 DATA 2100.D29K.,1542C22.D33K.,1542E07.D30K.,1542A14.D07N. -8575 DATA 1542A17E01.D10K.,1542E02.F02E07E06P22M.,1542.E07P22J. -8580 DATA 1529C05.D33K.,1529E03.D30K.,1529F07.D31L.,1529F05.D32L. -8590 DATA 1529E02.F02E03E06P06P05M.,1529.E03P06P05J. -8595 DATA 1642C22.D33K.,1642F07.D30K.,1642E06E03.D36F07P22M. -8597 DATA 1642E06.E02F07F06P22M. -8600 DATA 1642.F07P22M.,1629C05.D33K.,1629F03.D30K.,1629E07E06.D34F03P05M. -8605 DATA 1629E06.E02F06F03P05M.,1629.F03P05M.,1534B01.D35N. -8610 DATA 1735I16.D45K.,1735E02.D43K.,1735F03.D44K.,1735C04.D46K. -8615 DATA 1735.P16E10J.,5600A16F10.D47K.,5646A16.D48N.,5647A16.D48N. -8620 DATA 5645A16F09.D50D06N.,5645A16.D49I18M.,5543D18E09.D30K. -8625 DATA 5543D18.P18E09J.,574& E AND18F09.D30K.,5743D18.P18F09J. -8630 DATA 1233A24C12.D51K.,1233A24C03.D52N.,1233A24.G0503E11D63K. -8635 DATA 2636E11.D54F11D55K.,5350E11.D54F11D55K.,5232B21.D56N. -8640 DATA 5830F08.D57.,5830.D58D59.,1233A06.D61M. -8650 DATA 1233A25.D64N. -8700 PL=INT(RND(1)*9000+1000) -8800 C=14:DIMC$(C) -8810 FOR N=1 TO C -8820 READ KO$ -8830 C$(N)=KO$ -8840 NEXT N -8850 DATA G03E03.D00N.,G04E04.D01N.,I14I16I17I19.F02.,G07E07.D18N.,GO1.D19N. -8860 DATA H06C03C08.D37N.,H08D08.D39L.,H06D03.D38L.,G08E08B24.D40D21N. -8870 DATA H02.D41N.,G09E02.D42N.,G05E11.D52N.,I24E11.D53D52N.,.L. -8900 RETURN +7245 GOSUB 13000: RETURN 10000 & H: & I 0: & S 100,190,1 10005 & D 0,-60,1: & D 97,0,1: & D 7,10,1: & D -97,0,1: & D -7,-10,1: & D 15,-20,1 @@ -711,7 +570,6 @@ 12235 IF LX<>0 THEN & S 117,45,1: & C 1,1: & I 3: RETURN 12240 & S 105,60,1: & D 15,0,0: & M -15,0,1: & D 0,-30,1: & D 12,3,1 12245 & D 0,30,1: & D -12,-4,1: & S 115,48,1: & I 3: RETURN -12299 GOTO14000 12300 & H: & I 0: & S 15,190,1: & D 0,-150,1: & D 67,-30,1: & D 67,0,1 12310 & D 82,30,1: & D 0,150,1: & D -65,-104,1: & D 0,-54,1: & D -16,-10,1 12315 & D 0,-10,1: & D 0,10,1: & D -37,0,1: & D -3,10,1: & D 0,54,1: & D 56,0,1 @@ -726,163 +584,6 @@ 12420 & D 22,0,1: & D 0,-92,1: & D -22,0,1: & D 44,-48,1: & D 10,0,1: & D -32,48,1 12425 & D 32,-48,1: & D 0,35,1: & D -14,46,3: & D 0,-61,1 12430 & S 81,88,1: & C 1,1: & M 11,-21,1: & C 1,1: & I 3: RETURN -12499 REM GOTO 14000 -13000 & H: & I 0: & S 75,62,1: & D -5,0,1: & D -55,108,1: & D 37,-10,1 -13005 & D 30,-90,1: & D -19,5,1: & D 19,-5,1: & D 20,5,1: & D -12,94,1 -13007 & D -38,-10,1: & D 38,10,1: & D 0,20,1: & D -75,0,1: & D 0,-20,1 -13010 & D 0,20,1: & D 75,0,1: & D 15,-112,1: & D 0,-15,1 -13012 & D -3,14,1: & D 3,-14,1: & D -13,0,1 -13015 & D 0,-12,1: & D 0,12,1: & D -4,10,1: & D 0,-22,1: & D 12,0,1 -13020 & D 4,-7,1: & D 0,-15,1: & D -4,6,1: & D 0,16,1: & D 0,-16,1: & D -12,0,1 -13025 & D 4,-6,1: & D 12,0,1: & D -12,0,1: & D 0,-16,1: & D -4,6,1: & D 0,16,1 -13030 & D 0,-16,1: & D -12,0,1: & D 4,-6,1: & D 12,0,1: & D -12,0,1: & D -4,6,1 -13035 & D 0,16,1: & D -12,0,1: & D 4,-6,1: & D 7,0,1: & D -7,0,1: & D -4,6,1 -13040 & D 0,16,1: & D 12,0,1: & D 0,22,1 -13045 & I 3: RETURN -20000 GOSUB 13000 'TOMBE -20010 GOSUB 30000 'SARABANDE -20100 TEXT: PRINT: PRINT: PRINT: PRINT: PRINT "Voulez-vous rejouer ?":GET X$ -20105 IF X$="O" THEN RUN 45 -20110 IF X$="N" THEN GOTO 20200 -20120 GOTO 20100 -20200 HOME: PRINT: PRINT: PRINT: PRINT " AU REVOIR" -20210 END - -30000 REM SARABANDE -30001 RETURN -30005 & R 30000: REM RESTORE -30010 FOR N=1 TO 41:READ Y$,Y$,Y$,Y$,Y$,Y$,Y$:NEXT -30015 FOR N=1 TO 75 -30020 READ A1,A2,A3,A4,A5 -30025 READ A6,A7,A8,A9,A0 -30030 REM MUSIC1,A1,A2,A3:MUSIC2,A4,A5,A6:MUSIC3,A7,A8,A9:PLAY7,0,0,100: & W A0 -30032 REM IF N>70 THEN NEXT:PLAY0,0,0,0: RETURN -30035 REM PLAY0,0,0,0:NEXT -30040 DATA 3,6,8,3,3,8,2,10,8,80 -30045 DATA 3,6,8,3,3,8,2,10,8,80 -30050 DATA 0,1,1,0,1,1,0,1,1,40 -30055 DATA 3,8,8,3,5,8,0,1,1,40 -30060 DATA 3,5,8,3,2,8,2,10,8,80 -30065 DATA 3,5,8,3,2,8,2,10,8,40 -30070 DATA 1,11,8,0,1,1,0,1,1,40 -30075 DATA 1,10,8,0,1,1,0,1,1,40 -30080 DATA 1,8,8,0,1,1,0,1,1,40 -30085 DATA 3,10,8,3,6,9,3,1,8,80 -30090 DATA 3,10,8,3,6,9,3,1,8,80 -30095 DATA 0,1,1,0,1,1,0,1,1,40 -30100 DATA 3,11,8,3,8,8,0,1,1,40 -30105 DATA 3,8,8,3,5,8,3,1,8,80 -30110 DATA 3,8,8,3,5,8,3,1,8,40 -30115 DATA 2,1,8,0,1,1,0,1,1,40 -30120 DATA 1,11,8,0,1,1,0,1,1,40 -30125 DATA 1,10,8,3,7,8,3,10,8,40 -30130 DATA 3,11,8,3,8,8,3,3,8,80 -30135 DATA 3,11,8,3,8,8,3,3,8,80 -30140 DATA 1,8,8,0,1,1,0,1,1,40 -30145 DATA 1,8,8,3,10,8,4,1,8,40 -30150 DATA 3,10,8,3,6,8,3,3,8,80 -30155 DATA 3,10,8,3,6,8,3,3,8,80 -30160 DATA 0,1,1,0,1,1,0,1,1,40 -30165 DATA 3,10,8,2,1,8,0,1,1,40 -30170 DATA 4,3,8,3,10,8,1,11,8,80 -30175 DATA 4,3,8,3,8,8,2,11,9,80 -30180 DATA 0,1,1,0,1,1,0,1,1,40 -30185 DATA 4,5,8,0,1,1,0,1,1,40 -30190 DATA 4,2,8,3,10,8,3,5,8,80 -30195 DATA 4,2,8,3,10,8,3,5,8,40 -30200 DATA 2,8,8,0,1,1,0,1,1,40 -30202 DATA 2,6,8,0,1,1,0,1,1,40 -30203 DATA 2,5,8,0,1,1,0,1,1,40 -30205 DATA 3,6,8,3,3,8,2,10,8,80 -30210 DATA 3,6,8,3,3,8,2,10,8,80 -30215 DATA 0,1,1,0,1,1,0,1,1,40 -30220 DATA 3,8,8,3,5,8,0,1,1,40 -30225 DATA 3,5,8,3,2,8,2,10,8,80 -30230 DATA 3,5,8,3,2,8,2,10,8,40 -30235 DATA 1,11,8,0,1,1,0,1,1,40 -30240 DATA 1,10,8,0,1,1,0,1,1,40 -30245 DATA 1,8,8,0,1,1,0,1,1,40 -30250 DATA 3,10,8,3,6,9,3,1,8,80 -30255 DATA 3,10,8,3,6,9,3,1,8,80 -30260 DATA 0,1,1,0,1,1,0,1,1,40 -30265 DATA 3,11,8,3,8,8,0,1,1,40 -30270 DATA 3,8,8,3,5,8,3,1,8,80 -30275 DATA 3,8,8,3,5,8,3,1,8,40 -30280 DATA 2,1,8,0,1,1,0,1,1,40 -30285 DATA 1,11,8,0,1,1,0,1,1,40 -30290 DATA 1,10,8,3,7,8,3,10,8,40 -30295 DATA 3,11,8,3,8,8,3,3,8,80 -30300 DATA 2,8,8,0,1,1,0,1,1,40 -30305 DATA 3,11,8,3,8,8,3,1,8,40 -30310 DATA 2,8,8,0,1,1,0,1,1,40 -30315 DATA 2,1,8,0,1,1,0,1,1,40 -30320 DATA 4,1,8,2,5,8,0,1,1,40 -30325 DATA 3,10,8,3,6,8,3,1,8,80 -30330 DATA 3,10,8,2,3,8,0,1,1,40 -30335 DATA 4,3,8,3,6,8,2,11,8,40 -30340 DATA 4,2,8,0,1,1,0,1,1,40 -30345 DATA 4,3,8,3,11,8,2,8,8,40 -30350 DATA 4,5,8,0,1,1,0,1,1,40 -30355 DATA 4,6,8,3,10,8,2,10,8,80 -30360 DATA 4,5,8,3,8,8,1,10,8,40 -30365 DATA 0,1,1,3,8,8,1,10,8,40 -30370 DATA 4,3,8,0,1,1,0,1,1,40 -30375 DATA 4,3,8,3,6,8,2,3,8,80 -30380 DATA 3,3,8,3,10,8,3,6,8,40 -30385 DATA 3,3,7,3,10,7,3,6,7,40 -30390 DATA 3,3,6,3,10,6,3,6,6,40 -30395 DATA 3,3,5,3,10,5,3,6,5,40 -30400 DATA 3,3,4,3,10,4,3,6,5,40 - -32000 REM TEA FOR TWO -32001 GOTO 33000 -32002 & R 32000: REM RESTORE -32004 FOR N=1 TO 166:READ Y$,Y$,Y$,Y$,Y$,Y$,Y$,Y$:NEXT -32005 FOR N=1 TO 110 -32010 READ A1,A2,A3 -32015 REM MUSIC1,A1,A2,10:PLAY1,0,0,100: & W A3 -32020 REM PLAY0,0,0,0 -32022 NEXT -32025 DATA 4,6,45,4,3,15,4,5,45,4,3,15,4,6,45,4,3,15,4,5,45 -32030 DATA 4,1,15,4,5,45,4,1,15,4,3,45,4,1,15,4,5,45,4,1,15 -32035 DATA4,3,45,4,1,15,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45 -32040 DATA4,3,15,4,5,45,4,1,30,4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,7,8 -32045 DATA4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,5,8,4,9,30,4,7,22,4,5,8 -32050 DATA4,7,30,4,7,22,4,5,8,4,9,30,4,9,22,4,5,8,4,7,30,4,7,22,4,5,8 -32055 DATA4,10,30,4,10,22,4,7,8,4,9,30,4,9,22,4,7,8,4,10,30,4,10,22,4,7,8 -32060 DATA4,9,30,4,9,30,5,2,120,5,1,60,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45 -32065 DATA4,3,15,4,5,45,4,1,15,4,5,45,4,1,15,4,3,45,4,1,15,4,5,45,4,1,15 -32070 DATA4,3,45,4,1,15,4,6,45,4,3,15,4,5,45,4,3,15,4,6,45,4,3,15,4,5,45 -32075 DATA4,1,30,5,3,45,5,3,15,5,1,45,5,1,15,4,11,45,4,11,15,4,10,45,4,10,15 -32080 DATA5,1,45,5,1,15,4,11,45,4,11,15,4,10,45,4,10,15,4,8,45,4,8,15 -32085 DATA4,6,45,4,3,15,4,5,45,4,3,15 -32090 DATA4,6,45,4,3,15,4,5,45,4,10,15,4,6,120 - -33000 TEXT:HOME:NORMAL -33002 GOSUB 50000 -33003 RETURN: REM LOGO -33005 FOR N=1 TO 331:READ Y$,Y$,Y$,Y$,Y$:NEXT:READ Y$,Y$,Y$ -33010 FOR N=46360 TO 46423 -33020 READ GH:POKE N,GH -33030 NEXT -33040 DATA 1,2,4,4,4,2,3,1,48,32,24,16,32,16,32,32 -33050 DATA 2,6,9,8,8,8,4,6,16,16,8,40,26,12,10,16 -33060 DATA 7,8,8,16,16,8,28,0,48,8,8,4,4,2,3,0 -33070 DATA 3,4,4,6,2,2,3,0,48,24,8,4,4,4,6,0 -33100 FOR N=48802 TO 48836 STEP 2 -33110 POKE N,35:POKE N+1,36:POKE N+40,37:POKE N+41,38:POKE N+80,39:POKE N+81,40 -33120 REM & W 48836-N -33130 POKE N,32:POKE N+40,32:POKE N+80,32 -33140 POKE N+1,35:POKE N+2,36:POKE N+41,37:POKE N+42,38:POKE N+81,41:POKE N+82,42 -33150 REM & W 48836-N -33160 POKE N+1,32:POKE N+41,32:POKE N+81,32 -33170 NEXT -33180 POKE N,32:POKE N+40,32:POKE N+80,32 -33190 REM CALL#F89B -33200 RETURN - -50000 PRINT: PRINT " Cela est exceptionnel,vous etes le premier a etre sorti vivant"; -50010 PRINT " de cette": PRINT: PRINT "maison , mais je serais vous , je me ": PRINT "mettrais a "; -50020 PRINT "courrir car un nain rode": PRINT: PRINT "peut etre dans les parages" -50030 RETURN +13000 IF PEEK(-16384)>128 THEN & W 400 ELSE & W 100 +13010 POKE -16368,0: RETURN diff --git a/lemanoirdudocteurgenius/apple2/perdu.bas b/lemanoirdudocteurgenius/apple2/perdu.bas new file mode 100644 index 0000000..0a86707 --- /dev/null +++ b/lemanoirdudocteurgenius/apple2/perdu.bas @@ -0,0 +1,107 @@ +10 GOSUB 13000: REM TOMBE +20 GOSUB 30000: REM SARABANDE +30 TEXT: PRINT: PRINT: PRINT: PRINT: PRINT "Voulez-vous rejouer ?":GET X$ +40 IF X$="O" THEN PRINT CHR$(4);"RUN PRESENTATION" +50 IF X$="N" THEN GOTO 70 +60 GOTO 30 +70 HOME: PRINT: PRINT: PRINT: PRINT " AU REVOIR" +80 END + +13000 & H: & I 0: & S 75,62,1: & D -5,0,1: & D -55,108,1: & D 37,-10,1 +13005 & D 30,-90,1: & D -19,5,1: & D 19,-5,1: & D 20,5,1: & D -12,94,1 +13007 & D -38,-10,1: & D 38,10,1: & D 0,20,1: & D -75,0,1: & D 0,-20,1 +13010 & D 0,20,1: & D 75,0,1: & D 15,-112,1: & D 0,-15,1 +13012 & D -3,14,1: & D 3,-14,1: & D -13,0,1 +13015 & D 0,-12,1: & D 0,12,1: & D -4,10,1: & D 0,-22,1: & D 12,0,1 +13020 & D 4,-7,1: & D 0,-15,1: & D -4,6,1: & D 0,16,1: & D 0,-16,1: & D -12,0,1 +13025 & D 4,-6,1: & D 12,0,1: & D -12,0,1: & D 0,-16,1: & D -4,6,1: & D 0,16,1 +13030 & D 0,-16,1: & D -12,0,1: & D 4,-6,1: & D 12,0,1: & D -12,0,1: & D -4,6,1 +13035 & D 0,16,1: & D -12,0,1: & D 4,-6,1: & D 7,0,1: & D -7,0,1: & D -4,6,1 +13040 & D 0,16,1: & D 12,0,1: & D 0,22,1 +13045 & I 3: RETURN + +30000 REM SARABANDE +30001 RETURN +30005 & R 30000: REM RESTORE +30010 FOR N=1 TO 41:READ Y$,Y$,Y$,Y$,Y$,Y$,Y$:NEXT +30015 FOR N=1 TO 75 +30020 READ A1,A2,A3,A4,A5 +30025 READ A6,A7,A8,A9,A0 +30030 REM MUSIC1,A1,A2,A3:MUSIC2,A4,A5,A6:MUSIC3,A7,A8,A9:PLAY7,0,0,100: & W A0 +30032 REM IF N>70 THEN NEXT:PLAY0,0,0,0: RETURN +30035 REM PLAY0,0,0,0:NEXT +30040 DATA 3,6,8,3,3,8,2,10,8,80 +30045 DATA 3,6,8,3,3,8,2,10,8,80 +30050 DATA 0,1,1,0,1,1,0,1,1,40 +30055 DATA 3,8,8,3,5,8,0,1,1,40 +30060 DATA 3,5,8,3,2,8,2,10,8,80 +30065 DATA 3,5,8,3,2,8,2,10,8,40 +30070 DATA 1,11,8,0,1,1,0,1,1,40 +30075 DATA 1,10,8,0,1,1,0,1,1,40 +30080 DATA 1,8,8,0,1,1,0,1,1,40 +30085 DATA 3,10,8,3,6,9,3,1,8,80 +30090 DATA 3,10,8,3,6,9,3,1,8,80 +30095 DATA 0,1,1,0,1,1,0,1,1,40 +30100 DATA 3,11,8,3,8,8,0,1,1,40 +30105 DATA 3,8,8,3,5,8,3,1,8,80 +30110 DATA 3,8,8,3,5,8,3,1,8,40 +30115 DATA 2,1,8,0,1,1,0,1,1,40 +30120 DATA 1,11,8,0,1,1,0,1,1,40 +30125 DATA 1,10,8,3,7,8,3,10,8,40 +30130 DATA 3,11,8,3,8,8,3,3,8,80 +30135 DATA 3,11,8,3,8,8,3,3,8,80 +30140 DATA 1,8,8,0,1,1,0,1,1,40 +30145 DATA 1,8,8,3,10,8,4,1,8,40 +30150 DATA 3,10,8,3,6,8,3,3,8,80 +30155 DATA 3,10,8,3,6,8,3,3,8,80 +30160 DATA 0,1,1,0,1,1,0,1,1,40 +30165 DATA 3,10,8,2,1,8,0,1,1,40 +30170 DATA 4,3,8,3,10,8,1,11,8,80 +30175 DATA 4,3,8,3,8,8,2,11,9,80 +30180 DATA 0,1,1,0,1,1,0,1,1,40 +30185 DATA 4,5,8,0,1,1,0,1,1,40 +30190 DATA 4,2,8,3,10,8,3,5,8,80 +30195 DATA 4,2,8,3,10,8,3,5,8,40 +30200 DATA 2,8,8,0,1,1,0,1,1,40 +30202 DATA 2,6,8,0,1,1,0,1,1,40 +30203 DATA 2,5,8,0,1,1,0,1,1,40 +30205 DATA 3,6,8,3,3,8,2,10,8,80 +30210 DATA 3,6,8,3,3,8,2,10,8,80 +30215 DATA 0,1,1,0,1,1,0,1,1,40 +30220 DATA 3,8,8,3,5,8,0,1,1,40 +30225 DATA 3,5,8,3,2,8,2,10,8,80 +30230 DATA 3,5,8,3,2,8,2,10,8,40 +30235 DATA 1,11,8,0,1,1,0,1,1,40 +30240 DATA 1,10,8,0,1,1,0,1,1,40 +30245 DATA 1,8,8,0,1,1,0,1,1,40 +30250 DATA 3,10,8,3,6,9,3,1,8,80 +30255 DATA 3,10,8,3,6,9,3,1,8,80 +30260 DATA 0,1,1,0,1,1,0,1,1,40 +30265 DATA 3,11,8,3,8,8,0,1,1,40 +30270 DATA 3,8,8,3,5,8,3,1,8,80 +30275 DATA 3,8,8,3,5,8,3,1,8,40 +30280 DATA 2,1,8,0,1,1,0,1,1,40 +30285 DATA 1,11,8,0,1,1,0,1,1,40 +30290 DATA 1,10,8,3,7,8,3,10,8,40 +30295 DATA 3,11,8,3,8,8,3,3,8,80 +30300 DATA 2,8,8,0,1,1,0,1,1,40 +30305 DATA 3,11,8,3,8,8,3,1,8,40 +30310 DATA 2,8,8,0,1,1,0,1,1,40 +30315 DATA 2,1,8,0,1,1,0,1,1,40 +30320 DATA 4,1,8,2,5,8,0,1,1,40 +30325 DATA 3,10,8,3,6,8,3,1,8,80 +30330 DATA 3,10,8,2,3,8,0,1,1,40 +30335 DATA 4,3,8,3,6,8,2,11,8,40 +30340 DATA 4,2,8,0,1,1,0,1,1,40 +30345 DATA 4,3,8,3,11,8,2,8,8,40 +30350 DATA 4,5,8,0,1,1,0,1,1,40 +30355 DATA 4,6,8,3,10,8,2,10,8,80 +30360 DATA 4,5,8,3,8,8,1,10,8,40 +30365 DATA 0,1,1,3,8,8,1,10,8,40 +30370 DATA 4,3,8,0,1,1,0,1,1,40 +30375 DATA 4,3,8,3,6,8,2,3,8,80 +30380 DATA 3,3,8,3,10,8,3,6,8,40 +30385 DATA 3,3,7,3,10,7,3,6,7,40 +30390 DATA 3,3,6,3,10,6,3,6,6,40 +30395 DATA 3,3,5,3,10,5,3,6,5,40 +30400 DATA 3,3,4,3,10,4,3,6,5,40 diff --git a/lemanoirdudocteurgenius/apple2/presentation2.bas b/lemanoirdudocteurgenius/apple2/presentation.bas similarity index 84% rename from lemanoirdudocteurgenius/apple2/presentation2.bas rename to lemanoirdudocteurgenius/apple2/presentation.bas index 4273c80..ebb5f43 100644 --- a/lemanoirdudocteurgenius/apple2/presentation2.bas +++ b/lemanoirdudocteurgenius/apple2/presentation.bas @@ -5,7 +5,7 @@ 5 REM PAR BRUTAL DELUXE SOFTWARE : ANTOINE VIGNAU & OLIVIER ZARDINI 6 HOME: TEXT: NORMAL: HTAB 4: VTAB 12: PRINT "LORICIELS EST FIER DE PRESENTER :" -7 PRINT CHR$(4)"BLOAD AMPERSAND,A$1800": CALL 6144: REM $1800 +7 PRINT CHR$(4);"BLOAD AMPERSAND,A$1800": CALL 6144: REM $1800 8 HOME 9 REM ... COPYRIGHT LORICIELS TOUT DROIT DE REPRODUCTION INTERDIT ..... @@ -43,20 +43,20 @@ 45 GOTO 42 50 HOME: PRINT: PRINT "Vous voici arrive dans le manoir du Dr Genius..." -51 & W 350: PRINT: PRINT "Pour converser avec l'ordinateur,il faut rentrer les ordres" -52 & W 300: PRINT: PRINT "en 1 ou 2 mots tels que:": PRINT: & W 200: PRINT " NORD" -53 & W 200: PRINT: PRINT " PRENDS PILLULE" -54 & W 200: PRINT: PRINT "ou pour commencer:";: & W 150: PRINT "ENTRE" -55 & W 300: PRINT: PRINT: PRINT "Si vous voulez faire durer la phrase decrivant"; -56 PRINT " la salle taper une touche": & W 400 -57 PRINT: PRINT: PRINT: PRINT: PRINT " pressez une touche": GET X$ +51 & W 350: PRINT: PRINT "Pour converser avec l'ordinateur, il" +52 & W 300: PRINT "faut rentrer les ordres en 1 ou 2 mots": PRINT "tels que :": PRINT: & W 200: PRINT " NORD" +53 & W 200: PRINT: PRINT " PRENDS PILULE" +54 & W 200: PRINT: PRINT "ou pour commencer : ";: & W 150: PRINT "ENTRE" +55 & W 300: PRINT: PRINT: PRINT "Si vous voulez faire durer la phrase" +56 PRINT "decrivant la salle, tapez une touche": & W 400 +57 PRINT: PRINT: PRINT: PRINT: PRINT " Pressez une touche": GET X$ -58 HOME: PRINT: PRINT " Un dernier conseil:";: & W 200: PRINT "Il peut parfois": PRINT -59 PRINT "y avoir une porte derriere vous.": & W 200 +58 HOME: PRINT: PRINT " Un dernier conseil : ";: & W 200: PRINT "Il peut parfois": PRINT +59 PRINT "y avoir une porte derriere vous...": & W 200 60 HOME: HTAB 12: VTAB 12: FLASH: PRINT "VEUILLEZ PATIENTER": NORMAL 61 POKE 16384,0: POKE 103,1: POKE 104,64: REM $4001 -62 PRINT CHR$(4);"RUN JEU" +62 PRINT CHR$(4);"RUN INITIALISATION" 31000 REM BADINERIE 31005 RETURN: REM RESTORE @@ -104,4 +104,4 @@ 51070 PRINT: PRINT "provoques par votre echec dans" 51080 PRINT: PRINT "le Manoir du Dr GENIUS ............." 51099 & W 1000 -51100 RETURN \ No newline at end of file +51100 RETURN diff --git a/lemanoirdudocteurgenius/lemanoirdudrgenius.dsk b/lemanoirdudocteurgenius/lemanoirdudrgenius.dsk index 55e7a7f..55ef556 100644 Binary files a/lemanoirdudocteurgenius/lemanoirdudrgenius.dsk and b/lemanoirdudocteurgenius/lemanoirdudrgenius.dsk differ