Subversion Repositories Kolibri OS

Rev

Rev 551 | Rev 5091 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 551 Rev 1802
1
;
1
;
2
;    PONG for MENUET v1.0
2
;    PONG for MENUET v1.1
3
;    2001 by Mario Birkner, Germany
3
;    2001 by Mario Birkner, Germany
4
;    cyflexx@digitalrice.com
4
;    cyflexx@digitalrice.com
5
;
5
;
6
;    PONG for MENUET is
6
;    PONG for MENUET is
7
;    a small PONG-clone for MenuetOS
7
;    a small PONG-clone for MenuetOS/KolibriOS
8
;
8
;
-
 
9
;
9
; HINT: If the Paddle moves too slow,increase the
10
;    improved by Oleksandr Bogomaz aka Albom
10
;       typematic Rate in your BIOS
11
;    albom85@yandex.ru
-
 
12
;    11.07.2008
11
;
13
;
12
 
14
 
13
include '..\..\..\macros.inc'
15
include '../../../macros.inc'
14
 
16
 
15
CK_UP1 equ 113
17
CK_UP1 equ 16
16
CK_DOWN1 equ 97
18
CK_DOWN1 equ 30
17
CK_UP2 equ 130+48
19
CK_UP2 equ 72
18
CK_DOWN2 equ 129+48
20
CK_DOWN2 equ 80
19
 
21
 
20
use32
22
use32
21
 
23
 
22
                org     0x0
24
                org     0x0
23
 
25
 
24
                db      'MENUET00'              ; 8 byte id
26
                db      'MENUET00'              ; 8 byte id
25
                dd      38                      ; required os
27
                dd      38                      ; required os
26
                dd      START                   ; program start
28
                dd      START                   ; program start
27
                dd      I_END                   ; program image size
29
                dd      I_END                   ; program image size
28
                dd      0x2000                  ; required amount of memory
30
                dd      0x2000                  ; required amount of memory
29
                dd      0x2000                  ; esp = 0x7FFF0
31
                dd      0x2000                  ; esp = 0x7FFF0
30
                dd      0x00000000              ; reserved=no extended header
32
                dd      0x00000000              ; reserved=no extended header
31
 
33
 
32
 
34
 
33
 
35
 
34
START:
36
START:
-
 
37
 
-
 
38
    mov  eax, 66
-
 
39
    mov  ebx, 1
-
 
40
    mov  ecx, 1
-
 
41
    mcall		; óñòàíîâèòü ðåæèì ñêàíêîäîâ
35
 
42
 
36
    call draw_window
43
    call draw_window
37
 
44
 
38
 
45
 
39
still:
46
still:
40
 
47
 
41
    mov  eax,10
48
    mov  eax,10
42
    add  eax,[control]
49
    add  eax,[control]
43
    mcall
50
    mcall
44
    cmp  eax,1
51
    cmp  eax,1
45
    je   red
52
    je   red
46
    cmp  eax,2
53
    cmp  eax,2
47
    je   key
54
    je   key
48
    cmp  eax,3
55
    cmp  eax,3
49
    je   button
56
    je   button
50
    cmp  [control],1
57
    cmp  [control],1
51
    jne  still
58
    jne  still
52
 
59
 
53
    mov  eax,5
60
    mov  eax,5
54
    mov  ebx,[delay]
61
    mov  ebx,[delay]
55
    mcall
62
    mcall
-
 
63
 
-
 
64
    ; â ñîîòâåòñòâèè ñ íàæàòûìè êëàâèøàìè ïåðåìåùàåì ïëîæàäêè
-
 
65
    cmp  [is_up1], 1
-
 
66
    jne  _next_key1
-
 
67
    cmp  [posya],52*65536+64
-
 
68
    je   _next_key2
-
 
69
    sub  [posya],4*65536
-
 
70
 _next_key1:
-
 
71
    cmp  [is_dn1], 1
-
 
72
    jne  _next_key2
-
 
73
    cmp  [posya],140*65536+64
-
 
74
    je   _next_key2
-
 
75
    add  [posya],4*65536
-
 
76
 _next_key2:
-
 
77
    cmp  [is_up2], 1
-
 
78
    jne  _next_key3
-
 
79
    cmp  [posyb],52*65536+64
-
 
80
    je   keys_ok
-
 
81
    sub  [posyb],4*65536
-
 
82
 _next_key3:
-
 
83
    cmp  [is_dn2], 1
-
 
84
    jne  _next_key4
-
 
85
    cmp  [posyb],140*65536+64
-
 
86
    je   keys_ok
-
 
87
    add  [posyb],4*65536
-
 
88
 _next_key4:
-
 
89
 
-
 
90
 
-
 
91
 keys_ok:
-
 
92
 
-
 
93
    ; ñòèðàåì ïëîùàäêè
-
 
94
    call cl1
-
 
95
    call cl0
-
 
96
    ; ðèñóåì ïëîùàäêè
-
 
97
    call drawpad
56
 
98
 
57
    jmp  move
99
    jmp  move
58
 
100
 
59
 red:
101
 red:
60
    call draw_window
102
    call draw_window
61
    cmp  [control],1
103
    cmp  [control],1
62
    jne  still
104
    jne  still
63
    call clall
105
    call clall
64
    call drawpad
106
    call drawpad
65
    jmp  still
107
    jmp  still
66
 key:
108
 key:
67
    mov  eax,2
109
    mov  eax,2
68
    mcall
110
    mcall
69
    cmp  [control],1
111
    cmp  [control],1
70
    jne  still
112
    jne  still
71
 
113
 
72
   up1:
114
   up1:
73
    cmp  ah,CK_UP1
115
    cmp  ah,CK_UP1 ; îáðàáîòêà íàæàòèÿ êëàâèøè
74
    jne  dn1
116
    jne  dn1
75
    cmp  [posya],52*65536+64
-
 
76
    je   still
117
    mov  [is_up1], 1
77
    sub  [posya],4*65536
118
    mov  [is_dn1], 0
78
    call cl0
-
 
79
    call drawpad
-
 
80
    jmp  still
119
    jmp  still
81
   dn1:
120
   dn1:
-
 
121
    cmp  ah,CK_DOWN1 ; îáðàáîòêà íàæàòèÿ êëàâèøè
-
 
122
    jne  up1u
-
 
123
    mov  [is_up1], 0
82
    cmp  ah,CK_DOWN1
124
    mov  [is_dn1], 1
-
 
125
    jmp  still
-
 
126
   up1u:
-
 
127
    cmp  ah,CK_UP1+128 ; îáðàáîòêà îòïóñêàíèÿ êëàâèøè
-
 
128
    jne  dn1u
-
 
129
    mov  [is_up1], 0
-
 
130
    mov  [is_dn1], 0
-
 
131
    jmp  still
-
 
132
   dn1u:
-
 
133
    cmp  ah,CK_DOWN1+128 ; îáðàáîòêà îòïóñêàíèÿ êëàâèøè
83
    jne  up2
134
    jne  up2
84
    cmp  [posya],140*65536+64
-
 
85
    je   still
135
    mov  [is_up1], 0
86
    add  [posya],4*65536
136
    mov  [is_dn1], 0
87
    call cl0
-
 
88
    call drawpad
-
 
89
    jmp  still
137
    jmp  still
-
 
138
 
90
   up2:
139
   up2:
91
    cmp  ah,CK_UP2
140
    cmp  ah,CK_UP2 ; îáðàáîòêà íàæàòèÿ êëàâèøè
92
    jne  dn2
141
    jne  dn2
93
    cmp  [posyb],52*65536+64
-
 
94
    je   still
142
    mov  [is_up2], 1
95
    sub  [posyb],4*65536
143
    mov  [is_dn2], 0
96
    call cl1
-
 
97
    call drawpad
-
 
98
    jmp  still
144
    jmp  still
99
   dn2:
145
   dn2:
-
 
146
    cmp  ah,CK_DOWN2 ; îáðàáîòêà íàæàòèÿ êëàâèøè
-
 
147
    jne  up2u
-
 
148
    mov  [is_up2], 0
-
 
149
    mov  [is_dn2], 1
100
    cmp  ah,CK_DOWN2
150
    jmp  still
-
 
151
   up2u:
-
 
152
    cmp  ah,CK_UP2+128 ; îáðàáîòêà îòïóñêàíèÿ êëàâèøè
-
 
153
    jne  dn2u
-
 
154
    mov  [is_up2], 0
-
 
155
    mov  [is_dn2], 0
-
 
156
    jmp  still
-
 
157
   dn2u:
-
 
158
    cmp  ah,CK_DOWN2+128 ; îáðàáîòêà îòïóñêàíèÿ êëàâèøè
101
    jne  still
159
    jne  still
102
    cmp  [posyb],140*65536+64
-
 
103
    je   still
160
    mov  [is_up2], 0
104
    add  [posyb],4*65536
161
    mov  [is_dn2], 0
105
    call cl1
-
 
106
    call drawpad
-
 
107
    jmp  still
162
    jmp  still
108
 
163
 
109
  button:
164
  button:
110
    mov  eax,17
165
    mov  eax,17
111
    mcall
166
    mcall
112
 
167
 
113
    cmp  ah,1
168
    cmp  ah,1
114
    jne  button2
169
    jne  button2
115
    mov  eax,-1
170
    mov  eax,-1
116
    mcall
171
    mcall
117
 
172
 
118
    jmp  still
173
    jmp  still
119
 
174
 
120
  button2:
175
  button2:
121
    cmp  ah,2
176
    cmp  ah,2
122
    jne  still
177
    jne  still
123
    mov  [control],1
178
    mov  [control],1
124
    mov  [scp1],0
179
    mov  [scp1],0
125
    mov  [scp2],0
180
    mov  [scp2],0
126
    jmp  res
181
    jmp  res
127
 move:
182
 move:
128
    mov  eax,[mposx]
183
    mov  eax,[mposx]
129
    mov  ebx,[mposy]
184
    mov  ebx,[mposy]
130
    add  [bposx],eax
185
    add  [bposx],eax
131
    add  [bposy],ebx
186
    add  [bposy],ebx
132
    cmp  [bposx],16*65536+16
187
    cmp  [bposx],16*65536+16
133
     je  pf1
188
     je  pf1
134
    cmp  [bposx],272*65536+16
189
    cmp  [bposx],272*65536+16
135
     je  pf2
190
     je  pf2
136
    cmp  [bposy],191*65536+16
191
    cmp  [bposy],191*65536+16
137
     je  bot
192
     je  bot
138
    cmp  [bposy],48*65536+16
193
    cmp  [bposy],48*65536+16
139
     je  top
194
     je  top
140
    cmp  [bposx],247*65536+16
195
    cmp  [bposx],247*65536+16
141
     je  rig
196
     je  rig
142
     jg  padr
197
     jg  padr
143
    cmp  [bposx],55*65536+16
198
    cmp  [bposx],55*65536+16
144
     je  lef
199
     je  lef
145
     jl  padl
200
     jl  padl
146
    jmp  draw
201
    jmp  draw
147
 
202
 
148
 padr:
203
 padr:
149
    mov  ecx,[posyb]
204
    mov  ecx,[posyb]
150
    jmp  pad
205
    jmp  pad
151
 padl:
206
 padl:
152
    mov  ecx,[posya]
207
    mov  ecx,[posya]
153
 pad:
208
 pad:
154
    mov  eax,[bposy]
209
    mov  eax,[bposy]
155
    sub  eax,16
210
    sub  eax,16
156
    mov  ebx,eax
211
    mov  ebx,eax
157
    add  ebx,17*65536
212
    add  ebx,17*65536
158
    sub  ecx,64
213
    sub  ecx,64
159
    mov  edx,ecx
214
    mov  edx,ecx
160
    add  edx,65*65536
215
    add  edx,65*65536
161
    cmp  eax,edx
216
    cmp  eax,edx
162
    je   top
217
    je   top
163
    cmp  ebx,ecx
218
    cmp  ebx,ecx
164
    je   bot
219
    je   bot
165
    jmp  draw
220
    jmp  draw
166
 
221
 
167
  bot:
222
  bot:
168
    mov  [mposy],-65536
223
    mov  [mposy],-65536
169
    jmp  draw
224
    jmp  draw
170
  top:
225
  top:
171
    mov  [mposy],65536
226
    mov  [mposy],65536
172
    jmp  draw
227
    jmp  draw
173
  rig:
228
  rig:
174
    mov  eax,[posyb]
229
    mov  eax,[posyb]
175
    sub  eax,1*65536-64 ;verhindert das der ball ins paddle eindringt
230
    sub  eax,1*65536-64 ;verhindert das der ball ins paddle eindringt
176
    mov  ebx,[posyb]
231
    mov  ebx,[posyb]
177
    add  ebx,64*65536-64
232
    add  ebx,64*65536-64
178
    mov  ecx,[bposy]
233
    mov  ecx,[bposy]
179
    add  ecx,16*65536-16
234
    add  ecx,16*65536-16
180
    mov  edx,[bposy]
235
    mov  edx,[bposy]
181
    sub  edx,16
236
    sub  edx,16
182
    cmp  ecx,eax
237
    cmp  ecx,eax
183
     je  blr
238
     je  blr
184
     jl  draw
239
     jl  draw
185
    cmp  edx,ebx
240
    cmp  edx,ebx
186
     je  blr
241
     je  blr
187
     jl  blr
242
     jl  blr
188
     jg  draw
243
     jg  draw
189
   blr:
244
   blr:
190
    mov  [mposx],-65536
245
    mov  [mposx],-65536
191
    jmp  draw
246
    jmp  draw
192
 
247
 
193
  lef:
248
  lef:
194
    mov  eax,[posya]
249
    mov  eax,[posya]
195
    sub  eax,1*65536+64
250
    sub  eax,1*65536+64
196
    mov  ebx,[posya]
251
    mov  ebx,[posya]
197
    add  ebx,64*65536-64
252
    add  ebx,64*65536-64
198
    mov  ecx,[bposy]
253
    mov  ecx,[bposy]
199
    add  ecx,16*65536-16
254
    add  ecx,16*65536-16
200
    mov  edx,[bposy]
255
    mov  edx,[bposy]
201
    add  edx,16
256
    add  edx,16
202
    cmp  ecx,eax
257
    cmp  ecx,eax
203
     je  bll
258
     je  bll
204
     jl  draw
259
     jl  draw
205
    cmp  edx,ebx
260
    cmp  edx,ebx
206
     je  bll
261
     je  bll
207
     jl  bll
262
     jl  bll
208
     jg  draw
263
     jg  draw
209
   bll:
264
   bll:
210
    mov  [mposx],65536
265
    mov  [mposx],65536
211
    jmp  draw
266
    jmp  draw
212
 
267
 
213
drawpad:
268
drawpad:
214
; draw paddle
269
; draw paddle
215
    mov  edx,[posya]
270
    mov  edx,[posya]
216
    shr  edx,16
271
    shr  edx,16
217
    add  edx,32*65536
272
    add  edx,32*65536
218
    mov  ecx,24*65536+64
273
    mov  ecx,24*65536+64
219
    mov  ebx,paddle
274
    mov  ebx,paddle
220
    mov  eax,7
275
    mov  eax,7
221
    mcall
276
    mcall
222
    mov  edx,[posyb]
277
    mov  edx,[posyb]
223
    shr  edx,16
278
    shr  edx,16
224
    add  edx,264*65536
279
    add  edx,264*65536
225
    mov  eax,7
280
    mov  eax,7
226
    mov  ebx,paddle
281
    mov  ebx,paddle
227
    mov  ecx,24*65536+64
282
    mov  ecx,24*65536+64
228
    mcall
283
    mcall
229
    ret
284
    ret
230
 
285
 
231
draw:
286
draw:
232
; draw ball
287
; draw ball
233
    mov  eax,13
288
    mov  eax,13
234
    mov  ebx,-65536+2
289
    mov  ebx,-65536+2
235
    mov  ecx,-65536+2
290
    mov  ecx,-65536+2
236
    add  ebx,[bposx]
291
    add  ebx,[bposx]
237
    add  ecx,[bposy]
292
    add  ecx,[bposy]
238
    xor  edx,edx
293
    xor  edx,edx
239
    mcall
294
    mcall
240
    add  ebx,65536-2
295
    add  ebx,65536-2
241
    add  ecx,65536-2
296
    add  ecx,65536-2
242
    mov  edx,ebx
297
    mov  edx,ebx
243
    and  edx,0xffff0000
298
    and  edx,0xffff0000
244
    mov  esi,ecx
299
    mov  esi,ecx
245
    shr  esi,16
300
    shr  esi,16
246
    add  edx,esi
301
    add  edx,esi
247
    mov  esi,ebx
302
    mov  esi,ebx
248
    shl  esi,16
303
    shl  esi,16
249
    mov  edi,ecx
304
    mov  edi,ecx
250
    and  edi,0x0000ffff
305
    and  edi,0x0000ffff
251
    add  esi,edi
306
    add  esi,edi
252
    mov  ecx,esi
307
    mov  ecx,esi
253
    mov  ebx,ball
308
    mov  ebx,ball
254
    mov  eax,7
309
    mov  eax,7
255
    mcall
310
    mcall
256
    jmp  still
311
    jmp  still
257
cls:
312
cls:
258
    mov  eax,13
313
    mov  eax,13
259
    mov  edx,0x00000000
314
    mov  edx,0x00000000
260
    mcall
315
    mcall
261
    ret
316
    ret
262
cl0:
317
cl0:
263
    mov  ebx,32*65536+24
318
    mov  ebx,32*65536+24
264
    mov  ecx,[posya]
319
    mov  ecx,[posya]
265
    sub  ecx,4*65536+60
320
    sub  ecx,4*65536+60
266
    call cls
321
    call cls
267
    mov  ecx,[posya]
322
    mov  ecx,[posya]
268
    add  ecx,64*65536-60
323
    add  ecx,64*65536-60
269
    call cls
324
    call cls
270
    ret
325
    ret
271
cl1:
326
cl1:
272
    mov  ebx,264*65536+24
327
    mov  ebx,264*65536+24
273
    mov  ecx,[posyb]
328
    mov  ecx,[posyb]
274
    sub  ecx,4*65536+60
329
    sub  ecx,4*65536+60
275
    call cls
330
    call cls
276
    mov  ecx,[posyb]
331
    mov  ecx,[posyb]
277
    add  ecx,64*65536-60
332
    add  ecx,64*65536-60
278
    call cls
333
    call cls
279
    ret
334
    ret
280
clall:
335
clall:
281
    mov  ebx,16*65536+288
336
    mov  ebx,16*65536+288
282
    mov  ecx,47*65536+161
337
    mov  ecx,47*65536+161
283
    call cls
338
    call cls
284
    ret
339
    ret
285
pf1:
340
pf1:
286
    inc  [scp2]
341
    inc  [scp2]
287
    jmp  res
342
    jmp  res
288
pf2:
343
pf2:
289
     inc  [scp1]
344
     inc  [scp1]
290
 res:
345
 res:
291
    cmp  [scp2],20
346
    cmp  [scp2],20
292
     je  over
347
     je  over
293
    cmp  [scp1],20
348
    cmp  [scp1],20
294
     je  over
349
     je  over
295
    mov  [bposx],152*65536+16 ;default position ball
350
    mov  [bposx],152*65536+16 ;default position ball
296
    mov  [bposy],119*65536+16
351
    mov  [bposy],119*65536+16
297
    call draw_window
352
    call draw_window
298
    call clall
353
    call clall
299
    call drawpad
354
    call drawpad
300
    jmp  draw
355
    jmp  draw
301
over:
356
over:
302
    mov  [control],0
357
    mov  [control],0
303
    call draw_window
358
    call draw_window
304
    mov  eax,4
359
    mov  eax,4
305
    mov  ebx,120*65536+100
360
    mov  ebx,120*65536+100
306
    mov  ecx,0x00ffdd00
361
    mov  ecx,0x00ffdd00
307
    mov  esi,14
362
    mov  esi,14
308
    cmp  [scp1],20
363
    cmp  [scp1],20
309
    jne  win
364
    jne  win
310
    mov  edx,w1
365
    mov  edx,w1
311
    mcall
366
    mcall
312
    jmp  still
367
    jmp  still
313
 win:
368
 win:
314
    mov  edx,w2
369
    mov  edx,w2
315
    mcall
370
    mcall
316
    jmp  still
371
    jmp  still
317
 
372
 
318
;   *********************************************
373
;   *********************************************
319
;   *******  WINDOW DEFINITIONS AND DRAW ********
374
;   *******  WINDOW DEFINITIONS AND DRAW ********
320
;   *********************************************
375
;   *********************************************
321
 
376
 
322
 
377
 
323
draw_window:
378
draw_window:
324
 
379
 
325
    mov  eax,12
380
    mov  eax,12
326
    mov  ebx,1
381
    mov  ebx,1
327
    mcall
382
    mcall
328
 
383
 
329
 
384
 
330
    mov  eax,0
385
    mov  eax,0
331
    mov  ebx,100*65536+320
386
    mov  ebx,100*65536+320
332
    mov  ecx,100*65536+250
387
    mov  ecx,100*65536+250
333
    mov  edx,0x144873a0    ;70d0
388
    mov  edx,0x144873a0    ;70d0
334
    mov  edi,labelt
389
    mov  edi,labelt
335
    mcall
390
    mcall
336
 
391
 
337
    mov  eax,8
392
    mov  eax,8
338
    mov  ebx,20*65536+80
393
    mov  ebx,20*65536+80
339
    mov  ecx,220*65536+20
394
    mov  ecx,220*65536+20
340
    mov  edx,2
395
    mov  edx,2
341
    mov  esi,0x900000
396
    mov  esi,0x900000
342
    mcall
397
    mcall
343
 
398
 
344
    mov  eax,4
399
    mov  eax,4
345
    mov  ebx,38*65536+227
400
    mov  ebx,38*65536+227
346
    mov  ecx,0x00FFFFFF
401
    mov  ecx,0x00FFFFFF
347
    mov  edx,b0lab
402
    mov  edx,b0lab
348
    mov  esi,8
403
    mov  esi,8
349
    mcall
404
    mcall
350
 
405
 
351
    mov  eax,4
406
    mov  eax,4
352
    mov  ebx,25*65536+30
407
    mov  ebx,25*65536+30
353
    mov  ecx,0x00ffdd00
408
    mov  ecx,0x00ffdd00
354
    mov  edx,welcome
409
    mov  edx,welcome
355
    mov  esi,40
410
    mov  esi,40
356
    mcall
411
    mcall
357
 
412
 
358
    mov  eax,4
413
    mov  eax,4
359
    mov  ebx,220*65536+228
414
    mov  ebx,220*65536+228
360
    mov  ecx,0x00ffdd00
415
    mov  ecx,0x00ffdd00
361
    mov  edx,scotext
416
    mov  edx,scotext
362
    mov  esi,11
417
    mov  esi,11
363
    mcall
418
    mcall
364
 
419
 
365
    mov  eax,47
420
    mov  eax,47
366
    mov  ebx,0x00020000
421
    mov  ebx,0x00020000
367
    mov  ecx,[scp1]
422
    mov  ecx,[scp1]
368
    mov  edx,268 shl 16+228
423
    mov  edx,268 shl 16+228
369
    mov  esi,0x0000ddff
424
    mov  esi,0x0000ddff
370
    mcall
425
    mcall
371
 
426
 
372
    mov  eax,47
427
    mov  eax,47
373
    mov  ebx,0x00020000
428
    mov  ebx,0x00020000
374
    mov  ecx,[scp2]
429
    mov  ecx,[scp2]
375
    mov  edx,285 shl 16+228
430
    mov  edx,285 shl 16+228
376
    mov  esi,0x0000ddff
431
    mov  esi,0x0000ddff
377
    mcall
432
    mcall
378
 
433
 
379
    mov  eax,12
434
    mov  eax,12
380
    mov  ebx,2
435
    mov  ebx,2
381
    mcall
436
    mcall
382
 
437
 
383
    ret
438
    ret
384
 
439
 
385
 
440
 
386
; DATA AREA
441
; DATA AREA
387
posya   dd 96*65536+64  ;default position paddle
442
posya   dd 96*65536+64  ;default position paddle
388
posyb   dd 96*65536+64
443
posyb   dd 96*65536+64
389
bposx   dd 152*65536+16 ;default position ball
444
bposx   dd 152*65536+16 ;default position ball
390
bposy   dd 119*65536+16
445
bposy   dd 119*65536+16
391
mposx   dd 65536        ;richtung ball
446
mposx   dd 65536        ;richtung ball
392
mposy   dd 65536
447
mposy   dd 65536
393
control dd 0x0
448
control dd 0x0
394
delay   dd 0x1          ;delay betw. frames
449
delay   dd 0x1          ;delay betw. frames
395
scp1    dd 0x0
450
scp1    dd 0x0
396
scp2    dd 0x0
451
scp2    dd 0x0
-
 
452
 
-
 
453
is_up1	dd 0x0 ; \
-
 
454
is_dn1	dd 0x0 ; | êàêèå êëàâèøè íàæàòû
-
 
455
is_up2	dd 0x0 ; |
397
 
-
 
398
 
-
 
399
scotext:
-
 
400
     db  'SCORE:    :'
-
 
401
welcome:
-
 
402
     db  'PLAYER1: Q , A            PLAYER2:  , '
-
 
403
b0lab:
-
 
404
     db  'NEW GAME'
-
 
405
labelt:
-
 
406
     db  'PONG FOR MENUET v1.0',0
-
 
407
w1:
-
 
408
     db  'Player 1 wins!'
456
is_dn2	dd 0x0 ; /
409
w2:
-
 
410
     db  'Player 2 wins!'
-
 
411
clsign:
457
 
412
     db   'x'
458
include "lang.inc"
413
 
459
 
414
ball:
460
ball:
415
file "ball.raw"
461
file "ball.raw"
416
 
462
 
417
paddle:
463
paddle:
418
file "paddle.raw"
464
file "paddle.raw"
419
 
465
 
420
I_END:
466
I_END: