Il me faut de la RAM !

This commit is contained in:
Antoine Vignau 2023-10-26 21:40:37 +02:00
parent 0cdd6785bc
commit dcc98dcb6b
11 changed files with 1974 additions and 675 deletions

View File

@ -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"

View File

@ -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
87 | 1 ampersand.s 87 | Code | 11 | | 3 | 00/1820 : 8D F6 03 | sta {$3f5}+1
88 | 1 ampersand.s 88 | Code | 11 | | 2 | 00/1823 : A9 18 | 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
88 | 1 ampersand.s 88 | Code | 11 | | 3 | 00/1820 : 8D F6 03 | sta {$3f5}+1
89 | 1 ampersand.s 89 | Code | 11 | | 2 | 00/1823 : A9 18 | 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<30>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<30>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 |
------+-----------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------

View File

@ -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

View File

@ -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"

View File

@ -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)<N THEN OK=1 ELSE OK=0
1575 RETURN
1580 IF N<>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<O THEN GOTO 1810 ELSE GOTO1870
1840 IF HH=0 THEN PRINT "Vous detenez:": & W 100
1850 HH=1
1860 PRINTO$(G);:PRINT " ";: & W 150
1865 IF G<V THEN 1810
1870 IF HH=1 THEN PRINT ".": RETURN
1880 PRINT "Vous ne detenez absolument rien!!!": & W 200: RETURN
1900 IF S(1)<5 THEN 1930
1910 PRINT "Il parait evident que vous ne pouvez portez tant de chose!!"
1920 & W 250:BREAK=100: RETURN
1930 IF O(N)<>-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

View File

@ -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)<N THEN OK=1
1575 RETURN
1580 IF N<>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<O THEN GOTO 1810
1835 GOTO 1870
1840 IF HH=0 THEN PRINT "Vous detenez:": & W 100
1850 HH=1
1860 PRINTO$(G);:PRINT " ";: & W 150
1865 IF G<V THEN 1810
1870 IF HH=1 THEN PRINT ".": RETURN
1880 PRINT "Vous ne detenez absolument rien!!!": & W 200: RETURN
1900 IF S(1)<5 THEN 1930
1910 PRINT "Il parait evident que vous ne pouvez portez tant de chose!!"
1920 & W 250:BREAK=100: RETURN
1930 IF O(N)<>-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

View File

@ -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

View File

@ -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

View File

@ -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
51100 RETURN