1 ; **************************************************************************** 2 ; mandala.s (TRDOS 386, TRDOS v2.0 - sample binary file, 'mandala.prg') 3 ; ---------------------------------------------------------------------------- 4 ; MANDALA.PRG ! TEST program ! TRDOS 386 VGA Functionality test ! 5 ; 6 ; 31/10/2017 7 ; 8 ; [ Last Modification: 07/11/2017 ] 9 ; 10 ; Derived from source code of 'MANDALA.EXE' by G bor Papp [rod/mandula] 11 ; MANDALA.ASM (MSDOS) intro file, 1997 12 ; 13 ; Assembler: NASM 2.11 14 15 ; (Original source code has been modifed for TRDOS 386 system calls and 16 ; other protected mode (TRDOS 386) interrupts.) 17 ; **************************************************************************** 18 19 ; 01/03/2017 20 ; 16/10/2016 21 ; 29/04/2016 22 ; TRDOS 386 system calls (temporary list!) 23 _ver equ 0 24 _exit equ 1 25 _fork equ 2 26 _read equ 3 27 _write equ 4 28 _open equ 5 29 _close equ 6 30 _wait equ 7 31 _creat equ 8 32 _link equ 9 33 _unlink equ 10 34 _exec equ 11 35 _chdir equ 12 36 _time equ 13 37 _mkdir equ 14 38 _chmod equ 15 39 _chown equ 16 40 _break equ 17 41 _stat equ 18 42 _seek equ 19 43 _tell equ 20 44 _mount equ 21 45 _umount equ 22 46 _setuid equ 23 47 _getuid equ 24 48 _stime equ 25 49 _quit equ 26 50 _intr equ 27 51 _fstat equ 28 52 _emt equ 29 53 _mdate equ 30 54 _video equ 31 55 _audio equ 32 56 _timer equ 33 57 _sleep equ 34 58 _msg equ 35 59 _geterr equ 36 60 _fpsave equ 37 61 _pri equ 38 62 _rele equ 39 63 _fff equ 40 64 _fnf equ 41 65 _alloc equ 42 66 _dalloc equ 43 67 _calbac equ 44 68 69 [BITS 32] ; 80386 Protected Mode (32 bit) intructions 70 71 %macro sys 1-4 72 ; 29/04/2016 - TRDOS 386 (TRDOS v2.0) 73 ; 03/09/2015 74 ; 13/04/2015 75 ; Retro UNIX 386 v1 system call. 76 %if %0 >= 2 77 mov ebx, %2 78 %if %0 >= 3 79 mov ecx, %3 80 %if %0 = 4 81 mov edx, %4 82 %endif 83 %endif 84 %endif 85 mov eax, %1 86 ;int 30h 87 int 40h ; TRDOS 386 (TRDOS v2.0) 88 %endmacro 89 90 ; TRDOS 386 (and Retro UNIX 386 v1) system call format: 91 ; sys systemcall (eax) , , 92 93 94 ;======================================================================== 95 ; MANDALA.ASM - 04/06/1997 96 ;======================================================================== 97 98 ; mandala source (c) 1996/97 by G bor Papp [rod/mandula] 99 ; contact me at s5001@sun10.vsz.bme.hu or rod@inf.bme.hu 100 ; visit us at www.inf.bme.hu/~mandula 101 ; 102 ; this header must stay at the top of this file. 103 ; 104 ; this material is not freeware. you are allowed to copy it without 105 ; restrictions for non-commercial use. no payment of any kind may be charged 106 ; for this product or any combination of products or services including this 107 ; product without the author's authorization and official written license. 108 ; commercial use is strictly prohibited. 109 ; 110 ; you may only look at the source, you may not use it. 111 ; you must not use this code or derivatives in your productions. 112 ; you may use the algorithms in non commercial productions if you credit me. 113 114 115 ;======================================================================== 116 ; MACROS 117 ;======================================================================== 118 119 ; 120 ;%macro load 2 121 ; push %2 122 ; pop %1 123 ;%endmacro 124 ; 125 126 ;======================================================================== 127 ; EQUATIONS 128 ;======================================================================== 129 130 np equ 19 131 addxball equ 160 132 addyball equ 100 133 addzball equ 600 134 135 t_fadeleft equ 128 136 t_left equ 450 137 t_right equ 850 138 t_faderight equ 978 139 140 t_mandalain equ 1106 141 t_mandala equ 1600 142 t_mandalaout equ 1728 143 144 t_stripein equ 1856 145 t_stripe equ 2300 146 t_stripeout equ 2428 147 148 t_firein equ 2556 149 t_fireballs equ 3600 150 t_fireout equ 3728 151 152 decay equ 30 153 154 ;======================================================================== 155 ; CODE 156 ;======================================================================== 157 158 [ORG 0] 159 160 main: 161 ; clear bss 162 ;mov edi, bss_start ; 163 00000000 66BF[802C] mov di, bss_start 164 00000004 B9E0340200 mov ecx, (bss_end - bss_start)/4 165 ;xor eax, eax 166 00000009 F3AB rep stosd 167 168 ; DIRECT VGA MEMORY ACCESS 169 ; EAX = 31, sysvideo 170 ; EBX = 0500h, direct access/map to VGA memory (0A0000h) 171 sys _video, 0500h 171 <1> 171 <1> 171 <1> 171 <1> 171 <1> %if %0 >= 2 171 0000000B BB00050000 <1> mov ebx, %2 171 <1> %if %0 >= 3 171 <1> mov ecx, %3 171 <1> %if %0 = 4 171 <1> mov edx, %4 171 <1> %endif 171 <1> %endif 171 <1> %endif 171 00000010 B81F000000 <1> mov eax, %1 171 <1> 171 00000015 CD40 <1> int 40h 172 173 ; EAX = 0A0000h 174 00000017 21C0 and eax, eax 175 00000019 0F841C040000 jz terminate ; error (eax = 0) 176 177 0000001F DBE3 fninit 178 179 00000021 B902000000 mov ecx, 2 180 00000026 E2FE loop $ 181 182 00000028 D93D[6E6F0000] fnstcw word [fpu_cw] 183 0000002E 803D[6F6F0000]03 cmp byte [fpu_cw+1], 3 184 00000035 0F85EA030000 jne @@out 185 186 ;in al, 21h 187 ;or al, 6 188 ;out 21h, al 189 190 0000003B E858240000 call genmaze 191 192 ;load es, 0 193 194 ;cli 195 ;mov eax, [es:4*8] 196 ;mov [cs:oldint8], eax 197 ;lea bx, [cs:newint8] 198 ;mov [es:4*8], bx 199 ;mov [es:4*8+2], cs 200 201 ;mov al, 36h 202 ;out 43h, al 203 ;mov ax, 428Bh 204 ;out 40h, al 205 ;mov al, ah 206 ;out 40h, al 207 208 ; set timer speed to 1193180/17035 (TRDOS 386) 209 ; (70 Hz) 210 00000040 B036 mov al, 36h 211 ;out 43h, al 212 00000042 B401 mov ah, 1 ; out (byte) 213 00000044 66BA4300 mov dx, 43h 214 00000048 CD34 int 34h ; TRDOS 386 - IOCTL interrupt 215 216 0000004A B08B mov al, 8Bh 217 ;out 40h, al 218 0000004C 66BA4000 mov dx, 40h 219 ;mov ah, 1 ; out (byte) 220 00000050 CD34 int 34h ; TRDOS 386 - IOCTL interrupt 221 222 00000052 B042 mov al, 42h 223 ;out 40h, al 224 ;mov ah, 1 ; out (byte) 225 ;mov dx, 40h 226 00000054 CD34 int 34h ; TRDOS 386 - IOCTL interrupt 227 228 ;sti 229 230 ; Start Timer Event 231 ; EAX = 33, systimer 232 ; EBX = 8400h ; current timer setup, callback method 233 ; ECX = 1 ; 1 tick 234 ; EDX = newint8, Timer (event) callback service addr 235 sys _timer, 8400h, 1, newint8 235 <1> 235 <1> 235 <1> 235 <1> 235 <1> %if %0 >= 2 235 00000056 BB00840000 <1> mov ebx, %2 235 <1> %if %0 >= 3 235 0000005B B901000000 <1> mov ecx, %3 235 <1> %if %0 = 4 235 00000060 BA[520D0000] <1> mov edx, %4 235 <1> %endif 235 <1> %endif 235 <1> %endif 235 00000065 B821000000 <1> mov eax, %1 235 <1> 235 0000006A CD40 <1> int 40h 236 237 0000006C A2[766F0000] mov [timer_event_number], al 238 239 00000071 E80C0D0000 call gensintable 240 00000076 E8130C0000 call initwave 241 0000007B E88F0A0000 call mandala 242 243 00000080 BF[F4330000] mov edi, fire - 4 244 ;mov cx, (32*16/2+4) 245 00000085 B982000000 mov ecx, (32*16/2+4)/2 246 0000008A 31C0 xor eax, eax 247 ;rep stosw 248 0000008C F3AB rep stosd 249 250 0000008E 66C705[9C330000]0E- mov word [radius], 14 250 00000096 00 251 00000097 B107 mov cl, 7 252 00000099 BF[FC350000] mov edi, balldata1 253 0000009E 31DB xor ebx, ebx 254 @@transfcalc: 255 000000A0 89BB[FC6D0000] mov [balloffsets+ebx], edi 256 000000A6 51 push ecx 257 000000A7 53 push ebx 258 000000A8 E8BC060000 call balltransform 259 000000AD 5B pop ebx 260 000000AE 59 pop ecx 261 000000AF 83C304 add ebx, 4 262 000000B2 66FF0D[9C330000] dec word [radius] 263 000000B9 E2E5 loop @@transfcalc 264 265 000000BB BE[382B0000] mov esi, cubes 266 000000C0 BF[3D6E0000] mov edi, object 267 000000C5 66B97200 mov cx, np*3*2 268 000000C9 F3A4 rep movsb 269 270 ; Set video mode to 320x200x256 graphics 271 000000CB 66B81300 mov ax, 13h 272 ;int 10h 273 000000CF CD31 int 31h ; TRDOS 386 video interrupt 274 275 000000D1 E8EF250000 call genlogo 276 000000D6 E8B4240000 call genclouds 277 278 ;------------------------------------------------------------------------ 279 280 000000DB 31C0 xor eax, eax ; 0 281 282 ;mov [alpha], eax 283 ;mov [gamma], ax 284 285 ;mov [skyxstart], eax 286 ;mov [angle], ax 287 ;mov [xpos], ax 288 289 000000DD A3[AA330000] mov [timer], eax 290 000000E2 66A3[00320000] mov [fadeinval], ax 291 ;;mov [mandinit], ax 292 ;mov [mandinit], al 293 ;;mov [stripeinit], ax 294 ;mov [stripeinit], al 295 ;mov [deg], ax 296 ;;mov [fireinit], ax 297 ;mov [fireinit], al 298 299 @@timingeffects: 300 000000E8 A1[AA330000] mov eax, [timer] 301 302 000000ED 3D80000000 cmp eax, t_fadeleft 303 000000F2 0F82C2000000 jb @@fadeleft 304 305 000000F8 3DC2010000 cmp eax, t_left 306 000000FD 0F82C3000000 jb @@toleft 307 308 00000103 3D52030000 cmp eax, t_right 309 00000108 0F82F2000000 jb @@toright 310 311 0000010E 3DD2030000 cmp eax, t_faderight 312 00000113 0F82DB000000 jb @@faderight 313 314 ;cmp word [mandinit], 0 315 00000119 803D[6A6F0000]00 cmp byte [mandinit], 0 316 00000120 0F8492010000 je @@mandinit 317 318 00000126 3D52040000 cmp eax, t_mandalain 319 0000012B 0F82A6010000 jb @@mandalain 320 321 00000131 3D40060000 cmp eax, t_mandala 322 00000136 0F82B5010000 jb @@mandala 323 324 0000013C 3DC0060000 cmp eax, t_mandalaout 325 00000141 0F829E010000 jb @@mandalaout 326 327 ;cmp word [stripeinit], 0 328 00000147 803D[696F0000]00 cmp byte [stripeinit], 0 329 0000014E 0F84F8000000 je @@stripeinit 330 331 00000154 3D40070000 cmp eax, t_stripein 332 00000159 0F821A010000 jb @@stripein 333 334 0000015F 3DFC080000 cmp eax, t_stripe 335 00000164 0F822B010000 jb @@stripe 336 337 0000016A 3D7C090000 cmp eax,t_stripeout 338 0000016F 0F8212010000 jb @@stripeout 339 340 ;cmp word [fireinit], 0 341 00000175 803D[686F0000]00 cmp byte [fireinit], 0 342 0000017C 0F84DE010000 je @@fireinit 343 344 00000182 3DFC090000 cmp eax, t_firein 345 00000187 0F82F2010000 jb @@firein 346 347 0000018D 66C705[746F0000]BF- mov word [fireroot], 0BFBFh 347 00000195 BF 348 349 00000196 3D100E0000 cmp eax, t_fireballs 350 0000019B 0F82F8010000 jb @@fireballs 351 352 000001A1 66C705[746F0000]00- mov word [fireroot], 0 352 000001A9 00 353 354 000001AA 3D900E0000 cmp eax, t_fireout 355 000001AF 0F82D8010000 jb @@fireout 356 357 000001B5 E939020000 jmp @@todos 358 359 @@fadeleft: 360 000001BA 668B2D[00320000] mov bp, [fadeinval] 361 000001C1 E8F3270000 call fade 362 363 @@toleft: 364 ;load es,@virtscr 365 000001C6 E86C270000 call sky 366 000001CB E8EA0B0000 call drawmaze 367 000001D0 E80C280000 call drawvirt 368 369 000001D5 FF05[A6330000] inc dword [skyxstart] 370 000001DB FE05[94330000] inc byte [angle] 371 000001E1 8005[96330000]02 add byte [xpos], 2 372 000001E8 8005[97330000]02 add byte [ypos], 2 373 374 000001EF E9EF010000 jmp @@endeffect 375 376 ;------------------------------------------------------------------------ 377 378 @@faderight: 379 000001F4 668B2D[02320000] mov bp, [fadeoutval] 380 000001FB E8B9270000 call fade 381 @@toright: 382 00000200 813D[AA330000]5203- cmp dword [timer], t_right 382 00000208 0000 383 0000020A 7709 ja short @@nomax 384 0000020C 66C705[02320000]80- mov word [fadeoutval], 128 384 00000214 00 385 @@nomax: 386 ;load es,@virtscr 387 00000215 E81D270000 call sky 388 0000021A E89B0B0000 call drawmaze 389 0000021F E8BD270000 call drawvirt 390 391 00000224 FF0D[A6330000] dec dword [skyxstart] 392 0000022A FE0D[94330000] dec byte [angle] 393 00000230 802D[96330000]02 sub byte [xpos], 2 394 00000237 8005[97330000]04 add byte [ypos], 4 395 396 0000023E 66C705[00320000]00- mov word [fadeinval], 0 396 00000246 00 397 398 00000247 E997010000 jmp @@endeffect 399 400 ;------------------------------------------------------------------------ 401 402 @@stripeinit: 403 0000024C BE[322C0000] mov esi, stripepal 404 00000251 E80A270000 call fillpalette 405 406 00000256 E832030000 call stripes 407 408 0000025B BF00000A00 mov edi, 0A0000h 409 00000260 B9803E0000 mov ecx, 16000 410 00000265 31C0 xor eax, eax 411 00000267 F3AB rep stosd 412 413 ;mov dword ptr cs:shadepatch1,0100878ah ; nop, nop 414 ; mov al, [bx+100h] <-- nop, nop 415 ;mov dword ptr cs:shadepatch2,0100a78ah ; nop, nop 416 ; mov ah, [bx+100h] <-- nop, nop 417 418 ;mov word [stripeinit], 1 419 00000269 C605[696F0000]01 mov byte [stripeinit], 1 420 00000270 66C705[00320000]00- mov word [fadeinval], 0 420 00000278 00 421 @@stripein: 422 00000279 668B2D[00320000] mov bp, [fadeinval] 423 00000280 E834270000 call fade 424 00000285 EB0E jmp short @@stripe 425 @@stripeout: 426 00000287 668B2D[02320000] mov bp, [fadeoutval] 427 0000028E E826270000 call fade 428 00000293 EB09 jmp short @@stripewave 429 @@stripe: 430 00000295 66C705[02320000]80- mov word [fadeoutval], 128 430 0000029D 00 431 @@stripewave: 432 0000029E 66C705[6C6F0000]14- mov word [morph], 20 432 000002A6 00 433 000002A7 E89B020000 call distabgen 434 435 000002AC C705[706F0000]- mov dword [_fs], distable 435 000002B2 [00000500] 436 000002B6 EB58 jmp short @@mandalawave 437 438 ;------------------------------------------------------------------------ 439 440 @@mandinit: 441 000002B8 BE[DA2B0000] mov esi, mandalapal 442 000002BD E89E260000 call fillpalette 443 444 000002C2 B9803E0000 mov ecx, 16000 445 000002C7 31C0 xor eax, eax 446 000002C9 BF00000A00 mov edi, 0A0000h 447 000002CE F3AB rep stosd 448 449 ;mov word [mandinit], 1 450 000002D0 C605[6A6F0000]01 mov byte [mandinit], 1 451 @@mandalain: 452 000002D7 668B2D[00320000] mov bp, [fadeinval] 453 000002DE E8D6260000 call fade 454 000002E3 EB0C jmp short @@mandala 455 @@mandalaout: 456 000002E5 668B2D[02320000] mov bp, [fadeoutval] 457 000002EC E8C8260000 call fade 458 @@mandala: 459 000002F1 C705[706F0000]- mov dword [_fs], circtable 459 000002F7 [00000600] 460 000002FB 813D[AA330000]4006- cmp dword [timer], t_mandala 460 00000303 0000 461 00000305 7709 ja short @@mandalawave 462 00000307 66C705[02320000]80- mov word [fadeoutval], 128 462 0000030F 00 463 @@mandalawave: 464 00000310 B900010000 mov ecx, 256 465 00000315 BF[00000800] mov edi, multable 466 0000031A 0FB735[AE330000] movzx esi, word [deg] 467 00000321 6601F6 add si, si 468 @@0: 469 00000324 668B86[802C0000] mov ax, [sintable+esi] 470 471 0000032B 50 push eax 472 0000032C B310 mov bl, 16 473 0000032E 66C1F804 sar ax, 4 474 00000332 F6D8 neg al 475 00000334 888700010000 mov [edi+256], al 476 0000033A 58 pop eax 477 478 0000033B 66C1F805 sar ax, 5 479 0000033F 66058000 add ax, 128 480 00000343 AA stosb 481 482 00000344 6683C608 add si, 8 483 00000348 6681E6FF01 and si, 511 484 0000034D E2D5 loop @@0 485 486 0000034F 802D[AE330000]05 sub byte [deg], 5 487 488 00000356 E82C010000 call wave 489 ;call waitrtc 490 491 0000035B E983000000 jmp @@endeffect 492 493 ;------------------------------------------------------------------------ 494 495 @@fireinit: 496 00000360 E83A070000 call wood 497 498 00000365 BE[F82B0000] mov esi, firepal 499 0000036A E8F1250000 call fillpalette 500 501 0000036F 66C705[00320000]00- mov word [fadeinval], 0 501 00000377 00 502 ;mov word [fireinit], 1 503 00000378 C605[686F0000]01 mov byte [fireinit], 1 504 @@firein: 505 0000037F 668B2D[00320000] mov bp, [fadeinval] 506 00000386 E82E260000 call fade 507 0000038B EB0C jmp short @@fireballs 508 509 @@fireout: 510 0000038D 668B2D[02320000] mov bp, [fadeoutval] 511 00000394 E820260000 call fade 512 @@fireballs: 513 00000399 813D[AA330000]100E- cmp dword [timer], t_fireballs 513 000003A1 0000 514 000003A3 7709 ja short @@goballs 515 000003A5 66C705[02320000]80- mov word [fadeoutval], 128 515 000003AD 00 516 @@goballs: 517 000003AE E887040000 call makefire 518 519 000003B3 BF[00000100] mov edi, virtscr 520 000003B8 BE[00000200] mov esi, mazeseg 521 000003BD B9803E0000 mov ecx, 16000 522 000003C2 F3A5 rep movsd 523 524 000003C4 E81E020000 call drawobject 525 000003C9 E813260000 call drawvirt 526 527 000003CE 8005[1C6E0000]01 add byte [alpha], 1 528 000003D5 8005[1E6E0000]FE add byte [beta], -2 529 000003DC 8005[206E0000]01 add byte [gamma], 1 530 531 ;jmp short @@endeffect 532 533 @@endeffect: 534 ;in al, 60h 535 000003E3 B400 mov ah, 0 ; in (byte) 536 000003E5 66BA6000 mov dx, 60h 537 000003E9 CD34 int 34h ; TRDOS 386 - IOCTL interrupt 538 539 000003EB FEC8 dec al 540 000003ED 0F85F5FCFFFF jnz @@timingeffects 541 542 ;------------------------------------------------------------------------ 543 544 @@todos: 545 ;in al, 21h 546 ;and al, 255-6 547 ;out 21h, al 548 549 000003F3 B401 mov ah, 1 550 ;int 16h 551 000003F5 CD32 int 32h ; TRDOS 386 keyboard interrupt 552 000003F7 7404 jz short @@pufferisempty 553 554 000003F9 31C0 xor eax, eax 555 ;int 16h 556 000003FB CD32 int 32h ; TRDOS 386 keyboard interrupt 557 558 @@pufferisempty: 559 ;xor ex, ax 560 ;mov es, ax ; 0 561 ;cli 562 ;mov eax, cs:oldint8 563 ;mov es:[4*8], eax 564 565 ;mov al,36h 566 ;out 43h,al 567 ;xor ax,ax 568 ;out 40h,al 569 ;out 40h,al 570 571 ; reset timer speed to 1193180/65536 (TRDOS 386) 572 ; (18.2 Hz) 573 000003FD B036 mov al, 36h 574 ;out 43h, al 575 000003FF B401 mov ah, 1 ; out (byte) 576 00000401 66BA4300 mov dx, 43h 577 00000405 CD34 int 34h ; TRDOS 386 - IOCTL interrupt 578 579 00000407 B000 mov al, 0 580 ;out 40h, al 581 00000409 66BA4000 mov dx, 40h 582 ;mov ah, 1 ; out (byte) 583 0000040D CD34 int 34h ; TRDOS 386 - IOCTL interrupt 584 585 ;mov al, 0 586 ;out 40h, al 587 ;mov ah, 1 ; out (byte) 588 ;mov dx, 40h 589 0000040F CD34 int 34h ; TRDOS 386 - IOCTL interrupt 590 591 ;; Stop timer event 592 00000411 0FB61D[766F0000] movzx ebx, byte [timer_event_number] 593 ; bh = 0 -> stop timer event 594 sys _timer 594 <1> 594 <1> 594 <1> 594 <1> 594 <1> %if %0 >= 2 594 <1> mov ebx, %2 594 <1> %if %0 >= 3 594 <1> mov ecx, %3 594 <1> %if %0 = 4 594 <1> mov edx, %4 594 <1> %endif 594 <1> %endif 594 <1> %endif 594 00000418 B821000000 <1> mov eax, %1 594 <1> 594 0000041D CD40 <1> int 40h 595 596 ;sti 597 598 ; Reset video mode to 80x25 text mode (03h) 599 0000041F 66B80300 mov ax, 3 600 ;int 10h 601 00000423 CD31 int 31h ; TRDOS 386 video interrupt 602 @@out: 603 ;push cs 604 ;pop ds 605 ;lea dx, cs:endmessage 606 ;mov ah, 9 607 ;int 21h 608 609 ; Display message 610 ; ebx = message address 611 ; ecx/cl = maximum length of the message (<=255) 612 ; edx/dl = message/text color (0Fh = white) 613 sys _msg, endmessage, 255, 0Fh 613 <1> 613 <1> 613 <1> 613 <1> 613 <1> %if %0 >= 2 613 00000425 BB[42040000] <1> mov ebx, %2 613 <1> %if %0 >= 3 613 0000042A B9FF000000 <1> mov ecx, %3 613 <1> %if %0 = 4 613 0000042F BA0F000000 <1> mov edx, %4 613 <1> %endif 613 <1> %endif 613 <1> %endif 613 00000434 B823000000 <1> mov eax, %1 613 <1> 613 00000439 CD40 <1> int 40h 614 615 ;mov ax,4c00h 616 ;int 21h 617 618 ; TRDOS 386 - sysexit (terminate process) 619 terminate: 620 sys _exit 620 <1> 620 <1> 620 <1> 620 <1> 620 <1> %if %0 >= 2 620 <1> mov ebx, %2 620 <1> %if %0 >= 3 620 <1> mov ecx, %3 620 <1> %if %0 = 4 620 <1> mov edx, %4 620 <1> %endif 620 <1> %endif 620 <1> %endif 620 0000043B B801000000 <1> mov eax, %1 620 <1> 620 00000440 CD40 <1> int 40h 621 ;here: 622 ; jmp short here 623 624 endmessage: 625 00000442 28632920313939362F- db "(c) 1996/97 by rod/mandula",13,10, ;,$ 625 0000044B 393720627920726F64- 625 00000454 2F6D616E64756C610D- 625 0000045D 0A 626 0000045E 4D414E44414C412E50- db "MANDALA.PRG by Erdogan Tan, 07/11/2017", 13, 10, 0 626 00000467 524720627920457264- 626 00000470 6F67616E2054616E2C- 626 00000479 2030372F31312F3230- 626 00000482 31370D0A00 627 628 ;------------------------------------------------------------------------ 629 ; 630 ;------------------------------------------------------------------------ 631 wave: 632 00000487 BE[00000800] mov esi, multable 633 634 0000048C BF20000000 mov edi, 32 635 636 00000491 B600 mov dh, 0 637 @@yloop: 638 00000493 B200 mov dl, 0 639 @@xloop: 640 00000495 8B1D[706F0000] mov ebx, [_fs] 641 0000049B 668B0C3B mov cx, [ebx+edi] 642 0000049F 0FB6D9 movzx ebx, cl 643 shadepatch1: 644 ;mov al, 0 645 ;nop 646 ;nop 647 ;mov al, [bx+100h] 648 649 000004A2 803D[696F0000]00 cmp byte [stripeinit], 0 650 000004A9 7704 ja short shadepatch1s 651 ; mandalainit 652 000004AB B000 mov al, 0 653 000004AD EB07 jmp short shadepatch1m 654 shadepatch1s: 655 ; stripeinit 656 000004AF 8A841E00010000 mov al, [esi+ebx+100h] 657 shadepatch1m: 658 000004B6 8A3C1E mov bh, [esi+ebx] 659 000004B9 88D3 mov bl, dl 660 000004BB 89F5 mov ebp, esi 661 000004BD 6601DD add bp, bx 662 ;mov cl, [esi+ebx] 663 000004C0 8A4D00 mov cl, [ebp] 664 000004C3 88F3 mov bl, dh 665 ;mov bh, [esi+ebx] 666 000004C5 89F5 mov ebp, esi 667 000004C7 6601DD add bp, bx 668 000004CA 8A7D00 mov bh, [ebp] 669 000004CD 88CB mov bl, cl 670 000004CF BD[00000400] mov ebp, mandalaseg 671 ;add al, [mandalaseg+ebx+7168] 672 000004D4 6601DD add bp, bx 673 000004D7 6681C5001C add bp, 7168 674 000004DC 024500 add al, [ebp] 675 676 000004DF FEC2 inc dl 677 678 ;mov bl, ch 679 ;mov bh, 0 680 000004E1 0FB6DD movzx ebx, ch 681 shadepatch2: 682 ;mov ah, 0 683 ;nop 684 ;nop 685 ;mov ah, [bx+100h] 686 687 000004E4 803D[696F0000]00 cmp byte [stripeinit], 0 688 000004EB 7704 ja short shadepatch2s 689 ; mandalainit 690 000004ED B400 mov ah, 0 691 000004EF EB07 jmp short shadepatch2m 692 shadepatch2s: 693 ; stripeinit 694 000004F1 8AA41E00010000 mov ah, [esi+ebx+100h] 695 shadepatch2m: 696 000004F8 8A3C1E mov bh, [esi+ebx] 697 000004FB 88D3 mov bl, dl 698 000004FD 89F5 mov ebp, esi 699 000004FF 6601DD add bp, bx 700 ;mov ch, [esi+ebx] 701 00000502 8A6D00 mov ch, [ebp] 702 00000505 88F3 mov bl, dh 703 00000507 89F5 mov ebp, esi 704 00000509 6601DD add bp, bx 705 ;mov bh, [esi+ebx] 706 0000050C 8A7D00 mov bh, [ebp] 707 0000050F 88EB mov bl, ch 708 00000511 BD[00000400] mov ebp, mandalaseg 709 00000516 6601DD add bp, bx 710 ;add ah, [mandalaseg+ebx+7168] 711 00000519 6681C5001C add bp, 7168 712 0000051E 026500 add ah, [ebp] 713 714 00000521 66898700000A00 mov [0A0000h+edi], ax 715 716 00000528 FEC2 inc dl 717 0000052A 6683C702 add di, 2 718 719 0000052E 80FA00 cmp dl, 0 720 00000531 0F855EFFFFFF jne @@xloop 721 722 723 00000537 6683C740 add di, 320-256 724 0000053B FEC6 inc dh 725 0000053D 80FEC8 cmp dh, 200 726 00000540 0F854DFFFFFF jne @@yloop 727 728 00000546 C3 retn 729 730 ;------------------------------------------------------------------------ 731 ; 732 ;------------------------------------------------------------------------ 733 distabgen: 734 00000547 66A1[AE330000] mov ax, [deg] 735 ;mov cs:byte ptr @@patch+2,al 736 0000054D A2[6B6F0000] mov byte [patch], al 737 738 00000552 BFFFF90000 mov edi, 63999 739 740 00000557 668B15[6C6F0000] mov dx, [morph] 741 @@loop: 742 0000055E 8A8F[00000600] mov cl, [circtable+edi] 743 00000564 8A9F[00000700] mov bl, [degtable+edi] 744 @@patch: 745 ;add bl, 0ffh 746 0000056A 021D[6B6F0000] add bl, [patch] 747 748 ;mov bh, 0 749 00000570 81E3FF000000 and ebx, 0FFh 750 ;add bx, bx 751 00000576 01DB add ebx, ebx 752 00000578 668B83[802C0000] mov ax, [sintable+ebx] 753 0000057F F6FA idiv dl 754 755 00000581 00C8 add al, cl 756 00000583 8887[00000500] mov [distable+edi], al 757 00000589 4F dec edi 758 0000058A 75D2 jnz short @@loop 759 760 0000058C C3 retn 761 762 ;------------------------------------------------------------------------ 763 ; 764 ;------------------------------------------------------------------------ 765 stripes: 766 0000058D BF[00000400] mov edi, mandalaseg 767 00000592 89FB mov ebx, edi 768 00000594 B900400000 mov ecx, 16384 769 00000599 31C0 xor eax, eax 770 0000059B F3AB rep stosd 771 772 0000059D 31F6 xor esi, esi 773 774 ;xor ecx, ecx 775 0000059F 89DF mov edi, ebx ; mandalaseg 776 000005A1 31DB xor ebx, ebx 777 000005A3 B900000100 mov ecx, 65536 778 @@1: 779 000005A8 66B80F00 mov ax, 15 780 000005AC E842240000 call random 781 000005B1 6640 inc ax 782 783 000005B3 89FD mov ebp, edi 784 000005B5 668B9E[222A0000] mov bx, [ctable+esi-2] 785 ;mov ah, [edi+ebx] 786 000005BC 6601DD add bp, bx 787 000005BF 8A6500 mov ah, [ebp] 788 000005C2 668B9E[242A0000] mov bx, [ctable+esi] 789 000005C9 89FD mov ebp, edi 790 000005CB 6601DD add bp, bx 791 ;mov ah, [edi+ebx] 792 000005CE 026500 add ah, [ebp] 793 000005D1 D0EC shr ah, 1 794 000005D3 00E0 add al, ah 795 000005D5 0410 add al, 16 796 ;stosb 797 000005D7 8807 mov [edi], al 798 000005D9 6647 inc di 799 800 000005DB 6683C602 add si, 2 801 000005DF 6683E60F and si, 15 802 803 ;dec cx 804 000005E3 49 dec ecx 805 000005E4 75C2 jnz short @@1 806 807 000005E6 C3 retn 808 809 ;------------------------------------------------------------------------ 810 ; 811 ;------------------------------------------------------------------------ 812 drawobject: 813 000005E7 E8AB020000 call calcrot 814 815 000005EC BE[3D6E0000] mov esi, object 816 000005F1 BF[A36E0000] mov edi, currentobject 817 000005F6 B913000000 mov ecx, np 818 000005FB E8E7030000 call rotatexyz 819 820 00000600 B913000000 mov ecx, np 821 00000605 BE[A36E0000] mov esi, currentobject 822 0000060A BF[186F0000] mov edi, zlist 823 @@fillzlist: 824 0000060F 668B4604 mov ax, [esi+4] 825 00000613 66F7D8 neg ax 826 00000616 66AB stosw 827 00000618 6689F0 mov ax, si 828 0000061B 66AB stosw 829 0000061D 6683C606 add si, 6 830 00000621 E2EC loop @@fillzlist 831 832 00000623 B9[186F0000] mov ecx, zlist 833 00000628 BA[606F0000] mov edx, zlist+(np-1)*4 834 0000062D E85F000000 call qsort 835 836 00000632 B913000000 mov ecx, np 837 00000637 BE[186F0000] mov esi, zlist 838 839 ;load es,@virtscr 840 @@perspective: 841 ;movzx edi, word [esi+2] 842 0000063C 668B7E02 mov di, [esi+2] 843 844 00000640 668B5F04 mov bx, [edi+4] 845 00000644 6681C35802 add bx, addzball 846 00000649 668B07 mov ax, [edi] 847 0000064C 6699 cwd 848 0000064E 88E2 mov dl, ah 849 00000650 88C4 mov ah, al 850 00000652 B000 mov al, 0 851 00000654 66F7FB idiv bx 852 00000657 6605A000 add ax, addxball 853 0000065B 66A3[646F0000] mov [ballx], ax 854 855 00000661 668B4702 mov ax, [edi+2] 856 00000665 6699 cwd 857 00000667 88E2 mov dl, ah 858 00000669 88C4 mov ah, al 859 0000066B B000 mov al, 0 860 0000066D 66F7FB idiv bx 861 00000670 6683C064 add ax, addyball 862 00000674 66A3[666F0000] mov [bally], ax 863 864 0000067A 60 pushad 865 866 0000067B 6681EB9001 sub bx, 400 867 00000680 66C1FB06 sar bx, 6 868 00000684 E867000000 call drawfireball 869 870 00000689 61 popad 871 872 ;add esi, 4 873 0000068A 6683C604 add si, 4 874 875 0000068E E2AC loop @@perspective 876 877 00000690 C3 retn 878 879 ;------------------------------------------------------------------------ 880 ; 881 ;------------------------------------------------------------------------ 882 qsort: 883 00000691 89CB mov ebx, ecx 884 00000693 01D3 add ebx, edx 885 00000695 66D1DB rcr bx, 1 886 00000698 81E3FCFF0000 and ebx, 0FFFCh 887 888 0000069E 89CE mov esi, ecx 889 000006A0 89D7 mov edi, edx 890 891 000006A2 668B1B mov bx, [ebx] 892 000006A5 6683EE04 sub si, 4 893 000006A9 6683C704 add di, 4 894 @@repeat: 895 @@while_i: 896 000006AD 6683C604 add si, 4 897 000006B1 66391E cmp [esi], bx 898 000006B4 7CF7 jl short @@while_i 899 @@while_j: 900 000006B6 6683EF04 sub di, 4 901 000006BA 66391F cmp [edi], bx 902 000006BD 7FF7 jg short @@while_j 903 000006BF 39FE cmp esi, edi 904 000006C1 730A jae short @@break 905 000006C3 8B06 mov eax, [esi] 906 000006C5 8B2F mov ebp, [edi] 907 000006C7 892E mov [esi], ebp 908 000006C9 8907 mov [edi], eax 909 000006CB EBE0 jmp short @@repeat 910 @@break: 911 000006CD 6683EE04 sub si, 4 912 000006D1 6683C704 add di, 4 913 914 000006D5 39F1 cmp ecx, esi 915 000006D7 730B jae short @@noleft 916 917 000006D9 52 push edx 918 000006DA 57 push edi 919 000006DB 89F2 mov edx, esi 920 000006DD E8AFFFFFFF call qsort 921 000006E2 5F pop edi 922 000006E3 5A pop edx 923 @@noleft: 924 000006E4 39D7 cmp edi, edx 925 000006E6 7307 jae short @@noright 926 000006E8 89F9 mov ecx, edi 927 000006EA E8A2FFFFFF call qsort 928 @@noright: 929 000006EF C3 retn 930 931 ;------------------------------------------------------------------------ 932 ; 933 ;------------------------------------------------------------------------ 934 drawfireball: 935 000006F0 0FB7DB movzx ebx, bx 936 937 000006F3 66832D[646F0000]10 sub word [ballx], 16 938 000006FB 66832D[666F0000]10 sub word [bally], 16 939 940 00000703 66C1E302 shl bx, 2 941 00000707 8BB3[FC6D0000] mov esi, [balloffsets+ebx] 942 943 0000070D 66A1[666F0000] mov ax, [bally] 944 00000713 66C1E006 shl ax, 6 945 00000717 6689C7 mov di, ax 946 0000071A 66C1E002 shl ax, 2 947 0000071E 6601C7 add di, ax 948 00000721 66033D[646F0000] add di, [ballx] 949 950 00000728 0FB7FF movzx edi, di 951 952 0000072B BA20000000 mov edx, 32 953 _yloop: 954 00000730 B920000000 mov ecx, 32 955 _xloop: 956 00000735 668B1E mov bx, [esi] 957 00000738 8A83[F8330000] mov al, [fire+ebx] 958 0000073E 08C0 or al, al 959 00000740 7417 jz short _black 960 00000742 8887[00000100] mov [virtscr+edi], al 961 962 00000748 8A87[4A060100] mov al, [virtscr+edi+320*5+10] 963 0000074E 3CCC cmp al, 192+12 964 00000750 7207 jb short _black 965 966 00000752 80AF[4A060100]0C sub byte [virtscr+edi+320*5+10], 12 967 _black: 968 00000759 6647 inc di 969 0000075B 83C602 add esi, 2 970 0000075E E2D5 loop _xloop 971 00000760 6681C72001 add di, 320-32 972 973 00000765 4A dec edx 974 00000766 75C8 jnz short _yloop 975 976 00000768 C3 retn 977 978 ;------------------------------------------------------------------------ 979 ; 980 ;------------------------------------------------------------------------ 981 balltransform: 982 ;cld 983 00000769 9BDBE3 finit 984 985 0000076C 66BAF0FF mov dx, -16 986 y_loop: 987 00000770 66B9F0FF mov cx, -16 988 00000774 6689D3 mov bx, dx 989 00000777 660FAFDB imul bx, bx 990 0000077B 668915[666F0000] mov [bally], dx 991 x_loop: 992 00000782 66890D[646F0000] mov [ballx], cx 993 00000789 6609C9 or cx, cx 994 0000078C 751E jne short notzero 995 0000078E 6683FA00 cmp dx, 0 996 00000792 7D0C jge short ygr0 997 00000794 D9EB fldpi 998 00000796 D9E8 fld1 999 00000798 D9E8 fld1 1000 0000079A DEC1 fadd 1001 1002 0000079C DEF9 fdiv 1003 0000079E EB1E jmp short morecalc 1004 ygr0: 1005 000007A0 D9EB fldpi 1006 000007A2 D905[442C0000] fld dword [ddtemp] 1007 000007A8 DEC9 fmul 1008 000007AA EB12 jmp short morecalc 1009 notzero: 1010 000007AC DF05[666F0000] fild word [bally] 1011 000007B2 DF05[646F0000] fild word [ballx] 1012 000007B8 D9F3 fpatan 1013 000007BA D9EB fldpi 1014 000007BC DEC1 fadd 1015 morecalc: 1016 000007BE 66C705[1A6E0000]20- mov word [dwtemp], 32 1016 000007C6 00 1017 000007C7 DF05[1A6E0000] fild word [dwtemp] 1018 000007CD DEC9 fmul 1019 000007CF D9EB fldpi 1020 000007D1 DEF9 fdiv 1021 1022 000007D3 DF1D[1A6E0000] fistp word [dwtemp] 1023 1024 000007D9 6689C8 mov ax, cx 1025 000007DC 660FAFC0 imul ax, ax 1026 000007E0 6601D8 add ax, bx 1027 000007E3 66A3[186E0000] mov [sqr], ax 1028 000007E9 DF05[186E0000] fild word [sqr] 1029 000007EF D9FA fsqrt 1030 000007F1 DF1D[186E0000] fistp word [sqr] 1031 1032 000007F7 66A1[186E0000] mov ax, [sqr] 1033 000007FD 663B05[9C330000] cmp ax, [radius] 1034 00000804 7717 ja short black_ 1035 1036 00000806 662B05[9C330000] sub ax, [radius] 1037 0000080D 66F7D8 neg ax 1038 00000810 66C1E005 shl ax, 5 1039 00000814 660305[1A6E0000] add ax, [dwtemp] 1040 0000081B EB02 jmp short store 1041 1042 black_: 1043 0000081D 31C0 xor eax, eax 1044 store: 1045 0000081F 66AB stosw 1046 00000821 6641 inc cx 1047 00000823 6683F910 cmp cx, 16 1048 00000827 0F8C55FFFFFF jl x_loop 1049 1050 0000082D 6642 inc dx 1051 0000082F 6683FA10 cmp dx, 16 1052 00000833 0F8C37FFFFFF jl y_loop 1053 1054 00000839 C3 retn 1055 1056 ;------------------------------------------------------------------------ 1057 ; 1058 ;------------------------------------------------------------------------ 1059 makefire: 1060 0000083A BE[18340000] mov esi, fire+32 1061 0000083F BF[F8330000] mov edi, fire 1062 00000844 B900020000 mov ecx, 32*16 1063 00000849 31DB xor ebx, ebx 1064 @@actflame: 1065 0000084B AC lodsb 1066 0000084C 08C0 or al, al 1067 0000084E 7429 jz short @@black 1068 1069 00000850 3C1E cmp al, decay 1070 00000852 7225 jb short @@black 1071 1072 00000854 88C2 mov dl, al 1073 00000856 66B80700 mov ax, 7 1074 0000085A E894210000 call random 1075 0000085F 6683E803 sub ax, 3 1076 00000863 6689C3 mov bx, ax 1077 00000866 66B81E00 mov ax, decay 1078 0000086A E884210000 call random 1079 0000086F 28C2 sub dl, al 1080 00000871 88141F mov [edi+ebx], dl 1081 00000874 47 inc edi 1082 00000875 E2D4 loop @@actflame 1083 00000877 EB06 jmp short @@actflameready 1084 @@black: 1085 00000879 C60700 mov byte [edi], 0 1086 0000087C 47 inc edi 1087 0000087D E2CC loop @@actflame 1088 @@actflameready: 1089 0000087F C605[F8330000]00 mov byte [fire], 0 1090 1091 00000886 BF[D8350000] mov edi, fire+15*32 1092 1093 0000088B 66A1[746F0000] mov ax, [fireroot] 1094 1095 00000891 B110 mov cl, 16 1096 00000893 F366AB rep stosw 1097 1098 00000896 C3 retn 1099 1100 ;------------------------------------------------------------------------ 1101 ; 1102 ;------------------------------------------------------------------------ 1103 calcrot: 1104 00000897 0FB71D[1C6E0000] movzx ebx, word [alpha] 1105 0000089E 6601DB add bx, bx 1106 000008A1 668B83[802C0000] mov ax, [sintable+ebx] 1107 000008A8 66A3[226E0000] mov [sinalpha], ax 1108 000008AE 668BBB[002D0000] mov di, [costable+ebx] 1109 1110 000008B5 668B1D[1E6E0000] mov bx, [beta] 1111 000008BC 6601DB add bx, bx 1112 000008BF 668BB3[802C0000] mov si, [sintable+ebx] 1113 000008C6 668BAB[002D0000] mov bp, [costable+ebx] 1114 1115 000008CD 668B1D[206E0000] mov bx, [gamma] 1116 000008D4 6601DB add bx, bx 1117 000008D7 668B8B[802C0000] mov cx, [sintable+ebx] 1118 000008DE 668B83[002D0000] mov ax, [costable+ebx] 1119 000008E5 6689C3 mov bx, ax 1120 1121 000008E8 66F7ED imul bp 1122 000008EB 660FACD008 shrd ax, dx, 8 1123 000008F0 66A3[246E0000] mov [_r11], ax 1124 1125 000008F6 6689C8 mov ax, cx 1126 000008F9 66F7ED imul bp 1127 000008FC 660FACD008 shrd ax, dx, 8 1128 00000901 66A3[266E0000] mov [_r12], ax 1129 1130 00000907 6689F0 mov ax, si 1131 0000090A 66A3[286E0000] mov [_r13], ax 1132 00000910 66F71D[286E0000] neg word [_r13] 1133 1134 00000917 6689F8 mov ax, di 1135 0000091A 66F7E9 imul cx 1136 0000091D 660FACD008 shrd ax, dx, 8 1137 00000922 66A3[366E0000] mov [add11], ax 1138 1139 00000928 66A1[226E0000] mov ax, [sinalpha] 1140 0000092E 66F7EB imul bx 1141 00000931 660FACD008 shrd ax, dx, 8 1142 00000936 66A3[386E0000] mov [add12], ax 1143 0000093C 66F7EE imul si 1144 0000093F 660FACD008 shrd ax, dx, 8 1145 00000944 662B05[366E0000] sub ax, [add11] 1146 1147 0000094B 66A3[2A6E0000] mov [_r21], ax 1148 1149 00000951 66A1[366E0000] mov ax, [add11] 1150 00000957 66F7EE imul si 1151 0000095A 660FACD008 shrd ax, dx, 8 1152 0000095F 662B05[386E0000] sub ax, [add12] 1153 00000966 66A3[326E0000] mov [_r32], ax 1154 1155 0000096C 6689F8 mov ax, di 1156 0000096F 66F7EB imul bx 1157 00000972 660FACD008 shrd ax, dx, 8 1158 00000977 66A3[366E0000] mov [add11], ax 1159 1160 0000097D 66A1[226E0000] mov ax, [sinalpha] 1161 00000983 66F7E9 imul cx 1162 00000986 660FACD008 shrd ax, dx, 8 1163 0000098B 66A3[386E0000] mov [add12], ax 1164 00000991 66F7EE imul si 1165 00000994 660FACD008 shrd ax, dx, 8 1166 00000999 660305[366E0000] add ax, [add11] 1167 000009A0 66A3[2C6E0000] mov [_r22], ax 1168 1169 000009A6 66A1[366E0000] mov ax, [add11] 1170 000009AC 66F7EE imul si 1171 000009AF 660FACD008 shrd ax, dx, 8 1172 000009B4 660305[386E0000] add ax, [add12] 1173 000009BB 66A3[306E0000] mov [_r31], ax 1174 1175 000009C1 66A1[226E0000] mov ax, [sinalpha] 1176 000009C7 66F7ED imul bp 1177 000009CA 660FACD008 shrd ax, dx, 8 1178 000009CF 66A3[2E6E0000] mov [_r23], ax 1179 1180 000009D5 6689F8 mov ax, di 1181 000009D8 66F7ED imul bp 1182 000009DB 660FACD008 shrd ax, dx, 8 1183 1184 000009E0 66A3[346E0000] mov [_r33], ax 1185 1186 000009E6 C3 retn 1187 1188 ;------------------------------------------------------------------------ 1189 ; 1190 ;------------------------------------------------------------------------ 1191 rotatexyz: 1192 000009E7 66A1[266E0000] @@rotxyz: mov ax, [_r12] 1193 000009ED 66F72E imul word [esi] 1194 000009F0 660FACD008 shrd ax, dx, 8 1195 000009F5 6689C3 mov bx, ax 1196 1197 000009F8 66A1[2C6E0000] mov ax, [_r22] 1198 000009FE 66F76E02 imul word [esi+2] 1199 00000A02 660FACD008 shrd ax, dx, 8 1200 00000A07 6601C3 add bx, ax 1201 1202 00000A0A 66A1[326E0000] mov ax, [_r32] 1203 00000A10 66F76E04 imul word [esi+4] 1204 00000A14 660FACD008 shrd ax, dx, 8 1205 00000A19 6601D8 add ax, bx 1206 00000A1C 66894702 mov [edi+2], ax 1207 1208 00000A20 66A1[246E0000] mov ax, [_r11] 1209 00000A26 66F72E imul word [esi] 1210 00000A29 660FACD008 shrd ax, dx, 8 1211 00000A2E 6689C3 mov bx, ax 1212 1213 00000A31 66A1[2A6E0000] mov ax, [_r21] 1214 00000A37 66F76E02 imul word [esi+2] 1215 00000A3B 660FACD008 shrd ax, dx, 8 1216 00000A40 6601C3 add bx, ax 1217 1218 00000A43 66A1[306E0000] mov ax, [_r31] 1219 00000A49 66F76E04 imul word [esi+4] 1220 00000A4D 660FACD008 shrd ax, dx, 8 1221 00000A52 6601D8 add ax, bx 1222 00000A55 668907 mov [edi], ax 1223 1224 00000A58 66A1[286E0000] mov ax, [_r13] 1225 00000A5E 66F72E imul word [esi] 1226 00000A61 660FACD008 shrd ax, dx, 8 1227 00000A66 6689C3 mov bx, ax 1228 1229 00000A69 66A1[2E6E0000] mov ax, [_r23] 1230 00000A6F 66F76E02 imul word [esi+2] 1231 00000A73 660FACD008 shrd ax, dx, 8 1232 00000A78 6601C3 add bx, ax 1233 1234 00000A7B 66A1[346E0000] mov ax, [_r33] 1235 00000A81 66F76E04 imul word [esi+4] 1236 00000A85 660FACD008 shrd ax, dx, 8 1237 00000A8A 6601D8 add ax, bx 1238 00000A8D 66894704 mov [edi+4], ax 1239 1240 00000A91 83C706 add edi, 6 1241 00000A94 83C606 add esi, 6 1242 00000A97 49 dec ecx 1243 00000A98 0F8549FFFFFF jnz @@rotxyz 1244 1245 00000A9E C3 retn 1246 1247 ;------------------------------------------------------------------------ 1248 ; 1249 ;------------------------------------------------------------------------ 1250 wood: 1251 00000A9F BF[00000200] mov edi, mazeseg 1252 00000AA4 B8E0E1E0E1 mov eax, 0E1E0E1E0h 1253 00000AA9 B9803E0000 mov ecx, 16000 1254 00000AAE F3AB rep stosd 1255 1256 00000AB0 B900000100 mov ecx, 65536 1257 00000AB5 31ED xor ebp, ebp 1258 _woo_: 1259 00000AB7 89E8 mov eax, ebp 1260 00000AB9 01DD add ebp, ebx 1261 00000ABB 6683E007 and ax, 7 1262 1263 ;mov bl, [edi-320] 1264 00000ABF 89FA mov edx, edi 1265 00000AC1 6681EA4001 sub dx, 320 1266 00000AC6 8A1A mov bl, [edx] 1267 00000AC8 08C0 or al, al 1268 00000ACA 7413 jz short _0_ 1269 00000ACC FEC8 dec al 1270 00000ACE 741A jz short _1_ 1271 00000AD0 FEC8 dec al 1272 00000AD2 7421 jz short _2_ 1273 00000AD4 FEC8 dec al 1274 00000AD6 742C jz short _3_ 1275 1276 _4_: 1277 00000AD8 881F mov [edi], bl 1278 00000ADA 6647 inc di 1279 00000ADC E2D9 loop _woo_ 1280 1281 00000ADE C3 retn 1282 1283 00000ADF 80FBFD _0_: cmp bl, 253 1284 00000AE2 77F4 ja short _4_ 1285 00000AE4 FEC3 inc bl 1286 _01_: 1287 00000AE6 FEC3 inc bl 1288 00000AE8 EBEE jmp short _4_ 1289 1290 00000AEA 80FBC2 _1_: cmp bl, 194 1291 00000AED 72E9 jb short _4_ 1292 00000AEF FECB dec bl 1293 _11_: 1294 00000AF1 FECB dec bl 1295 00000AF3 EBE3 jmp short _4_ 1296 1297 _2_: 1298 ;cmp bl, [edi-321] 1299 00000AF5 89FA mov edx, edi 1300 00000AF7 6681EA4101 sub dx, 321 1301 00000AFC 3A1A cmp bl, [edx] 1302 _21_: 1303 00000AFE 74D8 je short _4_ 1304 00000B00 72E4 jb short _01_ 1305 00000B02 EBED jmp short _11_ 1306 1307 _3_: 1308 ;cmp bl, [edi-319] 1309 00000B04 89FA mov edx, edi 1310 00000B06 6681EA3F01 sub dx, 319 1311 00000B0B 3A1A cmp bl, [edx] 1312 00000B0D EBEF jmp short _21_ 1313 1314 ;------------------------------------------------------------------------ 1315 ; 1316 ;------------------------------------------------------------------------ 1317 mandala: 1318 00000B0F BE[502C0000] mov esi, mandata 1319 00000B14 BF[B0330000] mov edi, x0 1320 00000B19 B918000000 mov ecx, 24 1321 00000B1E F3A5 rep movsd 1322 1323 00000B20 DBE3 fninit 1324 1325 00000B22 BB55000000 mov ebx, 85 1326 00000B27 31FF xor edi, edi 1327 yloop_: 1328 00000B29 DD05[B0330000] fld qword [x0] 1329 00000B2F DD1D[B8330000] fstp qword [x] 1330 1331 00000B35 BA55000000 mov edx, 85 1332 xloop_: 1333 00000B3A DD05[B8330000] fld qword [x] 1334 00000B40 DC0D[B8330000] fmul qword [x] 1335 00000B46 DD05[C0330000] fld qword [y] 1336 00000B4C DC0D[C0330000] fmul qword [y] 1337 00000B52 DEC1 fadd 1338 00000B54 D9FA fsqrt 1339 00000B56 DD1D[E0330000] fstp qword [r] 1340 00000B5C DD05[C0330000] fld qword [y] 1341 00000B62 DD05[B8330000] fld qword [x] 1342 00000B68 D9F3 fpatan 1343 00000B6A DD1D[E8330000] fstp qword [phi] 1344 1345 00000B70 31C9 xor ecx, ecx 1346 @@iter: 1347 00000B72 6641 inc cx 1348 1349 00000B74 D9E8 fld1 1350 00000B76 DC35[E0330000] fdiv qword [r] 1351 00000B7C D9C0 fld st0 1352 00000B7E DEC9 fmul 1353 00000B80 DD15[E0330000] fst qword [r] 1354 1355 00000B86 DD05[E8330000] fld qword [phi] 1356 00000B8C DC05[E8330000] fadd qword [phi] 1357 00000B92 D9E0 fchs 1358 00000B94 DD1D[E8330000] fstp qword [phi] 1359 1360 00000B9A DC1D[D8330000] fcomp qword [bailout] 1361 1362 00000BA0 DD3D[F0330000] fnstsw word [status] 1363 1364 00000BA6 F605[F1330000]45 test byte [status+1], 01000101b 1365 00000BAD 7402 jz short out_ 1366 1367 00000BAF EBC1 jmp short @@iter 1368 out_: 1369 00000BB1 DD05[E8330000] fld qword [phi] 1370 00000BB7 D9FE fsin 1371 00000BB9 DC0D[E0330000] fmul qword [r] 1372 00000BBF D9FC frndint 1373 00000BC1 DF1D[F0330000] fistp word [status] 1374 00000BC7 66C1E103 shl cx, 3 1375 00000BCB 66030D[F0330000] add cx, [status] 1376 00000BD2 6681F90001 cmp cx, 256 1377 00000BD7 7202 jb short @@iterout 1378 00000BD9 B100 mov cl, 0 1379 @@iterout: 1380 00000BDB 88CD mov ch, cl 1381 1382 ;mov [mandalaseg+edi], cl 1383 ;mov [mandalaseg+edi+85], cl 1384 ;mov [mandalaseg+edi+85*2], cx 1385 1386 ;mov [mandalaseg+edi+256*85], cl 1387 ;mov [mandalaseg+edi+256*85+85], cl 1388 ;mov [mandalaseg+edi+256*85+85*2], cx 1389 1390 ;mov [mandalaseg+edi+256*85*2], cl 1391 ;mov [mandalaseg+edi+256*85*2+85], cl 1392 ;mov [mandalaseg+edi+256*85*2+85*2], cx 1393 1394 ;mov [mandalaseg+edi+256*85*3], cl 1395 ;mov [mandalaseg+edi+256*85*3+85], cl 1396 ;mov [mandalaseg+edi+256*85*3+85*2], cx 1397 1398 00000BDD BD[00000400] mov ebp, mandalaseg 1399 00000BE2 6689FD mov bp, di 1400 00000BE5 884D00 mov [ebp], cl 1401 00000BE8 6683C555 add bp, 85 1402 00000BEC 884D00 mov [ebp], cl 1403 00000BEF 6683C555 add bp, 85 1404 00000BF3 66894D00 mov [ebp], cx 1405 1406 00000BF7 BD[00000400] mov ebp, mandalaseg 1407 00000BFC 6689FD mov bp, di 1408 00000BFF 6681C50055 add bp, 256*85 1409 00000C04 884D00 mov [ebp], cl 1410 00000C07 6683C555 add bp, 85 1411 00000C0B 884D00 mov [ebp], cl 1412 00000C0E 6683C555 add bp, 85 1413 00000C12 66894D00 mov [ebp], cx 1414 1415 00000C16 BD[00000400] mov ebp, mandalaseg 1416 00000C1B 6689FD mov bp, di 1417 00000C1E 6681C500AA add bp, 256*85*2 1418 00000C23 884D00 mov [ebp], cl 1419 00000C26 6683C555 add bp, 85 1420 00000C2A 884D00 mov [ebp], cl 1421 00000C2D 6683C555 add bp, 85 1422 00000C31 66894D00 mov [ebp], cx 1423 1424 00000C35 BD[00000400] mov ebp, mandalaseg 1425 00000C3A 6689FD mov bp, di 1426 00000C3D 6681C500FF add bp, 256*85*3 1427 00000C42 884D00 mov [ebp], cl 1428 00000C45 6683C555 add bp, 85 1429 00000C49 884D00 mov [ebp], cl 1430 00000C4C 6683C555 add bp, 85 1431 00000C50 66894D00 mov [ebp], cx 1432 1433 00000C54 DD05[B8330000] fld qword [x] 1434 00000C5A DC05[C8330000] fadd qword [addx] 1435 00000C60 DD1D[B8330000] fstp qword [x] 1436 1437 00000C66 6647 inc di 1438 00000C68 4A dec edx 1439 00000C69 0F85CBFEFFFF jnz xloop_ 1440 1441 00000C6F 6681C7AB00 add di, 256-85 1442 00000C74 DD05[C0330000] fld qword [y] 1443 00000C7A DC05[D0330000] fadd qword [addy] 1444 00000C80 DD1D[C0330000] fstp qword [y] 1445 1446 00000C86 4B dec ebx 1447 00000C87 0F859CFEFFFF jnz yloop_ 1448 1449 00000C8D C3 retn 1450 1451 ;------------------------------------------------------------------------ 1452 ; 1453 ;------------------------------------------------------------------------ 1454 initwave: 1455 00000C8E BE[00000600] mov esi, circtable 1456 00000C93 BF[00000700] mov edi, degtable 1457 1458 ;mov [sz255], __float32__ (1275.0) 1459 1460 00000C98 66BA9CFF mov dx, -100 1461 _yloop_: 1462 00000C9C 66B960FF mov cx, -160 1463 00000CA0 6689D3 mov bx, dx 1464 00000CA3 660FAFDB imul bx, bx 1465 _xloop_: 1466 00000CA7 6689C8 mov ax, cx 1467 00000CAA 660FAFC0 imul ax, ax 1468 00000CAE 6601D8 add ax, bx 1469 00000CB1 66A3[F0330000] mov [status], ax 1470 00000CB7 DF05[F0330000] fild word [status] 1471 00000CBD D9FA fsqrt 1472 00000CBF DF1E fistp word [esi] 1473 1474 00000CC1 6683F900 cmp cx, 0 1475 00000CC5 750E jne short @@notzero 1476 00000CC7 6683FA00 cmp dx, 0 1477 00000CCB 7D04 jge short @@ygr0 1478 00000CCD B0C0 mov al, 64+128 1479 00000CCF EB38 jmp short @@storedeg 1480 @@ygr0: 1481 00000CD1 B040 mov al, 64 1482 00000CD3 EB34 jmp short @@storedeg 1483 @@notzero: 1484 00000CD5 668915[F0330000] mov [status], dx 1485 00000CDC DF05[F0330000] fild word [status] 1486 00000CE2 66890D[F0330000] mov [status], cx 1487 00000CE9 DF05[F0330000] fild word [status] 1488 00000CEF D9F3 fpatan 1489 00000CF1 D80D[482C0000] fmul dword [sz255] 1490 00000CF7 D9EB fldpi 1491 00000CF9 DCC0 fadd st0, st0 1492 00000CFB DEF9 fdiv 1493 00000CFD DF1D[F0330000] fistp word [status] 1494 00000D03 66A1[F0330000] mov ax, [status] 1495 @@storedeg: 1496 00000D09 8807 mov [edi], al 1497 00000D0B 6647 inc di 1498 00000D0D 6646 inc si 1499 00000D0F 6641 inc cx 1500 00000D11 6681F9A000 cmp cx, 160 1501 00000D16 758F jne short _xloop_ 1502 00000D18 6642 inc dx 1503 00000D1A 6683FA64 cmp dx, 100 1504 00000D1E 0F8578FFFFFF jne _yloop_ 1505 1506 00000D24 BF[00000800] mov edi, multable 1507 1508 00000D29 66BB0000 mov bx, 0 1509 @@yloop2: 1510 00000D2D 66B981FF mov cx, -127 1511 @@xloop2: 1512 00000D31 6689C8 mov ax, cx 1513 00000D34 66F7EB imul bx 1514 00000D37 660FACD007 shrd ax, dx, 7 1515 00000D3C 0480 add al, 128 1516 00000D3E AA stosb 1517 00000D3F 6641 inc cx 1518 00000D41 6681F98000 cmp cx, 128 1519 00000D46 7EE9 jle short @@xloop2 1520 00000D48 6643 inc bx 1521 00000D4A 6681FB0001 cmp bx, 256 1522 00000D4F 76DC jbe short @@yloop2 1523 1524 00000D51 C3 retn 1525 1526 ;oldint8: dd ? 1527 1528 ;------------------------------------------------------------------------ 1529 ; 1530 ;------------------------------------------------------------------------ 1531 newint8: ; Timer callback service for TRDOS 386 1532 1533 00000D52 FF05[AA330000] inc dword [timer] 1534 1535 00000D58 66813D[00320000]80- cmp word [fadeinval], 128 1535 00000D60 00 1536 00000D61 7407 je short _n1 1537 00000D63 66FF05[00320000] inc word [fadeinval] 1538 _n1: 1539 00000D6A 66833D[02320000]00 cmp word [fadeoutval], 0 1540 00000D72 7407 je short _n2 1541 00000D74 66FF0D[02320000] dec word [fadeoutval] 1542 _n2: 1543 ;jmp dword [oldint8] 1544 1545 sys _rele ; TRDOS 386 : return from callback service 1545 <1> 1545 <1> 1545 <1> 1545 <1> 1545 <1> %if %0 >= 2 1545 <1> mov ebx, %2 1545 <1> %if %0 >= 3 1545 <1> mov ecx, %3 1545 <1> %if %0 = 4 1545 <1> mov edx, %4 1545 <1> %endif 1545 <1> %endif 1545 <1> %endif 1545 00000D7B B827000000 <1> mov eax, %1 1545 <1> 1545 00000D80 CD40 <1> int 40h 1546 1547 ;------------------------------------------------------------------------ 1548 ; 1549 ;------------------------------------------------------------------------ 1550 gensintable: 1551 00000D82 31FF xor edi, edi 1552 00000D84 BBFFFF0000 mov ebx, 65535 1553 00000D89 BD48060000 mov ebp, 2*804 1554 1555 00000D8E 31F6 xor esi, esi 1556 ;mov cx, 320 1557 00000D90 B940010000 mov ecx, 320 1558 @@singen: 1559 00000D95 89F8 mov eax, edi 1560 00000D97 C1E808 shr eax, 8 1561 00000D9A 668986[802C0000] mov [sintable+esi], ax 1562 1563 00000DA1 46 inc esi 1564 00000DA2 46 inc esi 1565 1566 00000DA3 89F8 mov eax, edi 1567 00000DA5 F7ED imul ebp 1568 00000DA7 0FACD010 shrd eax, edx, 16 1569 00000DAB 29C3 sub ebx, eax 1570 00000DAD 89D8 mov eax, ebx 1571 00000DAF F7ED imul ebp 1572 00000DB1 0FACD010 shrd eax, edx, 16 1573 00000DB5 01C7 add edi, eax 1574 1575 00000DB7 E2DC loop @@singen 1576 1577 00000DB9 C3 retn 1578 1579 ;------------------------------------------------------------------------ 1580 ; 1581 ;------------------------------------------------------------------------ 1582 drawmaze: 1583 00000DBA 31DB xor ebx, ebx 1584 00000DBC BF[9E7D0100] mov edi, virtscr+32000+160-2 1585 @@draw: 1586 00000DC1 53 push ebx 1587 1588 00000DC2 668B83[04320000] mov ax, [dist+ebx] 1589 00000DC9 0FB735[94330000] movzx esi, word [angle] 1590 00000DD0 6601F6 add si, si 1591 00000DD3 668B8E[002D0000] mov cx, [costable+esi] 1592 00000DDA 50 push eax 1593 00000DDB 66F7E9 imul cx 1594 00000DDE 660FACD008 shrd ax, dx, 8 1595 00000DE3 6689C1 mov cx, ax 1596 00000DE6 6689C5 mov bp, ax 1597 00000DE9 66F7DD neg bp 1598 00000DEC 58 pop eax 1599 00000DED 668B9E[802C0000] mov bx, [sintable+esi] 1600 00000DF4 66F7EB imul bx 1601 00000DF7 660FACD008 shrd ax, dx, 8 1602 00000DFC 6689C2 mov dx, ax 1603 00000DFF 6689C6 mov si, ax 1604 1605 00000E02 66C1E108 shl cx, 8 1606 00000E06 66C1E208 shl dx, 8 1607 00000E0A 022D[96330000] add ch, [xpos] 1608 00000E10 0235[97330000] add dh, [ypos] 1609 1610 ;push ds 1611 ;load ds, @mazeseg 1612 1613 ;std 1614 00000E16 57 push edi 1615 00000E17 51 push ecx 1616 00000E18 52 push edx 1617 %rep 80 1618 mov bl, ch 1619 mov bh, dh 1620 mov ah, [mazeseg+ebx] 1621 add cx, si 1622 add dx, bp 1623 mov bl, ch 1624 mov bh, dh 1625 mov al, [mazeseg+ebx] 1626 add cx, si 1627 add dx, bp 1628 ;stosw 1629 mov [edi], ax 1630 dec edi 1631 dec edi 1632 %endrep 1632 00000E19 88EB <1> mov bl, ch 1632 00000E1B 88F7 <1> mov bh, dh 1632 00000E1D 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000E23 6601F1 <1> add cx, si 1632 00000E26 6601EA <1> add dx, bp 1632 00000E29 88EB <1> mov bl, ch 1632 00000E2B 88F7 <1> mov bh, dh 1632 00000E2D 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000E33 6601F1 <1> add cx, si 1632 00000E36 6601EA <1> add dx, bp 1632 <1> 1632 00000E39 668907 <1> mov [edi], ax 1632 00000E3C 4F <1> dec edi 1632 00000E3D 4F <1> dec edi 1632 00000E3E 88EB <1> mov bl, ch 1632 00000E40 88F7 <1> mov bh, dh 1632 00000E42 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000E48 6601F1 <1> add cx, si 1632 00000E4B 6601EA <1> add dx, bp 1632 00000E4E 88EB <1> mov bl, ch 1632 00000E50 88F7 <1> mov bh, dh 1632 00000E52 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000E58 6601F1 <1> add cx, si 1632 00000E5B 6601EA <1> add dx, bp 1632 <1> 1632 00000E5E 668907 <1> mov [edi], ax 1632 00000E61 4F <1> dec edi 1632 00000E62 4F <1> dec edi 1632 00000E63 88EB <1> mov bl, ch 1632 00000E65 88F7 <1> mov bh, dh 1632 00000E67 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000E6D 6601F1 <1> add cx, si 1632 00000E70 6601EA <1> add dx, bp 1632 00000E73 88EB <1> mov bl, ch 1632 00000E75 88F7 <1> mov bh, dh 1632 00000E77 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000E7D 6601F1 <1> add cx, si 1632 00000E80 6601EA <1> add dx, bp 1632 <1> 1632 00000E83 668907 <1> mov [edi], ax 1632 00000E86 4F <1> dec edi 1632 00000E87 4F <1> dec edi 1632 00000E88 88EB <1> mov bl, ch 1632 00000E8A 88F7 <1> mov bh, dh 1632 00000E8C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000E92 6601F1 <1> add cx, si 1632 00000E95 6601EA <1> add dx, bp 1632 00000E98 88EB <1> mov bl, ch 1632 00000E9A 88F7 <1> mov bh, dh 1632 00000E9C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000EA2 6601F1 <1> add cx, si 1632 00000EA5 6601EA <1> add dx, bp 1632 <1> 1632 00000EA8 668907 <1> mov [edi], ax 1632 00000EAB 4F <1> dec edi 1632 00000EAC 4F <1> dec edi 1632 00000EAD 88EB <1> mov bl, ch 1632 00000EAF 88F7 <1> mov bh, dh 1632 00000EB1 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000EB7 6601F1 <1> add cx, si 1632 00000EBA 6601EA <1> add dx, bp 1632 00000EBD 88EB <1> mov bl, ch 1632 00000EBF 88F7 <1> mov bh, dh 1632 00000EC1 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000EC7 6601F1 <1> add cx, si 1632 00000ECA 6601EA <1> add dx, bp 1632 <1> 1632 00000ECD 668907 <1> mov [edi], ax 1632 00000ED0 4F <1> dec edi 1632 00000ED1 4F <1> dec edi 1632 00000ED2 88EB <1> mov bl, ch 1632 00000ED4 88F7 <1> mov bh, dh 1632 00000ED6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000EDC 6601F1 <1> add cx, si 1632 00000EDF 6601EA <1> add dx, bp 1632 00000EE2 88EB <1> mov bl, ch 1632 00000EE4 88F7 <1> mov bh, dh 1632 00000EE6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000EEC 6601F1 <1> add cx, si 1632 00000EEF 6601EA <1> add dx, bp 1632 <1> 1632 00000EF2 668907 <1> mov [edi], ax 1632 00000EF5 4F <1> dec edi 1632 00000EF6 4F <1> dec edi 1632 00000EF7 88EB <1> mov bl, ch 1632 00000EF9 88F7 <1> mov bh, dh 1632 00000EFB 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000F01 6601F1 <1> add cx, si 1632 00000F04 6601EA <1> add dx, bp 1632 00000F07 88EB <1> mov bl, ch 1632 00000F09 88F7 <1> mov bh, dh 1632 00000F0B 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000F11 6601F1 <1> add cx, si 1632 00000F14 6601EA <1> add dx, bp 1632 <1> 1632 00000F17 668907 <1> mov [edi], ax 1632 00000F1A 4F <1> dec edi 1632 00000F1B 4F <1> dec edi 1632 00000F1C 88EB <1> mov bl, ch 1632 00000F1E 88F7 <1> mov bh, dh 1632 00000F20 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000F26 6601F1 <1> add cx, si 1632 00000F29 6601EA <1> add dx, bp 1632 00000F2C 88EB <1> mov bl, ch 1632 00000F2E 88F7 <1> mov bh, dh 1632 00000F30 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000F36 6601F1 <1> add cx, si 1632 00000F39 6601EA <1> add dx, bp 1632 <1> 1632 00000F3C 668907 <1> mov [edi], ax 1632 00000F3F 4F <1> dec edi 1632 00000F40 4F <1> dec edi 1632 00000F41 88EB <1> mov bl, ch 1632 00000F43 88F7 <1> mov bh, dh 1632 00000F45 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000F4B 6601F1 <1> add cx, si 1632 00000F4E 6601EA <1> add dx, bp 1632 00000F51 88EB <1> mov bl, ch 1632 00000F53 88F7 <1> mov bh, dh 1632 00000F55 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000F5B 6601F1 <1> add cx, si 1632 00000F5E 6601EA <1> add dx, bp 1632 <1> 1632 00000F61 668907 <1> mov [edi], ax 1632 00000F64 4F <1> dec edi 1632 00000F65 4F <1> dec edi 1632 00000F66 88EB <1> mov bl, ch 1632 00000F68 88F7 <1> mov bh, dh 1632 00000F6A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000F70 6601F1 <1> add cx, si 1632 00000F73 6601EA <1> add dx, bp 1632 00000F76 88EB <1> mov bl, ch 1632 00000F78 88F7 <1> mov bh, dh 1632 00000F7A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000F80 6601F1 <1> add cx, si 1632 00000F83 6601EA <1> add dx, bp 1632 <1> 1632 00000F86 668907 <1> mov [edi], ax 1632 00000F89 4F <1> dec edi 1632 00000F8A 4F <1> dec edi 1632 00000F8B 88EB <1> mov bl, ch 1632 00000F8D 88F7 <1> mov bh, dh 1632 00000F8F 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000F95 6601F1 <1> add cx, si 1632 00000F98 6601EA <1> add dx, bp 1632 00000F9B 88EB <1> mov bl, ch 1632 00000F9D 88F7 <1> mov bh, dh 1632 00000F9F 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000FA5 6601F1 <1> add cx, si 1632 00000FA8 6601EA <1> add dx, bp 1632 <1> 1632 00000FAB 668907 <1> mov [edi], ax 1632 00000FAE 4F <1> dec edi 1632 00000FAF 4F <1> dec edi 1632 00000FB0 88EB <1> mov bl, ch 1632 00000FB2 88F7 <1> mov bh, dh 1632 00000FB4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000FBA 6601F1 <1> add cx, si 1632 00000FBD 6601EA <1> add dx, bp 1632 00000FC0 88EB <1> mov bl, ch 1632 00000FC2 88F7 <1> mov bh, dh 1632 00000FC4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000FCA 6601F1 <1> add cx, si 1632 00000FCD 6601EA <1> add dx, bp 1632 <1> 1632 00000FD0 668907 <1> mov [edi], ax 1632 00000FD3 4F <1> dec edi 1632 00000FD4 4F <1> dec edi 1632 00000FD5 88EB <1> mov bl, ch 1632 00000FD7 88F7 <1> mov bh, dh 1632 00000FD9 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00000FDF 6601F1 <1> add cx, si 1632 00000FE2 6601EA <1> add dx, bp 1632 00000FE5 88EB <1> mov bl, ch 1632 00000FE7 88F7 <1> mov bh, dh 1632 00000FE9 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00000FEF 6601F1 <1> add cx, si 1632 00000FF2 6601EA <1> add dx, bp 1632 <1> 1632 00000FF5 668907 <1> mov [edi], ax 1632 00000FF8 4F <1> dec edi 1632 00000FF9 4F <1> dec edi 1632 00000FFA 88EB <1> mov bl, ch 1632 00000FFC 88F7 <1> mov bh, dh 1632 00000FFE 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001004 6601F1 <1> add cx, si 1632 00001007 6601EA <1> add dx, bp 1632 0000100A 88EB <1> mov bl, ch 1632 0000100C 88F7 <1> mov bh, dh 1632 0000100E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001014 6601F1 <1> add cx, si 1632 00001017 6601EA <1> add dx, bp 1632 <1> 1632 0000101A 668907 <1> mov [edi], ax 1632 0000101D 4F <1> dec edi 1632 0000101E 4F <1> dec edi 1632 0000101F 88EB <1> mov bl, ch 1632 00001021 88F7 <1> mov bh, dh 1632 00001023 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001029 6601F1 <1> add cx, si 1632 0000102C 6601EA <1> add dx, bp 1632 0000102F 88EB <1> mov bl, ch 1632 00001031 88F7 <1> mov bh, dh 1632 00001033 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001039 6601F1 <1> add cx, si 1632 0000103C 6601EA <1> add dx, bp 1632 <1> 1632 0000103F 668907 <1> mov [edi], ax 1632 00001042 4F <1> dec edi 1632 00001043 4F <1> dec edi 1632 00001044 88EB <1> mov bl, ch 1632 00001046 88F7 <1> mov bh, dh 1632 00001048 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000104E 6601F1 <1> add cx, si 1632 00001051 6601EA <1> add dx, bp 1632 00001054 88EB <1> mov bl, ch 1632 00001056 88F7 <1> mov bh, dh 1632 00001058 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000105E 6601F1 <1> add cx, si 1632 00001061 6601EA <1> add dx, bp 1632 <1> 1632 00001064 668907 <1> mov [edi], ax 1632 00001067 4F <1> dec edi 1632 00001068 4F <1> dec edi 1632 00001069 88EB <1> mov bl, ch 1632 0000106B 88F7 <1> mov bh, dh 1632 0000106D 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001073 6601F1 <1> add cx, si 1632 00001076 6601EA <1> add dx, bp 1632 00001079 88EB <1> mov bl, ch 1632 0000107B 88F7 <1> mov bh, dh 1632 0000107D 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001083 6601F1 <1> add cx, si 1632 00001086 6601EA <1> add dx, bp 1632 <1> 1632 00001089 668907 <1> mov [edi], ax 1632 0000108C 4F <1> dec edi 1632 0000108D 4F <1> dec edi 1632 0000108E 88EB <1> mov bl, ch 1632 00001090 88F7 <1> mov bh, dh 1632 00001092 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001098 6601F1 <1> add cx, si 1632 0000109B 6601EA <1> add dx, bp 1632 0000109E 88EB <1> mov bl, ch 1632 000010A0 88F7 <1> mov bh, dh 1632 000010A2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000010A8 6601F1 <1> add cx, si 1632 000010AB 6601EA <1> add dx, bp 1632 <1> 1632 000010AE 668907 <1> mov [edi], ax 1632 000010B1 4F <1> dec edi 1632 000010B2 4F <1> dec edi 1632 000010B3 88EB <1> mov bl, ch 1632 000010B5 88F7 <1> mov bh, dh 1632 000010B7 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000010BD 6601F1 <1> add cx, si 1632 000010C0 6601EA <1> add dx, bp 1632 000010C3 88EB <1> mov bl, ch 1632 000010C5 88F7 <1> mov bh, dh 1632 000010C7 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000010CD 6601F1 <1> add cx, si 1632 000010D0 6601EA <1> add dx, bp 1632 <1> 1632 000010D3 668907 <1> mov [edi], ax 1632 000010D6 4F <1> dec edi 1632 000010D7 4F <1> dec edi 1632 000010D8 88EB <1> mov bl, ch 1632 000010DA 88F7 <1> mov bh, dh 1632 000010DC 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000010E2 6601F1 <1> add cx, si 1632 000010E5 6601EA <1> add dx, bp 1632 000010E8 88EB <1> mov bl, ch 1632 000010EA 88F7 <1> mov bh, dh 1632 000010EC 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000010F2 6601F1 <1> add cx, si 1632 000010F5 6601EA <1> add dx, bp 1632 <1> 1632 000010F8 668907 <1> mov [edi], ax 1632 000010FB 4F <1> dec edi 1632 000010FC 4F <1> dec edi 1632 000010FD 88EB <1> mov bl, ch 1632 000010FF 88F7 <1> mov bh, dh 1632 00001101 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001107 6601F1 <1> add cx, si 1632 0000110A 6601EA <1> add dx, bp 1632 0000110D 88EB <1> mov bl, ch 1632 0000110F 88F7 <1> mov bh, dh 1632 00001111 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001117 6601F1 <1> add cx, si 1632 0000111A 6601EA <1> add dx, bp 1632 <1> 1632 0000111D 668907 <1> mov [edi], ax 1632 00001120 4F <1> dec edi 1632 00001121 4F <1> dec edi 1632 00001122 88EB <1> mov bl, ch 1632 00001124 88F7 <1> mov bh, dh 1632 00001126 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000112C 6601F1 <1> add cx, si 1632 0000112F 6601EA <1> add dx, bp 1632 00001132 88EB <1> mov bl, ch 1632 00001134 88F7 <1> mov bh, dh 1632 00001136 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000113C 6601F1 <1> add cx, si 1632 0000113F 6601EA <1> add dx, bp 1632 <1> 1632 00001142 668907 <1> mov [edi], ax 1632 00001145 4F <1> dec edi 1632 00001146 4F <1> dec edi 1632 00001147 88EB <1> mov bl, ch 1632 00001149 88F7 <1> mov bh, dh 1632 0000114B 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001151 6601F1 <1> add cx, si 1632 00001154 6601EA <1> add dx, bp 1632 00001157 88EB <1> mov bl, ch 1632 00001159 88F7 <1> mov bh, dh 1632 0000115B 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001161 6601F1 <1> add cx, si 1632 00001164 6601EA <1> add dx, bp 1632 <1> 1632 00001167 668907 <1> mov [edi], ax 1632 0000116A 4F <1> dec edi 1632 0000116B 4F <1> dec edi 1632 0000116C 88EB <1> mov bl, ch 1632 0000116E 88F7 <1> mov bh, dh 1632 00001170 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001176 6601F1 <1> add cx, si 1632 00001179 6601EA <1> add dx, bp 1632 0000117C 88EB <1> mov bl, ch 1632 0000117E 88F7 <1> mov bh, dh 1632 00001180 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001186 6601F1 <1> add cx, si 1632 00001189 6601EA <1> add dx, bp 1632 <1> 1632 0000118C 668907 <1> mov [edi], ax 1632 0000118F 4F <1> dec edi 1632 00001190 4F <1> dec edi 1632 00001191 88EB <1> mov bl, ch 1632 00001193 88F7 <1> mov bh, dh 1632 00001195 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000119B 6601F1 <1> add cx, si 1632 0000119E 6601EA <1> add dx, bp 1632 000011A1 88EB <1> mov bl, ch 1632 000011A3 88F7 <1> mov bh, dh 1632 000011A5 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000011AB 6601F1 <1> add cx, si 1632 000011AE 6601EA <1> add dx, bp 1632 <1> 1632 000011B1 668907 <1> mov [edi], ax 1632 000011B4 4F <1> dec edi 1632 000011B5 4F <1> dec edi 1632 000011B6 88EB <1> mov bl, ch 1632 000011B8 88F7 <1> mov bh, dh 1632 000011BA 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000011C0 6601F1 <1> add cx, si 1632 000011C3 6601EA <1> add dx, bp 1632 000011C6 88EB <1> mov bl, ch 1632 000011C8 88F7 <1> mov bh, dh 1632 000011CA 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000011D0 6601F1 <1> add cx, si 1632 000011D3 6601EA <1> add dx, bp 1632 <1> 1632 000011D6 668907 <1> mov [edi], ax 1632 000011D9 4F <1> dec edi 1632 000011DA 4F <1> dec edi 1632 000011DB 88EB <1> mov bl, ch 1632 000011DD 88F7 <1> mov bh, dh 1632 000011DF 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000011E5 6601F1 <1> add cx, si 1632 000011E8 6601EA <1> add dx, bp 1632 000011EB 88EB <1> mov bl, ch 1632 000011ED 88F7 <1> mov bh, dh 1632 000011EF 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000011F5 6601F1 <1> add cx, si 1632 000011F8 6601EA <1> add dx, bp 1632 <1> 1632 000011FB 668907 <1> mov [edi], ax 1632 000011FE 4F <1> dec edi 1632 000011FF 4F <1> dec edi 1632 00001200 88EB <1> mov bl, ch 1632 00001202 88F7 <1> mov bh, dh 1632 00001204 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000120A 6601F1 <1> add cx, si 1632 0000120D 6601EA <1> add dx, bp 1632 00001210 88EB <1> mov bl, ch 1632 00001212 88F7 <1> mov bh, dh 1632 00001214 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000121A 6601F1 <1> add cx, si 1632 0000121D 6601EA <1> add dx, bp 1632 <1> 1632 00001220 668907 <1> mov [edi], ax 1632 00001223 4F <1> dec edi 1632 00001224 4F <1> dec edi 1632 00001225 88EB <1> mov bl, ch 1632 00001227 88F7 <1> mov bh, dh 1632 00001229 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000122F 6601F1 <1> add cx, si 1632 00001232 6601EA <1> add dx, bp 1632 00001235 88EB <1> mov bl, ch 1632 00001237 88F7 <1> mov bh, dh 1632 00001239 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000123F 6601F1 <1> add cx, si 1632 00001242 6601EA <1> add dx, bp 1632 <1> 1632 00001245 668907 <1> mov [edi], ax 1632 00001248 4F <1> dec edi 1632 00001249 4F <1> dec edi 1632 0000124A 88EB <1> mov bl, ch 1632 0000124C 88F7 <1> mov bh, dh 1632 0000124E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001254 6601F1 <1> add cx, si 1632 00001257 6601EA <1> add dx, bp 1632 0000125A 88EB <1> mov bl, ch 1632 0000125C 88F7 <1> mov bh, dh 1632 0000125E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001264 6601F1 <1> add cx, si 1632 00001267 6601EA <1> add dx, bp 1632 <1> 1632 0000126A 668907 <1> mov [edi], ax 1632 0000126D 4F <1> dec edi 1632 0000126E 4F <1> dec edi 1632 0000126F 88EB <1> mov bl, ch 1632 00001271 88F7 <1> mov bh, dh 1632 00001273 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001279 6601F1 <1> add cx, si 1632 0000127C 6601EA <1> add dx, bp 1632 0000127F 88EB <1> mov bl, ch 1632 00001281 88F7 <1> mov bh, dh 1632 00001283 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001289 6601F1 <1> add cx, si 1632 0000128C 6601EA <1> add dx, bp 1632 <1> 1632 0000128F 668907 <1> mov [edi], ax 1632 00001292 4F <1> dec edi 1632 00001293 4F <1> dec edi 1632 00001294 88EB <1> mov bl, ch 1632 00001296 88F7 <1> mov bh, dh 1632 00001298 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000129E 6601F1 <1> add cx, si 1632 000012A1 6601EA <1> add dx, bp 1632 000012A4 88EB <1> mov bl, ch 1632 000012A6 88F7 <1> mov bh, dh 1632 000012A8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000012AE 6601F1 <1> add cx, si 1632 000012B1 6601EA <1> add dx, bp 1632 <1> 1632 000012B4 668907 <1> mov [edi], ax 1632 000012B7 4F <1> dec edi 1632 000012B8 4F <1> dec edi 1632 000012B9 88EB <1> mov bl, ch 1632 000012BB 88F7 <1> mov bh, dh 1632 000012BD 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000012C3 6601F1 <1> add cx, si 1632 000012C6 6601EA <1> add dx, bp 1632 000012C9 88EB <1> mov bl, ch 1632 000012CB 88F7 <1> mov bh, dh 1632 000012CD 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000012D3 6601F1 <1> add cx, si 1632 000012D6 6601EA <1> add dx, bp 1632 <1> 1632 000012D9 668907 <1> mov [edi], ax 1632 000012DC 4F <1> dec edi 1632 000012DD 4F <1> dec edi 1632 000012DE 88EB <1> mov bl, ch 1632 000012E0 88F7 <1> mov bh, dh 1632 000012E2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000012E8 6601F1 <1> add cx, si 1632 000012EB 6601EA <1> add dx, bp 1632 000012EE 88EB <1> mov bl, ch 1632 000012F0 88F7 <1> mov bh, dh 1632 000012F2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000012F8 6601F1 <1> add cx, si 1632 000012FB 6601EA <1> add dx, bp 1632 <1> 1632 000012FE 668907 <1> mov [edi], ax 1632 00001301 4F <1> dec edi 1632 00001302 4F <1> dec edi 1632 00001303 88EB <1> mov bl, ch 1632 00001305 88F7 <1> mov bh, dh 1632 00001307 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000130D 6601F1 <1> add cx, si 1632 00001310 6601EA <1> add dx, bp 1632 00001313 88EB <1> mov bl, ch 1632 00001315 88F7 <1> mov bh, dh 1632 00001317 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000131D 6601F1 <1> add cx, si 1632 00001320 6601EA <1> add dx, bp 1632 <1> 1632 00001323 668907 <1> mov [edi], ax 1632 00001326 4F <1> dec edi 1632 00001327 4F <1> dec edi 1632 00001328 88EB <1> mov bl, ch 1632 0000132A 88F7 <1> mov bh, dh 1632 0000132C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001332 6601F1 <1> add cx, si 1632 00001335 6601EA <1> add dx, bp 1632 00001338 88EB <1> mov bl, ch 1632 0000133A 88F7 <1> mov bh, dh 1632 0000133C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001342 6601F1 <1> add cx, si 1632 00001345 6601EA <1> add dx, bp 1632 <1> 1632 00001348 668907 <1> mov [edi], ax 1632 0000134B 4F <1> dec edi 1632 0000134C 4F <1> dec edi 1632 0000134D 88EB <1> mov bl, ch 1632 0000134F 88F7 <1> mov bh, dh 1632 00001351 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001357 6601F1 <1> add cx, si 1632 0000135A 6601EA <1> add dx, bp 1632 0000135D 88EB <1> mov bl, ch 1632 0000135F 88F7 <1> mov bh, dh 1632 00001361 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001367 6601F1 <1> add cx, si 1632 0000136A 6601EA <1> add dx, bp 1632 <1> 1632 0000136D 668907 <1> mov [edi], ax 1632 00001370 4F <1> dec edi 1632 00001371 4F <1> dec edi 1632 00001372 88EB <1> mov bl, ch 1632 00001374 88F7 <1> mov bh, dh 1632 00001376 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000137C 6601F1 <1> add cx, si 1632 0000137F 6601EA <1> add dx, bp 1632 00001382 88EB <1> mov bl, ch 1632 00001384 88F7 <1> mov bh, dh 1632 00001386 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000138C 6601F1 <1> add cx, si 1632 0000138F 6601EA <1> add dx, bp 1632 <1> 1632 00001392 668907 <1> mov [edi], ax 1632 00001395 4F <1> dec edi 1632 00001396 4F <1> dec edi 1632 00001397 88EB <1> mov bl, ch 1632 00001399 88F7 <1> mov bh, dh 1632 0000139B 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000013A1 6601F1 <1> add cx, si 1632 000013A4 6601EA <1> add dx, bp 1632 000013A7 88EB <1> mov bl, ch 1632 000013A9 88F7 <1> mov bh, dh 1632 000013AB 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000013B1 6601F1 <1> add cx, si 1632 000013B4 6601EA <1> add dx, bp 1632 <1> 1632 000013B7 668907 <1> mov [edi], ax 1632 000013BA 4F <1> dec edi 1632 000013BB 4F <1> dec edi 1632 000013BC 88EB <1> mov bl, ch 1632 000013BE 88F7 <1> mov bh, dh 1632 000013C0 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000013C6 6601F1 <1> add cx, si 1632 000013C9 6601EA <1> add dx, bp 1632 000013CC 88EB <1> mov bl, ch 1632 000013CE 88F7 <1> mov bh, dh 1632 000013D0 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000013D6 6601F1 <1> add cx, si 1632 000013D9 6601EA <1> add dx, bp 1632 <1> 1632 000013DC 668907 <1> mov [edi], ax 1632 000013DF 4F <1> dec edi 1632 000013E0 4F <1> dec edi 1632 000013E1 88EB <1> mov bl, ch 1632 000013E3 88F7 <1> mov bh, dh 1632 000013E5 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000013EB 6601F1 <1> add cx, si 1632 000013EE 6601EA <1> add dx, bp 1632 000013F1 88EB <1> mov bl, ch 1632 000013F3 88F7 <1> mov bh, dh 1632 000013F5 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000013FB 6601F1 <1> add cx, si 1632 000013FE 6601EA <1> add dx, bp 1632 <1> 1632 00001401 668907 <1> mov [edi], ax 1632 00001404 4F <1> dec edi 1632 00001405 4F <1> dec edi 1632 00001406 88EB <1> mov bl, ch 1632 00001408 88F7 <1> mov bh, dh 1632 0000140A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001410 6601F1 <1> add cx, si 1632 00001413 6601EA <1> add dx, bp 1632 00001416 88EB <1> mov bl, ch 1632 00001418 88F7 <1> mov bh, dh 1632 0000141A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001420 6601F1 <1> add cx, si 1632 00001423 6601EA <1> add dx, bp 1632 <1> 1632 00001426 668907 <1> mov [edi], ax 1632 00001429 4F <1> dec edi 1632 0000142A 4F <1> dec edi 1632 0000142B 88EB <1> mov bl, ch 1632 0000142D 88F7 <1> mov bh, dh 1632 0000142F 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001435 6601F1 <1> add cx, si 1632 00001438 6601EA <1> add dx, bp 1632 0000143B 88EB <1> mov bl, ch 1632 0000143D 88F7 <1> mov bh, dh 1632 0000143F 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001445 6601F1 <1> add cx, si 1632 00001448 6601EA <1> add dx, bp 1632 <1> 1632 0000144B 668907 <1> mov [edi], ax 1632 0000144E 4F <1> dec edi 1632 0000144F 4F <1> dec edi 1632 00001450 88EB <1> mov bl, ch 1632 00001452 88F7 <1> mov bh, dh 1632 00001454 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000145A 6601F1 <1> add cx, si 1632 0000145D 6601EA <1> add dx, bp 1632 00001460 88EB <1> mov bl, ch 1632 00001462 88F7 <1> mov bh, dh 1632 00001464 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000146A 6601F1 <1> add cx, si 1632 0000146D 6601EA <1> add dx, bp 1632 <1> 1632 00001470 668907 <1> mov [edi], ax 1632 00001473 4F <1> dec edi 1632 00001474 4F <1> dec edi 1632 00001475 88EB <1> mov bl, ch 1632 00001477 88F7 <1> mov bh, dh 1632 00001479 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000147F 6601F1 <1> add cx, si 1632 00001482 6601EA <1> add dx, bp 1632 00001485 88EB <1> mov bl, ch 1632 00001487 88F7 <1> mov bh, dh 1632 00001489 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000148F 6601F1 <1> add cx, si 1632 00001492 6601EA <1> add dx, bp 1632 <1> 1632 00001495 668907 <1> mov [edi], ax 1632 00001498 4F <1> dec edi 1632 00001499 4F <1> dec edi 1632 0000149A 88EB <1> mov bl, ch 1632 0000149C 88F7 <1> mov bh, dh 1632 0000149E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000014A4 6601F1 <1> add cx, si 1632 000014A7 6601EA <1> add dx, bp 1632 000014AA 88EB <1> mov bl, ch 1632 000014AC 88F7 <1> mov bh, dh 1632 000014AE 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000014B4 6601F1 <1> add cx, si 1632 000014B7 6601EA <1> add dx, bp 1632 <1> 1632 000014BA 668907 <1> mov [edi], ax 1632 000014BD 4F <1> dec edi 1632 000014BE 4F <1> dec edi 1632 000014BF 88EB <1> mov bl, ch 1632 000014C1 88F7 <1> mov bh, dh 1632 000014C3 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000014C9 6601F1 <1> add cx, si 1632 000014CC 6601EA <1> add dx, bp 1632 000014CF 88EB <1> mov bl, ch 1632 000014D1 88F7 <1> mov bh, dh 1632 000014D3 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000014D9 6601F1 <1> add cx, si 1632 000014DC 6601EA <1> add dx, bp 1632 <1> 1632 000014DF 668907 <1> mov [edi], ax 1632 000014E2 4F <1> dec edi 1632 000014E3 4F <1> dec edi 1632 000014E4 88EB <1> mov bl, ch 1632 000014E6 88F7 <1> mov bh, dh 1632 000014E8 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000014EE 6601F1 <1> add cx, si 1632 000014F1 6601EA <1> add dx, bp 1632 000014F4 88EB <1> mov bl, ch 1632 000014F6 88F7 <1> mov bh, dh 1632 000014F8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000014FE 6601F1 <1> add cx, si 1632 00001501 6601EA <1> add dx, bp 1632 <1> 1632 00001504 668907 <1> mov [edi], ax 1632 00001507 4F <1> dec edi 1632 00001508 4F <1> dec edi 1632 00001509 88EB <1> mov bl, ch 1632 0000150B 88F7 <1> mov bh, dh 1632 0000150D 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001513 6601F1 <1> add cx, si 1632 00001516 6601EA <1> add dx, bp 1632 00001519 88EB <1> mov bl, ch 1632 0000151B 88F7 <1> mov bh, dh 1632 0000151D 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001523 6601F1 <1> add cx, si 1632 00001526 6601EA <1> add dx, bp 1632 <1> 1632 00001529 668907 <1> mov [edi], ax 1632 0000152C 4F <1> dec edi 1632 0000152D 4F <1> dec edi 1632 0000152E 88EB <1> mov bl, ch 1632 00001530 88F7 <1> mov bh, dh 1632 00001532 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001538 6601F1 <1> add cx, si 1632 0000153B 6601EA <1> add dx, bp 1632 0000153E 88EB <1> mov bl, ch 1632 00001540 88F7 <1> mov bh, dh 1632 00001542 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001548 6601F1 <1> add cx, si 1632 0000154B 6601EA <1> add dx, bp 1632 <1> 1632 0000154E 668907 <1> mov [edi], ax 1632 00001551 4F <1> dec edi 1632 00001552 4F <1> dec edi 1632 00001553 88EB <1> mov bl, ch 1632 00001555 88F7 <1> mov bh, dh 1632 00001557 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000155D 6601F1 <1> add cx, si 1632 00001560 6601EA <1> add dx, bp 1632 00001563 88EB <1> mov bl, ch 1632 00001565 88F7 <1> mov bh, dh 1632 00001567 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000156D 6601F1 <1> add cx, si 1632 00001570 6601EA <1> add dx, bp 1632 <1> 1632 00001573 668907 <1> mov [edi], ax 1632 00001576 4F <1> dec edi 1632 00001577 4F <1> dec edi 1632 00001578 88EB <1> mov bl, ch 1632 0000157A 88F7 <1> mov bh, dh 1632 0000157C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001582 6601F1 <1> add cx, si 1632 00001585 6601EA <1> add dx, bp 1632 00001588 88EB <1> mov bl, ch 1632 0000158A 88F7 <1> mov bh, dh 1632 0000158C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001592 6601F1 <1> add cx, si 1632 00001595 6601EA <1> add dx, bp 1632 <1> 1632 00001598 668907 <1> mov [edi], ax 1632 0000159B 4F <1> dec edi 1632 0000159C 4F <1> dec edi 1632 0000159D 88EB <1> mov bl, ch 1632 0000159F 88F7 <1> mov bh, dh 1632 000015A1 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000015A7 6601F1 <1> add cx, si 1632 000015AA 6601EA <1> add dx, bp 1632 000015AD 88EB <1> mov bl, ch 1632 000015AF 88F7 <1> mov bh, dh 1632 000015B1 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000015B7 6601F1 <1> add cx, si 1632 000015BA 6601EA <1> add dx, bp 1632 <1> 1632 000015BD 668907 <1> mov [edi], ax 1632 000015C0 4F <1> dec edi 1632 000015C1 4F <1> dec edi 1632 000015C2 88EB <1> mov bl, ch 1632 000015C4 88F7 <1> mov bh, dh 1632 000015C6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000015CC 6601F1 <1> add cx, si 1632 000015CF 6601EA <1> add dx, bp 1632 000015D2 88EB <1> mov bl, ch 1632 000015D4 88F7 <1> mov bh, dh 1632 000015D6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000015DC 6601F1 <1> add cx, si 1632 000015DF 6601EA <1> add dx, bp 1632 <1> 1632 000015E2 668907 <1> mov [edi], ax 1632 000015E5 4F <1> dec edi 1632 000015E6 4F <1> dec edi 1632 000015E7 88EB <1> mov bl, ch 1632 000015E9 88F7 <1> mov bh, dh 1632 000015EB 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000015F1 6601F1 <1> add cx, si 1632 000015F4 6601EA <1> add dx, bp 1632 000015F7 88EB <1> mov bl, ch 1632 000015F9 88F7 <1> mov bh, dh 1632 000015FB 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001601 6601F1 <1> add cx, si 1632 00001604 6601EA <1> add dx, bp 1632 <1> 1632 00001607 668907 <1> mov [edi], ax 1632 0000160A 4F <1> dec edi 1632 0000160B 4F <1> dec edi 1632 0000160C 88EB <1> mov bl, ch 1632 0000160E 88F7 <1> mov bh, dh 1632 00001610 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001616 6601F1 <1> add cx, si 1632 00001619 6601EA <1> add dx, bp 1632 0000161C 88EB <1> mov bl, ch 1632 0000161E 88F7 <1> mov bh, dh 1632 00001620 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001626 6601F1 <1> add cx, si 1632 00001629 6601EA <1> add dx, bp 1632 <1> 1632 0000162C 668907 <1> mov [edi], ax 1632 0000162F 4F <1> dec edi 1632 00001630 4F <1> dec edi 1632 00001631 88EB <1> mov bl, ch 1632 00001633 88F7 <1> mov bh, dh 1632 00001635 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000163B 6601F1 <1> add cx, si 1632 0000163E 6601EA <1> add dx, bp 1632 00001641 88EB <1> mov bl, ch 1632 00001643 88F7 <1> mov bh, dh 1632 00001645 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000164B 6601F1 <1> add cx, si 1632 0000164E 6601EA <1> add dx, bp 1632 <1> 1632 00001651 668907 <1> mov [edi], ax 1632 00001654 4F <1> dec edi 1632 00001655 4F <1> dec edi 1632 00001656 88EB <1> mov bl, ch 1632 00001658 88F7 <1> mov bh, dh 1632 0000165A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001660 6601F1 <1> add cx, si 1632 00001663 6601EA <1> add dx, bp 1632 00001666 88EB <1> mov bl, ch 1632 00001668 88F7 <1> mov bh, dh 1632 0000166A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001670 6601F1 <1> add cx, si 1632 00001673 6601EA <1> add dx, bp 1632 <1> 1632 00001676 668907 <1> mov [edi], ax 1632 00001679 4F <1> dec edi 1632 0000167A 4F <1> dec edi 1632 0000167B 88EB <1> mov bl, ch 1632 0000167D 88F7 <1> mov bh, dh 1632 0000167F 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001685 6601F1 <1> add cx, si 1632 00001688 6601EA <1> add dx, bp 1632 0000168B 88EB <1> mov bl, ch 1632 0000168D 88F7 <1> mov bh, dh 1632 0000168F 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001695 6601F1 <1> add cx, si 1632 00001698 6601EA <1> add dx, bp 1632 <1> 1632 0000169B 668907 <1> mov [edi], ax 1632 0000169E 4F <1> dec edi 1632 0000169F 4F <1> dec edi 1632 000016A0 88EB <1> mov bl, ch 1632 000016A2 88F7 <1> mov bh, dh 1632 000016A4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000016AA 6601F1 <1> add cx, si 1632 000016AD 6601EA <1> add dx, bp 1632 000016B0 88EB <1> mov bl, ch 1632 000016B2 88F7 <1> mov bh, dh 1632 000016B4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000016BA 6601F1 <1> add cx, si 1632 000016BD 6601EA <1> add dx, bp 1632 <1> 1632 000016C0 668907 <1> mov [edi], ax 1632 000016C3 4F <1> dec edi 1632 000016C4 4F <1> dec edi 1632 000016C5 88EB <1> mov bl, ch 1632 000016C7 88F7 <1> mov bh, dh 1632 000016C9 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000016CF 6601F1 <1> add cx, si 1632 000016D2 6601EA <1> add dx, bp 1632 000016D5 88EB <1> mov bl, ch 1632 000016D7 88F7 <1> mov bh, dh 1632 000016D9 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000016DF 6601F1 <1> add cx, si 1632 000016E2 6601EA <1> add dx, bp 1632 <1> 1632 000016E5 668907 <1> mov [edi], ax 1632 000016E8 4F <1> dec edi 1632 000016E9 4F <1> dec edi 1632 000016EA 88EB <1> mov bl, ch 1632 000016EC 88F7 <1> mov bh, dh 1632 000016EE 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000016F4 6601F1 <1> add cx, si 1632 000016F7 6601EA <1> add dx, bp 1632 000016FA 88EB <1> mov bl, ch 1632 000016FC 88F7 <1> mov bh, dh 1632 000016FE 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001704 6601F1 <1> add cx, si 1632 00001707 6601EA <1> add dx, bp 1632 <1> 1632 0000170A 668907 <1> mov [edi], ax 1632 0000170D 4F <1> dec edi 1632 0000170E 4F <1> dec edi 1632 0000170F 88EB <1> mov bl, ch 1632 00001711 88F7 <1> mov bh, dh 1632 00001713 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001719 6601F1 <1> add cx, si 1632 0000171C 6601EA <1> add dx, bp 1632 0000171F 88EB <1> mov bl, ch 1632 00001721 88F7 <1> mov bh, dh 1632 00001723 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001729 6601F1 <1> add cx, si 1632 0000172C 6601EA <1> add dx, bp 1632 <1> 1632 0000172F 668907 <1> mov [edi], ax 1632 00001732 4F <1> dec edi 1632 00001733 4F <1> dec edi 1632 00001734 88EB <1> mov bl, ch 1632 00001736 88F7 <1> mov bh, dh 1632 00001738 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000173E 6601F1 <1> add cx, si 1632 00001741 6601EA <1> add dx, bp 1632 00001744 88EB <1> mov bl, ch 1632 00001746 88F7 <1> mov bh, dh 1632 00001748 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000174E 6601F1 <1> add cx, si 1632 00001751 6601EA <1> add dx, bp 1632 <1> 1632 00001754 668907 <1> mov [edi], ax 1632 00001757 4F <1> dec edi 1632 00001758 4F <1> dec edi 1632 00001759 88EB <1> mov bl, ch 1632 0000175B 88F7 <1> mov bh, dh 1632 0000175D 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001763 6601F1 <1> add cx, si 1632 00001766 6601EA <1> add dx, bp 1632 00001769 88EB <1> mov bl, ch 1632 0000176B 88F7 <1> mov bh, dh 1632 0000176D 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001773 6601F1 <1> add cx, si 1632 00001776 6601EA <1> add dx, bp 1632 <1> 1632 00001779 668907 <1> mov [edi], ax 1632 0000177C 4F <1> dec edi 1632 0000177D 4F <1> dec edi 1632 0000177E 88EB <1> mov bl, ch 1632 00001780 88F7 <1> mov bh, dh 1632 00001782 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001788 6601F1 <1> add cx, si 1632 0000178B 6601EA <1> add dx, bp 1632 0000178E 88EB <1> mov bl, ch 1632 00001790 88F7 <1> mov bh, dh 1632 00001792 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001798 6601F1 <1> add cx, si 1632 0000179B 6601EA <1> add dx, bp 1632 <1> 1632 0000179E 668907 <1> mov [edi], ax 1632 000017A1 4F <1> dec edi 1632 000017A2 4F <1> dec edi 1632 000017A3 88EB <1> mov bl, ch 1632 000017A5 88F7 <1> mov bh, dh 1632 000017A7 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000017AD 6601F1 <1> add cx, si 1632 000017B0 6601EA <1> add dx, bp 1632 000017B3 88EB <1> mov bl, ch 1632 000017B5 88F7 <1> mov bh, dh 1632 000017B7 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000017BD 6601F1 <1> add cx, si 1632 000017C0 6601EA <1> add dx, bp 1632 <1> 1632 000017C3 668907 <1> mov [edi], ax 1632 000017C6 4F <1> dec edi 1632 000017C7 4F <1> dec edi 1632 000017C8 88EB <1> mov bl, ch 1632 000017CA 88F7 <1> mov bh, dh 1632 000017CC 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000017D2 6601F1 <1> add cx, si 1632 000017D5 6601EA <1> add dx, bp 1632 000017D8 88EB <1> mov bl, ch 1632 000017DA 88F7 <1> mov bh, dh 1632 000017DC 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000017E2 6601F1 <1> add cx, si 1632 000017E5 6601EA <1> add dx, bp 1632 <1> 1632 000017E8 668907 <1> mov [edi], ax 1632 000017EB 4F <1> dec edi 1632 000017EC 4F <1> dec edi 1632 000017ED 88EB <1> mov bl, ch 1632 000017EF 88F7 <1> mov bh, dh 1632 000017F1 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000017F7 6601F1 <1> add cx, si 1632 000017FA 6601EA <1> add dx, bp 1632 000017FD 88EB <1> mov bl, ch 1632 000017FF 88F7 <1> mov bh, dh 1632 00001801 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001807 6601F1 <1> add cx, si 1632 0000180A 6601EA <1> add dx, bp 1632 <1> 1632 0000180D 668907 <1> mov [edi], ax 1632 00001810 4F <1> dec edi 1632 00001811 4F <1> dec edi 1632 00001812 88EB <1> mov bl, ch 1632 00001814 88F7 <1> mov bh, dh 1632 00001816 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000181C 6601F1 <1> add cx, si 1632 0000181F 6601EA <1> add dx, bp 1632 00001822 88EB <1> mov bl, ch 1632 00001824 88F7 <1> mov bh, dh 1632 00001826 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000182C 6601F1 <1> add cx, si 1632 0000182F 6601EA <1> add dx, bp 1632 <1> 1632 00001832 668907 <1> mov [edi], ax 1632 00001835 4F <1> dec edi 1632 00001836 4F <1> dec edi 1632 00001837 88EB <1> mov bl, ch 1632 00001839 88F7 <1> mov bh, dh 1632 0000183B 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001841 6601F1 <1> add cx, si 1632 00001844 6601EA <1> add dx, bp 1632 00001847 88EB <1> mov bl, ch 1632 00001849 88F7 <1> mov bh, dh 1632 0000184B 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001851 6601F1 <1> add cx, si 1632 00001854 6601EA <1> add dx, bp 1632 <1> 1632 00001857 668907 <1> mov [edi], ax 1632 0000185A 4F <1> dec edi 1632 0000185B 4F <1> dec edi 1632 0000185C 88EB <1> mov bl, ch 1632 0000185E 88F7 <1> mov bh, dh 1632 00001860 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001866 6601F1 <1> add cx, si 1632 00001869 6601EA <1> add dx, bp 1632 0000186C 88EB <1> mov bl, ch 1632 0000186E 88F7 <1> mov bh, dh 1632 00001870 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001876 6601F1 <1> add cx, si 1632 00001879 6601EA <1> add dx, bp 1632 <1> 1632 0000187C 668907 <1> mov [edi], ax 1632 0000187F 4F <1> dec edi 1632 00001880 4F <1> dec edi 1632 00001881 88EB <1> mov bl, ch 1632 00001883 88F7 <1> mov bh, dh 1632 00001885 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000188B 6601F1 <1> add cx, si 1632 0000188E 6601EA <1> add dx, bp 1632 00001891 88EB <1> mov bl, ch 1632 00001893 88F7 <1> mov bh, dh 1632 00001895 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000189B 6601F1 <1> add cx, si 1632 0000189E 6601EA <1> add dx, bp 1632 <1> 1632 000018A1 668907 <1> mov [edi], ax 1632 000018A4 4F <1> dec edi 1632 000018A5 4F <1> dec edi 1632 000018A6 88EB <1> mov bl, ch 1632 000018A8 88F7 <1> mov bh, dh 1632 000018AA 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000018B0 6601F1 <1> add cx, si 1632 000018B3 6601EA <1> add dx, bp 1632 000018B6 88EB <1> mov bl, ch 1632 000018B8 88F7 <1> mov bh, dh 1632 000018BA 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000018C0 6601F1 <1> add cx, si 1632 000018C3 6601EA <1> add dx, bp 1632 <1> 1632 000018C6 668907 <1> mov [edi], ax 1632 000018C9 4F <1> dec edi 1632 000018CA 4F <1> dec edi 1632 000018CB 88EB <1> mov bl, ch 1632 000018CD 88F7 <1> mov bh, dh 1632 000018CF 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000018D5 6601F1 <1> add cx, si 1632 000018D8 6601EA <1> add dx, bp 1632 000018DB 88EB <1> mov bl, ch 1632 000018DD 88F7 <1> mov bh, dh 1632 000018DF 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 000018E5 6601F1 <1> add cx, si 1632 000018E8 6601EA <1> add dx, bp 1632 <1> 1632 000018EB 668907 <1> mov [edi], ax 1632 000018EE 4F <1> dec edi 1632 000018EF 4F <1> dec edi 1632 000018F0 88EB <1> mov bl, ch 1632 000018F2 88F7 <1> mov bh, dh 1632 000018F4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 000018FA 6601F1 <1> add cx, si 1632 000018FD 6601EA <1> add dx, bp 1632 00001900 88EB <1> mov bl, ch 1632 00001902 88F7 <1> mov bh, dh 1632 00001904 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000190A 6601F1 <1> add cx, si 1632 0000190D 6601EA <1> add dx, bp 1632 <1> 1632 00001910 668907 <1> mov [edi], ax 1632 00001913 4F <1> dec edi 1632 00001914 4F <1> dec edi 1632 00001915 88EB <1> mov bl, ch 1632 00001917 88F7 <1> mov bh, dh 1632 00001919 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000191F 6601F1 <1> add cx, si 1632 00001922 6601EA <1> add dx, bp 1632 00001925 88EB <1> mov bl, ch 1632 00001927 88F7 <1> mov bh, dh 1632 00001929 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000192F 6601F1 <1> add cx, si 1632 00001932 6601EA <1> add dx, bp 1632 <1> 1632 00001935 668907 <1> mov [edi], ax 1632 00001938 4F <1> dec edi 1632 00001939 4F <1> dec edi 1632 0000193A 88EB <1> mov bl, ch 1632 0000193C 88F7 <1> mov bh, dh 1632 0000193E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001944 6601F1 <1> add cx, si 1632 00001947 6601EA <1> add dx, bp 1632 0000194A 88EB <1> mov bl, ch 1632 0000194C 88F7 <1> mov bh, dh 1632 0000194E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001954 6601F1 <1> add cx, si 1632 00001957 6601EA <1> add dx, bp 1632 <1> 1632 0000195A 668907 <1> mov [edi], ax 1632 0000195D 4F <1> dec edi 1632 0000195E 4F <1> dec edi 1632 0000195F 88EB <1> mov bl, ch 1632 00001961 88F7 <1> mov bh, dh 1632 00001963 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 00001969 6601F1 <1> add cx, si 1632 0000196C 6601EA <1> add dx, bp 1632 0000196F 88EB <1> mov bl, ch 1632 00001971 88F7 <1> mov bh, dh 1632 00001973 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 00001979 6601F1 <1> add cx, si 1632 0000197C 6601EA <1> add dx, bp 1632 <1> 1632 0000197F 668907 <1> mov [edi], ax 1632 00001982 4F <1> dec edi 1632 00001983 4F <1> dec edi 1632 00001984 88EB <1> mov bl, ch 1632 00001986 88F7 <1> mov bh, dh 1632 00001988 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1632 0000198E 6601F1 <1> add cx, si 1632 00001991 6601EA <1> add dx, bp 1632 00001994 88EB <1> mov bl, ch 1632 00001996 88F7 <1> mov bh, dh 1632 00001998 8A83[00000200] <1> mov al, [mazeseg+ebx] 1632 0000199E 6601F1 <1> add cx, si 1632 000019A1 6601EA <1> add dx, bp 1632 <1> 1632 000019A4 668907 <1> mov [edi], ax 1632 000019A7 4F <1> dec edi 1632 000019A8 4F <1> dec edi 1633 000019A9 5A pop edx 1634 000019AA 59 pop ecx 1635 000019AB 5F pop edi 1636 1637 000019AC 47 inc edi 1638 000019AD 47 inc edi 1639 1640 ;cld 1641 %rep 80 1642 sub cx, si 1643 sub dx, bp 1644 mov bl, ch 1645 mov bh, dh 1646 mov al, [mazeseg+ebx] 1647 sub cx, si 1648 sub dx, bp 1649 mov bl, ch 1650 mov bh, dh 1651 mov ah, [mazeseg+ebx] 1652 stosw 1653 %endrep 1653 000019AE 6629F1 <1> sub cx, si 1653 000019B1 6629EA <1> sub dx, bp 1653 000019B4 88EB <1> mov bl, ch 1653 000019B6 88F7 <1> mov bh, dh 1653 000019B8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000019BE 6629F1 <1> sub cx, si 1653 000019C1 6629EA <1> sub dx, bp 1653 000019C4 88EB <1> mov bl, ch 1653 000019C6 88F7 <1> mov bh, dh 1653 000019C8 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000019CE 66AB <1> stosw 1653 000019D0 6629F1 <1> sub cx, si 1653 000019D3 6629EA <1> sub dx, bp 1653 000019D6 88EB <1> mov bl, ch 1653 000019D8 88F7 <1> mov bh, dh 1653 000019DA 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000019E0 6629F1 <1> sub cx, si 1653 000019E3 6629EA <1> sub dx, bp 1653 000019E6 88EB <1> mov bl, ch 1653 000019E8 88F7 <1> mov bh, dh 1653 000019EA 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000019F0 66AB <1> stosw 1653 000019F2 6629F1 <1> sub cx, si 1653 000019F5 6629EA <1> sub dx, bp 1653 000019F8 88EB <1> mov bl, ch 1653 000019FA 88F7 <1> mov bh, dh 1653 000019FC 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001A02 6629F1 <1> sub cx, si 1653 00001A05 6629EA <1> sub dx, bp 1653 00001A08 88EB <1> mov bl, ch 1653 00001A0A 88F7 <1> mov bh, dh 1653 00001A0C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001A12 66AB <1> stosw 1653 00001A14 6629F1 <1> sub cx, si 1653 00001A17 6629EA <1> sub dx, bp 1653 00001A1A 88EB <1> mov bl, ch 1653 00001A1C 88F7 <1> mov bh, dh 1653 00001A1E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001A24 6629F1 <1> sub cx, si 1653 00001A27 6629EA <1> sub dx, bp 1653 00001A2A 88EB <1> mov bl, ch 1653 00001A2C 88F7 <1> mov bh, dh 1653 00001A2E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001A34 66AB <1> stosw 1653 00001A36 6629F1 <1> sub cx, si 1653 00001A39 6629EA <1> sub dx, bp 1653 00001A3C 88EB <1> mov bl, ch 1653 00001A3E 88F7 <1> mov bh, dh 1653 00001A40 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001A46 6629F1 <1> sub cx, si 1653 00001A49 6629EA <1> sub dx, bp 1653 00001A4C 88EB <1> mov bl, ch 1653 00001A4E 88F7 <1> mov bh, dh 1653 00001A50 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001A56 66AB <1> stosw 1653 00001A58 6629F1 <1> sub cx, si 1653 00001A5B 6629EA <1> sub dx, bp 1653 00001A5E 88EB <1> mov bl, ch 1653 00001A60 88F7 <1> mov bh, dh 1653 00001A62 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001A68 6629F1 <1> sub cx, si 1653 00001A6B 6629EA <1> sub dx, bp 1653 00001A6E 88EB <1> mov bl, ch 1653 00001A70 88F7 <1> mov bh, dh 1653 00001A72 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001A78 66AB <1> stosw 1653 00001A7A 6629F1 <1> sub cx, si 1653 00001A7D 6629EA <1> sub dx, bp 1653 00001A80 88EB <1> mov bl, ch 1653 00001A82 88F7 <1> mov bh, dh 1653 00001A84 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001A8A 6629F1 <1> sub cx, si 1653 00001A8D 6629EA <1> sub dx, bp 1653 00001A90 88EB <1> mov bl, ch 1653 00001A92 88F7 <1> mov bh, dh 1653 00001A94 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001A9A 66AB <1> stosw 1653 00001A9C 6629F1 <1> sub cx, si 1653 00001A9F 6629EA <1> sub dx, bp 1653 00001AA2 88EB <1> mov bl, ch 1653 00001AA4 88F7 <1> mov bh, dh 1653 00001AA6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001AAC 6629F1 <1> sub cx, si 1653 00001AAF 6629EA <1> sub dx, bp 1653 00001AB2 88EB <1> mov bl, ch 1653 00001AB4 88F7 <1> mov bh, dh 1653 00001AB6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001ABC 66AB <1> stosw 1653 00001ABE 6629F1 <1> sub cx, si 1653 00001AC1 6629EA <1> sub dx, bp 1653 00001AC4 88EB <1> mov bl, ch 1653 00001AC6 88F7 <1> mov bh, dh 1653 00001AC8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001ACE 6629F1 <1> sub cx, si 1653 00001AD1 6629EA <1> sub dx, bp 1653 00001AD4 88EB <1> mov bl, ch 1653 00001AD6 88F7 <1> mov bh, dh 1653 00001AD8 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001ADE 66AB <1> stosw 1653 00001AE0 6629F1 <1> sub cx, si 1653 00001AE3 6629EA <1> sub dx, bp 1653 00001AE6 88EB <1> mov bl, ch 1653 00001AE8 88F7 <1> mov bh, dh 1653 00001AEA 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001AF0 6629F1 <1> sub cx, si 1653 00001AF3 6629EA <1> sub dx, bp 1653 00001AF6 88EB <1> mov bl, ch 1653 00001AF8 88F7 <1> mov bh, dh 1653 00001AFA 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001B00 66AB <1> stosw 1653 00001B02 6629F1 <1> sub cx, si 1653 00001B05 6629EA <1> sub dx, bp 1653 00001B08 88EB <1> mov bl, ch 1653 00001B0A 88F7 <1> mov bh, dh 1653 00001B0C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001B12 6629F1 <1> sub cx, si 1653 00001B15 6629EA <1> sub dx, bp 1653 00001B18 88EB <1> mov bl, ch 1653 00001B1A 88F7 <1> mov bh, dh 1653 00001B1C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001B22 66AB <1> stosw 1653 00001B24 6629F1 <1> sub cx, si 1653 00001B27 6629EA <1> sub dx, bp 1653 00001B2A 88EB <1> mov bl, ch 1653 00001B2C 88F7 <1> mov bh, dh 1653 00001B2E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001B34 6629F1 <1> sub cx, si 1653 00001B37 6629EA <1> sub dx, bp 1653 00001B3A 88EB <1> mov bl, ch 1653 00001B3C 88F7 <1> mov bh, dh 1653 00001B3E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001B44 66AB <1> stosw 1653 00001B46 6629F1 <1> sub cx, si 1653 00001B49 6629EA <1> sub dx, bp 1653 00001B4C 88EB <1> mov bl, ch 1653 00001B4E 88F7 <1> mov bh, dh 1653 00001B50 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001B56 6629F1 <1> sub cx, si 1653 00001B59 6629EA <1> sub dx, bp 1653 00001B5C 88EB <1> mov bl, ch 1653 00001B5E 88F7 <1> mov bh, dh 1653 00001B60 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001B66 66AB <1> stosw 1653 00001B68 6629F1 <1> sub cx, si 1653 00001B6B 6629EA <1> sub dx, bp 1653 00001B6E 88EB <1> mov bl, ch 1653 00001B70 88F7 <1> mov bh, dh 1653 00001B72 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001B78 6629F1 <1> sub cx, si 1653 00001B7B 6629EA <1> sub dx, bp 1653 00001B7E 88EB <1> mov bl, ch 1653 00001B80 88F7 <1> mov bh, dh 1653 00001B82 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001B88 66AB <1> stosw 1653 00001B8A 6629F1 <1> sub cx, si 1653 00001B8D 6629EA <1> sub dx, bp 1653 00001B90 88EB <1> mov bl, ch 1653 00001B92 88F7 <1> mov bh, dh 1653 00001B94 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001B9A 6629F1 <1> sub cx, si 1653 00001B9D 6629EA <1> sub dx, bp 1653 00001BA0 88EB <1> mov bl, ch 1653 00001BA2 88F7 <1> mov bh, dh 1653 00001BA4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001BAA 66AB <1> stosw 1653 00001BAC 6629F1 <1> sub cx, si 1653 00001BAF 6629EA <1> sub dx, bp 1653 00001BB2 88EB <1> mov bl, ch 1653 00001BB4 88F7 <1> mov bh, dh 1653 00001BB6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001BBC 6629F1 <1> sub cx, si 1653 00001BBF 6629EA <1> sub dx, bp 1653 00001BC2 88EB <1> mov bl, ch 1653 00001BC4 88F7 <1> mov bh, dh 1653 00001BC6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001BCC 66AB <1> stosw 1653 00001BCE 6629F1 <1> sub cx, si 1653 00001BD1 6629EA <1> sub dx, bp 1653 00001BD4 88EB <1> mov bl, ch 1653 00001BD6 88F7 <1> mov bh, dh 1653 00001BD8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001BDE 6629F1 <1> sub cx, si 1653 00001BE1 6629EA <1> sub dx, bp 1653 00001BE4 88EB <1> mov bl, ch 1653 00001BE6 88F7 <1> mov bh, dh 1653 00001BE8 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001BEE 66AB <1> stosw 1653 00001BF0 6629F1 <1> sub cx, si 1653 00001BF3 6629EA <1> sub dx, bp 1653 00001BF6 88EB <1> mov bl, ch 1653 00001BF8 88F7 <1> mov bh, dh 1653 00001BFA 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001C00 6629F1 <1> sub cx, si 1653 00001C03 6629EA <1> sub dx, bp 1653 00001C06 88EB <1> mov bl, ch 1653 00001C08 88F7 <1> mov bh, dh 1653 00001C0A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001C10 66AB <1> stosw 1653 00001C12 6629F1 <1> sub cx, si 1653 00001C15 6629EA <1> sub dx, bp 1653 00001C18 88EB <1> mov bl, ch 1653 00001C1A 88F7 <1> mov bh, dh 1653 00001C1C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001C22 6629F1 <1> sub cx, si 1653 00001C25 6629EA <1> sub dx, bp 1653 00001C28 88EB <1> mov bl, ch 1653 00001C2A 88F7 <1> mov bh, dh 1653 00001C2C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001C32 66AB <1> stosw 1653 00001C34 6629F1 <1> sub cx, si 1653 00001C37 6629EA <1> sub dx, bp 1653 00001C3A 88EB <1> mov bl, ch 1653 00001C3C 88F7 <1> mov bh, dh 1653 00001C3E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001C44 6629F1 <1> sub cx, si 1653 00001C47 6629EA <1> sub dx, bp 1653 00001C4A 88EB <1> mov bl, ch 1653 00001C4C 88F7 <1> mov bh, dh 1653 00001C4E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001C54 66AB <1> stosw 1653 00001C56 6629F1 <1> sub cx, si 1653 00001C59 6629EA <1> sub dx, bp 1653 00001C5C 88EB <1> mov bl, ch 1653 00001C5E 88F7 <1> mov bh, dh 1653 00001C60 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001C66 6629F1 <1> sub cx, si 1653 00001C69 6629EA <1> sub dx, bp 1653 00001C6C 88EB <1> mov bl, ch 1653 00001C6E 88F7 <1> mov bh, dh 1653 00001C70 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001C76 66AB <1> stosw 1653 00001C78 6629F1 <1> sub cx, si 1653 00001C7B 6629EA <1> sub dx, bp 1653 00001C7E 88EB <1> mov bl, ch 1653 00001C80 88F7 <1> mov bh, dh 1653 00001C82 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001C88 6629F1 <1> sub cx, si 1653 00001C8B 6629EA <1> sub dx, bp 1653 00001C8E 88EB <1> mov bl, ch 1653 00001C90 88F7 <1> mov bh, dh 1653 00001C92 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001C98 66AB <1> stosw 1653 00001C9A 6629F1 <1> sub cx, si 1653 00001C9D 6629EA <1> sub dx, bp 1653 00001CA0 88EB <1> mov bl, ch 1653 00001CA2 88F7 <1> mov bh, dh 1653 00001CA4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001CAA 6629F1 <1> sub cx, si 1653 00001CAD 6629EA <1> sub dx, bp 1653 00001CB0 88EB <1> mov bl, ch 1653 00001CB2 88F7 <1> mov bh, dh 1653 00001CB4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001CBA 66AB <1> stosw 1653 00001CBC 6629F1 <1> sub cx, si 1653 00001CBF 6629EA <1> sub dx, bp 1653 00001CC2 88EB <1> mov bl, ch 1653 00001CC4 88F7 <1> mov bh, dh 1653 00001CC6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001CCC 6629F1 <1> sub cx, si 1653 00001CCF 6629EA <1> sub dx, bp 1653 00001CD2 88EB <1> mov bl, ch 1653 00001CD4 88F7 <1> mov bh, dh 1653 00001CD6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001CDC 66AB <1> stosw 1653 00001CDE 6629F1 <1> sub cx, si 1653 00001CE1 6629EA <1> sub dx, bp 1653 00001CE4 88EB <1> mov bl, ch 1653 00001CE6 88F7 <1> mov bh, dh 1653 00001CE8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001CEE 6629F1 <1> sub cx, si 1653 00001CF1 6629EA <1> sub dx, bp 1653 00001CF4 88EB <1> mov bl, ch 1653 00001CF6 88F7 <1> mov bh, dh 1653 00001CF8 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001CFE 66AB <1> stosw 1653 00001D00 6629F1 <1> sub cx, si 1653 00001D03 6629EA <1> sub dx, bp 1653 00001D06 88EB <1> mov bl, ch 1653 00001D08 88F7 <1> mov bh, dh 1653 00001D0A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001D10 6629F1 <1> sub cx, si 1653 00001D13 6629EA <1> sub dx, bp 1653 00001D16 88EB <1> mov bl, ch 1653 00001D18 88F7 <1> mov bh, dh 1653 00001D1A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001D20 66AB <1> stosw 1653 00001D22 6629F1 <1> sub cx, si 1653 00001D25 6629EA <1> sub dx, bp 1653 00001D28 88EB <1> mov bl, ch 1653 00001D2A 88F7 <1> mov bh, dh 1653 00001D2C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001D32 6629F1 <1> sub cx, si 1653 00001D35 6629EA <1> sub dx, bp 1653 00001D38 88EB <1> mov bl, ch 1653 00001D3A 88F7 <1> mov bh, dh 1653 00001D3C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001D42 66AB <1> stosw 1653 00001D44 6629F1 <1> sub cx, si 1653 00001D47 6629EA <1> sub dx, bp 1653 00001D4A 88EB <1> mov bl, ch 1653 00001D4C 88F7 <1> mov bh, dh 1653 00001D4E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001D54 6629F1 <1> sub cx, si 1653 00001D57 6629EA <1> sub dx, bp 1653 00001D5A 88EB <1> mov bl, ch 1653 00001D5C 88F7 <1> mov bh, dh 1653 00001D5E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001D64 66AB <1> stosw 1653 00001D66 6629F1 <1> sub cx, si 1653 00001D69 6629EA <1> sub dx, bp 1653 00001D6C 88EB <1> mov bl, ch 1653 00001D6E 88F7 <1> mov bh, dh 1653 00001D70 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001D76 6629F1 <1> sub cx, si 1653 00001D79 6629EA <1> sub dx, bp 1653 00001D7C 88EB <1> mov bl, ch 1653 00001D7E 88F7 <1> mov bh, dh 1653 00001D80 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001D86 66AB <1> stosw 1653 00001D88 6629F1 <1> sub cx, si 1653 00001D8B 6629EA <1> sub dx, bp 1653 00001D8E 88EB <1> mov bl, ch 1653 00001D90 88F7 <1> mov bh, dh 1653 00001D92 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001D98 6629F1 <1> sub cx, si 1653 00001D9B 6629EA <1> sub dx, bp 1653 00001D9E 88EB <1> mov bl, ch 1653 00001DA0 88F7 <1> mov bh, dh 1653 00001DA2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001DA8 66AB <1> stosw 1653 00001DAA 6629F1 <1> sub cx, si 1653 00001DAD 6629EA <1> sub dx, bp 1653 00001DB0 88EB <1> mov bl, ch 1653 00001DB2 88F7 <1> mov bh, dh 1653 00001DB4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001DBA 6629F1 <1> sub cx, si 1653 00001DBD 6629EA <1> sub dx, bp 1653 00001DC0 88EB <1> mov bl, ch 1653 00001DC2 88F7 <1> mov bh, dh 1653 00001DC4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001DCA 66AB <1> stosw 1653 00001DCC 6629F1 <1> sub cx, si 1653 00001DCF 6629EA <1> sub dx, bp 1653 00001DD2 88EB <1> mov bl, ch 1653 00001DD4 88F7 <1> mov bh, dh 1653 00001DD6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001DDC 6629F1 <1> sub cx, si 1653 00001DDF 6629EA <1> sub dx, bp 1653 00001DE2 88EB <1> mov bl, ch 1653 00001DE4 88F7 <1> mov bh, dh 1653 00001DE6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001DEC 66AB <1> stosw 1653 00001DEE 6629F1 <1> sub cx, si 1653 00001DF1 6629EA <1> sub dx, bp 1653 00001DF4 88EB <1> mov bl, ch 1653 00001DF6 88F7 <1> mov bh, dh 1653 00001DF8 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001DFE 6629F1 <1> sub cx, si 1653 00001E01 6629EA <1> sub dx, bp 1653 00001E04 88EB <1> mov bl, ch 1653 00001E06 88F7 <1> mov bh, dh 1653 00001E08 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001E0E 66AB <1> stosw 1653 00001E10 6629F1 <1> sub cx, si 1653 00001E13 6629EA <1> sub dx, bp 1653 00001E16 88EB <1> mov bl, ch 1653 00001E18 88F7 <1> mov bh, dh 1653 00001E1A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001E20 6629F1 <1> sub cx, si 1653 00001E23 6629EA <1> sub dx, bp 1653 00001E26 88EB <1> mov bl, ch 1653 00001E28 88F7 <1> mov bh, dh 1653 00001E2A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001E30 66AB <1> stosw 1653 00001E32 6629F1 <1> sub cx, si 1653 00001E35 6629EA <1> sub dx, bp 1653 00001E38 88EB <1> mov bl, ch 1653 00001E3A 88F7 <1> mov bh, dh 1653 00001E3C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001E42 6629F1 <1> sub cx, si 1653 00001E45 6629EA <1> sub dx, bp 1653 00001E48 88EB <1> mov bl, ch 1653 00001E4A 88F7 <1> mov bh, dh 1653 00001E4C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001E52 66AB <1> stosw 1653 00001E54 6629F1 <1> sub cx, si 1653 00001E57 6629EA <1> sub dx, bp 1653 00001E5A 88EB <1> mov bl, ch 1653 00001E5C 88F7 <1> mov bh, dh 1653 00001E5E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001E64 6629F1 <1> sub cx, si 1653 00001E67 6629EA <1> sub dx, bp 1653 00001E6A 88EB <1> mov bl, ch 1653 00001E6C 88F7 <1> mov bh, dh 1653 00001E6E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001E74 66AB <1> stosw 1653 00001E76 6629F1 <1> sub cx, si 1653 00001E79 6629EA <1> sub dx, bp 1653 00001E7C 88EB <1> mov bl, ch 1653 00001E7E 88F7 <1> mov bh, dh 1653 00001E80 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001E86 6629F1 <1> sub cx, si 1653 00001E89 6629EA <1> sub dx, bp 1653 00001E8C 88EB <1> mov bl, ch 1653 00001E8E 88F7 <1> mov bh, dh 1653 00001E90 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001E96 66AB <1> stosw 1653 00001E98 6629F1 <1> sub cx, si 1653 00001E9B 6629EA <1> sub dx, bp 1653 00001E9E 88EB <1> mov bl, ch 1653 00001EA0 88F7 <1> mov bh, dh 1653 00001EA2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001EA8 6629F1 <1> sub cx, si 1653 00001EAB 6629EA <1> sub dx, bp 1653 00001EAE 88EB <1> mov bl, ch 1653 00001EB0 88F7 <1> mov bh, dh 1653 00001EB2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001EB8 66AB <1> stosw 1653 00001EBA 6629F1 <1> sub cx, si 1653 00001EBD 6629EA <1> sub dx, bp 1653 00001EC0 88EB <1> mov bl, ch 1653 00001EC2 88F7 <1> mov bh, dh 1653 00001EC4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001ECA 6629F1 <1> sub cx, si 1653 00001ECD 6629EA <1> sub dx, bp 1653 00001ED0 88EB <1> mov bl, ch 1653 00001ED2 88F7 <1> mov bh, dh 1653 00001ED4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001EDA 66AB <1> stosw 1653 00001EDC 6629F1 <1> sub cx, si 1653 00001EDF 6629EA <1> sub dx, bp 1653 00001EE2 88EB <1> mov bl, ch 1653 00001EE4 88F7 <1> mov bh, dh 1653 00001EE6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001EEC 6629F1 <1> sub cx, si 1653 00001EEF 6629EA <1> sub dx, bp 1653 00001EF2 88EB <1> mov bl, ch 1653 00001EF4 88F7 <1> mov bh, dh 1653 00001EF6 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001EFC 66AB <1> stosw 1653 00001EFE 6629F1 <1> sub cx, si 1653 00001F01 6629EA <1> sub dx, bp 1653 00001F04 88EB <1> mov bl, ch 1653 00001F06 88F7 <1> mov bh, dh 1653 00001F08 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001F0E 6629F1 <1> sub cx, si 1653 00001F11 6629EA <1> sub dx, bp 1653 00001F14 88EB <1> mov bl, ch 1653 00001F16 88F7 <1> mov bh, dh 1653 00001F18 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001F1E 66AB <1> stosw 1653 00001F20 6629F1 <1> sub cx, si 1653 00001F23 6629EA <1> sub dx, bp 1653 00001F26 88EB <1> mov bl, ch 1653 00001F28 88F7 <1> mov bh, dh 1653 00001F2A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001F30 6629F1 <1> sub cx, si 1653 00001F33 6629EA <1> sub dx, bp 1653 00001F36 88EB <1> mov bl, ch 1653 00001F38 88F7 <1> mov bh, dh 1653 00001F3A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001F40 66AB <1> stosw 1653 00001F42 6629F1 <1> sub cx, si 1653 00001F45 6629EA <1> sub dx, bp 1653 00001F48 88EB <1> mov bl, ch 1653 00001F4A 88F7 <1> mov bh, dh 1653 00001F4C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001F52 6629F1 <1> sub cx, si 1653 00001F55 6629EA <1> sub dx, bp 1653 00001F58 88EB <1> mov bl, ch 1653 00001F5A 88F7 <1> mov bh, dh 1653 00001F5C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001F62 66AB <1> stosw 1653 00001F64 6629F1 <1> sub cx, si 1653 00001F67 6629EA <1> sub dx, bp 1653 00001F6A 88EB <1> mov bl, ch 1653 00001F6C 88F7 <1> mov bh, dh 1653 00001F6E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001F74 6629F1 <1> sub cx, si 1653 00001F77 6629EA <1> sub dx, bp 1653 00001F7A 88EB <1> mov bl, ch 1653 00001F7C 88F7 <1> mov bh, dh 1653 00001F7E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001F84 66AB <1> stosw 1653 00001F86 6629F1 <1> sub cx, si 1653 00001F89 6629EA <1> sub dx, bp 1653 00001F8C 88EB <1> mov bl, ch 1653 00001F8E 88F7 <1> mov bh, dh 1653 00001F90 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001F96 6629F1 <1> sub cx, si 1653 00001F99 6629EA <1> sub dx, bp 1653 00001F9C 88EB <1> mov bl, ch 1653 00001F9E 88F7 <1> mov bh, dh 1653 00001FA0 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001FA6 66AB <1> stosw 1653 00001FA8 6629F1 <1> sub cx, si 1653 00001FAB 6629EA <1> sub dx, bp 1653 00001FAE 88EB <1> mov bl, ch 1653 00001FB0 88F7 <1> mov bh, dh 1653 00001FB2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001FB8 6629F1 <1> sub cx, si 1653 00001FBB 6629EA <1> sub dx, bp 1653 00001FBE 88EB <1> mov bl, ch 1653 00001FC0 88F7 <1> mov bh, dh 1653 00001FC2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001FC8 66AB <1> stosw 1653 00001FCA 6629F1 <1> sub cx, si 1653 00001FCD 6629EA <1> sub dx, bp 1653 00001FD0 88EB <1> mov bl, ch 1653 00001FD2 88F7 <1> mov bh, dh 1653 00001FD4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001FDA 6629F1 <1> sub cx, si 1653 00001FDD 6629EA <1> sub dx, bp 1653 00001FE0 88EB <1> mov bl, ch 1653 00001FE2 88F7 <1> mov bh, dh 1653 00001FE4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00001FEA 66AB <1> stosw 1653 00001FEC 6629F1 <1> sub cx, si 1653 00001FEF 6629EA <1> sub dx, bp 1653 00001FF2 88EB <1> mov bl, ch 1653 00001FF4 88F7 <1> mov bh, dh 1653 00001FF6 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00001FFC 6629F1 <1> sub cx, si 1653 00001FFF 6629EA <1> sub dx, bp 1653 00002002 88EB <1> mov bl, ch 1653 00002004 88F7 <1> mov bh, dh 1653 00002006 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000200C 66AB <1> stosw 1653 0000200E 6629F1 <1> sub cx, si 1653 00002011 6629EA <1> sub dx, bp 1653 00002014 88EB <1> mov bl, ch 1653 00002016 88F7 <1> mov bh, dh 1653 00002018 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000201E 6629F1 <1> sub cx, si 1653 00002021 6629EA <1> sub dx, bp 1653 00002024 88EB <1> mov bl, ch 1653 00002026 88F7 <1> mov bh, dh 1653 00002028 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000202E 66AB <1> stosw 1653 00002030 6629F1 <1> sub cx, si 1653 00002033 6629EA <1> sub dx, bp 1653 00002036 88EB <1> mov bl, ch 1653 00002038 88F7 <1> mov bh, dh 1653 0000203A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002040 6629F1 <1> sub cx, si 1653 00002043 6629EA <1> sub dx, bp 1653 00002046 88EB <1> mov bl, ch 1653 00002048 88F7 <1> mov bh, dh 1653 0000204A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002050 66AB <1> stosw 1653 00002052 6629F1 <1> sub cx, si 1653 00002055 6629EA <1> sub dx, bp 1653 00002058 88EB <1> mov bl, ch 1653 0000205A 88F7 <1> mov bh, dh 1653 0000205C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002062 6629F1 <1> sub cx, si 1653 00002065 6629EA <1> sub dx, bp 1653 00002068 88EB <1> mov bl, ch 1653 0000206A 88F7 <1> mov bh, dh 1653 0000206C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002072 66AB <1> stosw 1653 00002074 6629F1 <1> sub cx, si 1653 00002077 6629EA <1> sub dx, bp 1653 0000207A 88EB <1> mov bl, ch 1653 0000207C 88F7 <1> mov bh, dh 1653 0000207E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002084 6629F1 <1> sub cx, si 1653 00002087 6629EA <1> sub dx, bp 1653 0000208A 88EB <1> mov bl, ch 1653 0000208C 88F7 <1> mov bh, dh 1653 0000208E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002094 66AB <1> stosw 1653 00002096 6629F1 <1> sub cx, si 1653 00002099 6629EA <1> sub dx, bp 1653 0000209C 88EB <1> mov bl, ch 1653 0000209E 88F7 <1> mov bh, dh 1653 000020A0 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000020A6 6629F1 <1> sub cx, si 1653 000020A9 6629EA <1> sub dx, bp 1653 000020AC 88EB <1> mov bl, ch 1653 000020AE 88F7 <1> mov bh, dh 1653 000020B0 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000020B6 66AB <1> stosw 1653 000020B8 6629F1 <1> sub cx, si 1653 000020BB 6629EA <1> sub dx, bp 1653 000020BE 88EB <1> mov bl, ch 1653 000020C0 88F7 <1> mov bh, dh 1653 000020C2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000020C8 6629F1 <1> sub cx, si 1653 000020CB 6629EA <1> sub dx, bp 1653 000020CE 88EB <1> mov bl, ch 1653 000020D0 88F7 <1> mov bh, dh 1653 000020D2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000020D8 66AB <1> stosw 1653 000020DA 6629F1 <1> sub cx, si 1653 000020DD 6629EA <1> sub dx, bp 1653 000020E0 88EB <1> mov bl, ch 1653 000020E2 88F7 <1> mov bh, dh 1653 000020E4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000020EA 6629F1 <1> sub cx, si 1653 000020ED 6629EA <1> sub dx, bp 1653 000020F0 88EB <1> mov bl, ch 1653 000020F2 88F7 <1> mov bh, dh 1653 000020F4 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000020FA 66AB <1> stosw 1653 000020FC 6629F1 <1> sub cx, si 1653 000020FF 6629EA <1> sub dx, bp 1653 00002102 88EB <1> mov bl, ch 1653 00002104 88F7 <1> mov bh, dh 1653 00002106 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000210C 6629F1 <1> sub cx, si 1653 0000210F 6629EA <1> sub dx, bp 1653 00002112 88EB <1> mov bl, ch 1653 00002114 88F7 <1> mov bh, dh 1653 00002116 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000211C 66AB <1> stosw 1653 0000211E 6629F1 <1> sub cx, si 1653 00002121 6629EA <1> sub dx, bp 1653 00002124 88EB <1> mov bl, ch 1653 00002126 88F7 <1> mov bh, dh 1653 00002128 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000212E 6629F1 <1> sub cx, si 1653 00002131 6629EA <1> sub dx, bp 1653 00002134 88EB <1> mov bl, ch 1653 00002136 88F7 <1> mov bh, dh 1653 00002138 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000213E 66AB <1> stosw 1653 00002140 6629F1 <1> sub cx, si 1653 00002143 6629EA <1> sub dx, bp 1653 00002146 88EB <1> mov bl, ch 1653 00002148 88F7 <1> mov bh, dh 1653 0000214A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002150 6629F1 <1> sub cx, si 1653 00002153 6629EA <1> sub dx, bp 1653 00002156 88EB <1> mov bl, ch 1653 00002158 88F7 <1> mov bh, dh 1653 0000215A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002160 66AB <1> stosw 1653 00002162 6629F1 <1> sub cx, si 1653 00002165 6629EA <1> sub dx, bp 1653 00002168 88EB <1> mov bl, ch 1653 0000216A 88F7 <1> mov bh, dh 1653 0000216C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002172 6629F1 <1> sub cx, si 1653 00002175 6629EA <1> sub dx, bp 1653 00002178 88EB <1> mov bl, ch 1653 0000217A 88F7 <1> mov bh, dh 1653 0000217C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002182 66AB <1> stosw 1653 00002184 6629F1 <1> sub cx, si 1653 00002187 6629EA <1> sub dx, bp 1653 0000218A 88EB <1> mov bl, ch 1653 0000218C 88F7 <1> mov bh, dh 1653 0000218E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002194 6629F1 <1> sub cx, si 1653 00002197 6629EA <1> sub dx, bp 1653 0000219A 88EB <1> mov bl, ch 1653 0000219C 88F7 <1> mov bh, dh 1653 0000219E 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000021A4 66AB <1> stosw 1653 000021A6 6629F1 <1> sub cx, si 1653 000021A9 6629EA <1> sub dx, bp 1653 000021AC 88EB <1> mov bl, ch 1653 000021AE 88F7 <1> mov bh, dh 1653 000021B0 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000021B6 6629F1 <1> sub cx, si 1653 000021B9 6629EA <1> sub dx, bp 1653 000021BC 88EB <1> mov bl, ch 1653 000021BE 88F7 <1> mov bh, dh 1653 000021C0 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000021C6 66AB <1> stosw 1653 000021C8 6629F1 <1> sub cx, si 1653 000021CB 6629EA <1> sub dx, bp 1653 000021CE 88EB <1> mov bl, ch 1653 000021D0 88F7 <1> mov bh, dh 1653 000021D2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000021D8 6629F1 <1> sub cx, si 1653 000021DB 6629EA <1> sub dx, bp 1653 000021DE 88EB <1> mov bl, ch 1653 000021E0 88F7 <1> mov bh, dh 1653 000021E2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000021E8 66AB <1> stosw 1653 000021EA 6629F1 <1> sub cx, si 1653 000021ED 6629EA <1> sub dx, bp 1653 000021F0 88EB <1> mov bl, ch 1653 000021F2 88F7 <1> mov bh, dh 1653 000021F4 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000021FA 6629F1 <1> sub cx, si 1653 000021FD 6629EA <1> sub dx, bp 1653 00002200 88EB <1> mov bl, ch 1653 00002202 88F7 <1> mov bh, dh 1653 00002204 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000220A 66AB <1> stosw 1653 0000220C 6629F1 <1> sub cx, si 1653 0000220F 6629EA <1> sub dx, bp 1653 00002212 88EB <1> mov bl, ch 1653 00002214 88F7 <1> mov bh, dh 1653 00002216 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000221C 6629F1 <1> sub cx, si 1653 0000221F 6629EA <1> sub dx, bp 1653 00002222 88EB <1> mov bl, ch 1653 00002224 88F7 <1> mov bh, dh 1653 00002226 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000222C 66AB <1> stosw 1653 0000222E 6629F1 <1> sub cx, si 1653 00002231 6629EA <1> sub dx, bp 1653 00002234 88EB <1> mov bl, ch 1653 00002236 88F7 <1> mov bh, dh 1653 00002238 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000223E 6629F1 <1> sub cx, si 1653 00002241 6629EA <1> sub dx, bp 1653 00002244 88EB <1> mov bl, ch 1653 00002246 88F7 <1> mov bh, dh 1653 00002248 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000224E 66AB <1> stosw 1653 00002250 6629F1 <1> sub cx, si 1653 00002253 6629EA <1> sub dx, bp 1653 00002256 88EB <1> mov bl, ch 1653 00002258 88F7 <1> mov bh, dh 1653 0000225A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002260 6629F1 <1> sub cx, si 1653 00002263 6629EA <1> sub dx, bp 1653 00002266 88EB <1> mov bl, ch 1653 00002268 88F7 <1> mov bh, dh 1653 0000226A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002270 66AB <1> stosw 1653 00002272 6629F1 <1> sub cx, si 1653 00002275 6629EA <1> sub dx, bp 1653 00002278 88EB <1> mov bl, ch 1653 0000227A 88F7 <1> mov bh, dh 1653 0000227C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002282 6629F1 <1> sub cx, si 1653 00002285 6629EA <1> sub dx, bp 1653 00002288 88EB <1> mov bl, ch 1653 0000228A 88F7 <1> mov bh, dh 1653 0000228C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002292 66AB <1> stosw 1653 00002294 6629F1 <1> sub cx, si 1653 00002297 6629EA <1> sub dx, bp 1653 0000229A 88EB <1> mov bl, ch 1653 0000229C 88F7 <1> mov bh, dh 1653 0000229E 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000022A4 6629F1 <1> sub cx, si 1653 000022A7 6629EA <1> sub dx, bp 1653 000022AA 88EB <1> mov bl, ch 1653 000022AC 88F7 <1> mov bh, dh 1653 000022AE 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000022B4 66AB <1> stosw 1653 000022B6 6629F1 <1> sub cx, si 1653 000022B9 6629EA <1> sub dx, bp 1653 000022BC 88EB <1> mov bl, ch 1653 000022BE 88F7 <1> mov bh, dh 1653 000022C0 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000022C6 6629F1 <1> sub cx, si 1653 000022C9 6629EA <1> sub dx, bp 1653 000022CC 88EB <1> mov bl, ch 1653 000022CE 88F7 <1> mov bh, dh 1653 000022D0 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000022D6 66AB <1> stosw 1653 000022D8 6629F1 <1> sub cx, si 1653 000022DB 6629EA <1> sub dx, bp 1653 000022DE 88EB <1> mov bl, ch 1653 000022E0 88F7 <1> mov bh, dh 1653 000022E2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000022E8 6629F1 <1> sub cx, si 1653 000022EB 6629EA <1> sub dx, bp 1653 000022EE 88EB <1> mov bl, ch 1653 000022F0 88F7 <1> mov bh, dh 1653 000022F2 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000022F8 66AB <1> stosw 1653 000022FA 6629F1 <1> sub cx, si 1653 000022FD 6629EA <1> sub dx, bp 1653 00002300 88EB <1> mov bl, ch 1653 00002302 88F7 <1> mov bh, dh 1653 00002304 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000230A 6629F1 <1> sub cx, si 1653 0000230D 6629EA <1> sub dx, bp 1653 00002310 88EB <1> mov bl, ch 1653 00002312 88F7 <1> mov bh, dh 1653 00002314 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000231A 66AB <1> stosw 1653 0000231C 6629F1 <1> sub cx, si 1653 0000231F 6629EA <1> sub dx, bp 1653 00002322 88EB <1> mov bl, ch 1653 00002324 88F7 <1> mov bh, dh 1653 00002326 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000232C 6629F1 <1> sub cx, si 1653 0000232F 6629EA <1> sub dx, bp 1653 00002332 88EB <1> mov bl, ch 1653 00002334 88F7 <1> mov bh, dh 1653 00002336 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000233C 66AB <1> stosw 1653 0000233E 6629F1 <1> sub cx, si 1653 00002341 6629EA <1> sub dx, bp 1653 00002344 88EB <1> mov bl, ch 1653 00002346 88F7 <1> mov bh, dh 1653 00002348 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000234E 6629F1 <1> sub cx, si 1653 00002351 6629EA <1> sub dx, bp 1653 00002354 88EB <1> mov bl, ch 1653 00002356 88F7 <1> mov bh, dh 1653 00002358 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000235E 66AB <1> stosw 1653 00002360 6629F1 <1> sub cx, si 1653 00002363 6629EA <1> sub dx, bp 1653 00002366 88EB <1> mov bl, ch 1653 00002368 88F7 <1> mov bh, dh 1653 0000236A 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002370 6629F1 <1> sub cx, si 1653 00002373 6629EA <1> sub dx, bp 1653 00002376 88EB <1> mov bl, ch 1653 00002378 88F7 <1> mov bh, dh 1653 0000237A 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002380 66AB <1> stosw 1653 00002382 6629F1 <1> sub cx, si 1653 00002385 6629EA <1> sub dx, bp 1653 00002388 88EB <1> mov bl, ch 1653 0000238A 88F7 <1> mov bh, dh 1653 0000238C 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 00002392 6629F1 <1> sub cx, si 1653 00002395 6629EA <1> sub dx, bp 1653 00002398 88EB <1> mov bl, ch 1653 0000239A 88F7 <1> mov bh, dh 1653 0000239C 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000023A2 66AB <1> stosw 1653 000023A4 6629F1 <1> sub cx, si 1653 000023A7 6629EA <1> sub dx, bp 1653 000023AA 88EB <1> mov bl, ch 1653 000023AC 88F7 <1> mov bh, dh 1653 000023AE 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000023B4 6629F1 <1> sub cx, si 1653 000023B7 6629EA <1> sub dx, bp 1653 000023BA 88EB <1> mov bl, ch 1653 000023BC 88F7 <1> mov bh, dh 1653 000023BE 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000023C4 66AB <1> stosw 1653 000023C6 6629F1 <1> sub cx, si 1653 000023C9 6629EA <1> sub dx, bp 1653 000023CC 88EB <1> mov bl, ch 1653 000023CE 88F7 <1> mov bh, dh 1653 000023D0 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000023D6 6629F1 <1> sub cx, si 1653 000023D9 6629EA <1> sub dx, bp 1653 000023DC 88EB <1> mov bl, ch 1653 000023DE 88F7 <1> mov bh, dh 1653 000023E0 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 000023E6 66AB <1> stosw 1653 000023E8 6629F1 <1> sub cx, si 1653 000023EB 6629EA <1> sub dx, bp 1653 000023EE 88EB <1> mov bl, ch 1653 000023F0 88F7 <1> mov bh, dh 1653 000023F2 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 000023F8 6629F1 <1> sub cx, si 1653 000023FB 6629EA <1> sub dx, bp 1653 000023FE 88EB <1> mov bl, ch 1653 00002400 88F7 <1> mov bh, dh 1653 00002402 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 00002408 66AB <1> stosw 1653 0000240A 6629F1 <1> sub cx, si 1653 0000240D 6629EA <1> sub dx, bp 1653 00002410 88EB <1> mov bl, ch 1653 00002412 88F7 <1> mov bh, dh 1653 00002414 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000241A 6629F1 <1> sub cx, si 1653 0000241D 6629EA <1> sub dx, bp 1653 00002420 88EB <1> mov bl, ch 1653 00002422 88F7 <1> mov bh, dh 1653 00002424 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000242A 66AB <1> stosw 1653 0000242C 6629F1 <1> sub cx, si 1653 0000242F 6629EA <1> sub dx, bp 1653 00002432 88EB <1> mov bl, ch 1653 00002434 88F7 <1> mov bh, dh 1653 00002436 8A83[00000200] <1> mov al, [mazeseg+ebx] 1653 0000243C 6629F1 <1> sub cx, si 1653 0000243F 6629EA <1> sub dx, bp 1653 00002442 88EB <1> mov bl, ch 1653 00002444 88F7 <1> mov bh, dh 1653 00002446 8AA3[00000200] <1> mov ah, [mazeseg+ebx] 1653 0000244C 66AB <1> stosw 1654 1655 ;pop ds 1656 1657 0000244E 81C79E000000 add edi, 160-2 1658 1659 00002454 5B pop ebx 1660 1661 00002455 43 inc ebx 1662 00002456 43 inc ebx 1663 ;cmp bx, 200 1664 00002457 80FBC8 cmp bl, 200 1665 0000245A 0F8261E9FFFF jb @@draw 1666 1667 00002460 BF[C07B0100] mov edi, virtscr+32000-320 1668 ;mov ecx, 320 ; ? 1669 @@3d: 1670 00002465 57 push edi 1671 _d1: 1672 00002466 B20A mov dl, 10 1673 ;mov bl, es:[di] 1674 00002468 8A1F mov bl, [edi] 1675 0000246A FECB dec bl 1676 _d2: 1677 0000246C 81C740010000 add edi, 320 1678 00002472 81FF[00FA0100] cmp edi, virtscr+64000 1679 00002478 7713 ja short @@endrow 1680 ;mov al, es:[di] 1681 0000247A 8A07 mov al, [edi] 1682 0000247C 08C0 or al, al 1683 0000247E 75E6 jnz short _d1 1684 1685 00002480 08D2 or dl, dl 1686 00002482 74E8 jz short _d2 1687 00002484 FECA dec dl 1688 1689 ;mov es:[di], bl 1690 00002486 881F mov [edi], bl 1691 00002488 80EB02 sub bl, 2 1692 1693 0000248B EBDF jmp short _d2 1694 @@endrow: 1695 0000248D 5F pop edi 1696 0000248E 47 inc edi 1697 0000248F 81FF[407E0100] cmp edi, virtscr+32320 1698 00002495 72CE jb short @@3d 1699 1700 00002497 C3 retn 1701 1702 ;------------------------------------------------------------------------ 1703 ; 1704 ;------------------------------------------------------------------------ 1705 genmaze: 1706 ;mov edi, mazeseg+32768 1707 00002498 BF00800000 mov edi, 32768 1708 0000249D B900000100 mov ecx, 65536 1709 @@pixloop: 1710 000024A2 89F8 mov eax, edi 1711 @@randseed: 1712 ;imul ax, 01234h 1713 000024A4 660FAF05[422C0000] imul ax, word [c_randseed] ; 01 1714 000024AC 6601F8 add ax, di 1715 ;mov word [cs:@@randseed+2], ax 1716 000024AF 66A3[422C0000] mov [c_randseed], ax 1717 1718 000024B5 66C1F80C sar ax, 0Ch 1719 000024B9 6640 inc ax 1720 1721 000024BB BD[00000200] mov ebp, mazeseg 1722 000024C0 6689FD mov bp, di 1723 000024C3 6681ED0001 sub bp, 256 1724 ;mov ah, [edi-256] 1725 000024C8 8A6500 mov ah, [ebp] 1726 000024CB 664D dec bp 1727 ;add ah, [edi-257] 1728 000024CD 026500 add ah, [ebp] 1729 000024D0 D0DC rcr ah, 1 1730 000024D2 00E0 add al, ah 1731 000024D4 247F and al, 127 1732 000024D6 0480 add al, 128 1733 ;;stosb 1734 ;mov [edi], al 1735 000024D8 8887[00000200] mov [mazeseg+edi], al 1736 000024DE 6647 inc di 1737 000024E0 E2C0 loop @@pixloop 1738 1739 ;std 1740 000024E2 BF[FFFF0200] mov edi, mazeseg+65535 1741 000024E7 BE[FF7F0200] mov esi, mazeseg+32767 1742 000024EC B280 mov dl, 128 1743 @@row2: 1744 ;mov ecx, 256 1745 000024EE 66B90001 mov cx, 256 1746 ;rep movsb 1747 @@row2_loop1: 1748 000024F2 8A06 mov al, [esi] 1749 000024F4 664E dec si 1750 000024F6 8807 mov [edi], al 1751 000024F8 664F dec di 1752 000024FA E2F6 loop @@row2_loop1 1753 1754 000024FC 6681C60001 add si, 256 1755 00002501 66B90001 mov cx, 256 1756 ;rep movsb 1757 @@row2_loop2: 1758 00002505 8A06 mov al, [esi] 1759 00002507 664E dec si 1760 00002509 8807 mov [edi], al 1761 0000250B 664F dec di 1762 0000250D E2F6 loop @@row2_loop2 1763 1764 0000250F FECA dec dl 1765 00002511 75DB jnz short @@row2 1766 1767 00002513 BA00FF0000 mov edx, 65536-256 1768 00002518 BB00010000 mov ebx, 256 1769 0000251D BE[00000200] mov esi, mazeseg 1770 00002522 89F5 mov ebp, esi ; mazeseg 1771 00002524 E870020000 call alias 1772 1773 ;cld 1774 00002529 BE[362A0000] mov esi, mazedat 1775 0000252E BF[00000200] mov edi, mazeseg 1776 00002533 B210 mov dl, 16 1777 @@gen: 1778 00002535 66AD lodsw 1779 00002537 6689C3 mov bx, ax 1780 0000253A 31C0 xor eax, eax 1781 1782 0000253C BD10000000 mov ebp, 16 1783 @@line: 1784 00002541 66D1D3 rcl bx, 1 1785 00002544 7318 jnc short @@notblack 1786 00002546 57 push edi 1787 1788 00002547 B610 mov dh, 16 1789 @@row: 1790 ;mov cx, 8 1791 00002549 B108 mov cl, 8 1792 ;rep stosw 1793 @@row1: 1794 0000254B 668907 mov [edi], ax 1795 0000254E 6647 inc di 1796 00002550 6647 inc di 1797 00002552 E2F7 loop @@row1 1798 1799 00002554 6681C7F000 add di, 256-16 1800 00002559 FECE dec dh 1801 0000255B 75EC jnz short @@row 1802 1803 0000255D 5F pop edi 1804 @@notblack: 1805 0000255E 6683C710 add di, 16 1806 00002562 4D dec ebp 1807 00002563 75DC jnz short @@line 1808 1809 00002565 6681C7000F add di, 256*15 1810 0000256A FECA dec dl 1811 0000256C 75C7 jnz short @@gen 1812 1813 1814 0000256E 31DB xor ebx, ebx 1815 ;mov cx, 30 1816 00002570 B11E mov cl, 30 1817 @@gendist: 1818 00002572 66B80032 mov ax, 256*50 1819 ;cwd 1820 00002576 6631D2 xor dx, dx 1821 00002579 66F7F9 idiv cx 1822 0000257C 668983[04320000] mov [dist+ebx], ax 1823 ;inc cx 1824 ;inc ebx 1825 ;inc ebx 1826 00002583 FEC1 inc cl 1827 00002585 FEC3 inc bl 1828 00002587 FEC3 inc bl 1829 ;cmp bx, 200 1830 00002589 80FBC8 cmp bl, 200 1831 0000258C 75E4 jne short @@gendist 1832 1833 0000258E C3 retn 1834 1835 ;------------------------------------------------------------------------ 1836 ; 1837 ;------------------------------------------------------------------------ 1838 genclouds: 1839 0000258F BF[002F0000] mov edi, palette 1840 1841 ;mov ecx, 768 1842 00002594 31C0 xor eax, eax 1843 ;rep stosb 1844 00002596 B9C0000000 mov ecx, 768/4 1845 0000259B F3AB rep stosd 1846 1847 0000259D E8F9030000 call setpalette 1848 1849 ;load es, 0A000h 1850 1851 ;mov ecx, 100 1852 000025A2 B164 mov cl, 100 1853 000025A4 66C705[A2330000]00- mov word [linexstart], 0 1853 000025AC 00 1854 000025AD 66C705[A4330000]7F- mov word [linexend], 639 1854 000025B5 02 1855 @@backloop: 1856 000025B6 66890D[A0330000] mov [liney], cx 1857 000025BD 89C8 mov eax, ecx 1858 000025BF 66D1E8 shr ax, 1 1859 000025C2 040A add al, 10 1860 000025C4 A2[9E330000] mov [color], al 1861 000025C9 E82F030000 call horizline 1862 ;dec ecx 1863 000025CE FEC9 dec cl 1864 000025D0 79E4 jns short @@backloop 1865 1866 000025D2 BD96000000 mov ebp, 150 1867 @@cloudloop: 1868 000025D7 B86C020000 mov eax, 640-20 1869 000025DC BB[F3290000] mov ebx, random 1870 000025E1 FFD3 call ebx 1871 000025E3 6683C00A add ax, 10 1872 000025E7 66A3[98330000] mov [xc], ax 1873 000025ED 66B85000 mov ax, 80 1874 000025F1 FFD3 call ebx 1875 000025F3 6683C00A add ax, 10 1876 000025F7 66A3[9A330000] mov [yc], ax 1877 000025FD 66B80A00 mov ax, 10 1878 00002601 FFD3 call ebx 1879 00002603 6640 inc ax 1880 00002605 66A3[9C330000] mov [radius], ax 1881 0000260B 66B83200 mov ax, 50 1882 0000260F FFD3 call ebx 1883 00002611 041E add al, 30 1884 00002613 A2[9E330000] mov [color], al 1885 00002618 E8FE010000 call filledcircle 1886 0000261D 4D dec ebp 1887 0000261E 75B7 jnz short @@cloudloop 1888 1889 00002620 E8E4010000 call copy 1890 1891 00002625 31FF xor edi, edi 1892 @@smearlooprow: 1893 00002627 31DB xor ebx, ebx 1894 00002629 B600 mov dh, 0 1895 @@smearloopcol: 1896 0000262B 89FE mov esi, edi 1897 0000262D 01DE add esi, ebx 1898 0000262F 8A96[00000300] mov dl, [clouds+esi] 1899 00002635 88F1 mov cl, dh 1900 00002637 D0E9 shr cl, 1 1901 00002639 80C10A add cl, 10 1902 0000263C 38CA cmp dl, cl 1903 0000263E 740B je short @@marad 1904 00002640 66B83200 mov ax, 50 1905 00002644 E8AA030000 call random 1906 00002649 00C2 add dl, al 1907 @@marad: 1908 0000264B 66B81F00 mov ax, 31 1909 0000264F E89F030000 call random 1910 00002654 6683E80F sub ax, 15 1911 00002658 6601C6 add si, ax 1912 0000265B 889600000A00 mov [0A0000h+esi], dl 1913 00002661 6681C38002 add bx, 640 1914 00002666 FEC6 inc dh 1915 00002668 80FE64 cmp dh, 100 1916 0000266B 72BE jb short @@smearloopcol 1917 0000266D 47 inc edi 1918 0000266E 6681FF8002 cmp di, 640 1919 00002673 72B2 jb short @@smearlooprow 1920 1921 00002675 E88F010000 call copy 1922 1923 0000267A BB80020000 mov ebx, 640 1924 0000267F BA80F70000 mov edx, 64000-640 1925 00002684 BE[00000300] mov esi, clouds 1926 00002689 BD00000A00 mov ebp, 0A0000h 1927 0000268E E806010000 call alias 1928 00002693 BB80020000 mov ebx, 640 1929 ;mov edx, 64000-640 1930 00002698 BE[00000300] mov esi, clouds 1931 0000269D BD00000A00 mov ebp, 0A0000h 1932 000026A2 E8F2000000 call alias 1933 1934 000026A7 E85D010000 call copy 1935 1936 000026AC BF00000A00 mov edi, 0A0000h 1937 000026B1 B9803E0000 mov ecx, 16000 1938 000026B6 31C0 xor eax, eax 1939 000026B8 F3AB rep stosd 1940 1941 000026BA BE[BC2B0000] mov esi, mazepal 1942 000026BF E89C020000 call fillpalette 1943 1944 000026C4 C3 retn 1945 1946 ;------------------------------------------------------------------------ 1947 ; 1948 ;------------------------------------------------------------------------ 1949 genlogo: 1950 000026C5 66C705[342A0000]8C- mov word [randseed], 35212 1950 000026CD 89 1951 1952 000026CE BF[002F0000] mov edi, palette 1953 1954 ;mov ecx, 768 1955 000026D3 31C0 xor eax, eax 1956 ;rep stosb 1957 000026D5 B9C0000000 mov ecx, 768/4 1958 000026DA F3AB rep stosd 1959 1960 000026DC E8BA020000 call setpalette 1961 1962 000026E1 BE[562A0000] mov esi, logo 1963 000026E6 BF686A0A00 mov edi, 0A0000h + (40+85*320) 1964 1965 000026EB B60F mov dh, 15 1966 _col: 1967 000026ED B20F mov dl, 15 1968 _row: 1969 000026EF AC lodsb 1970 000026F0 88C7 mov bh, al 1971 000026F2 B108 mov cl, 8 1972 @@byte: 1973 000026F4 31C0 xor eax, eax 1974 000026F6 D0D7 rcl bh, 1 1975 000026F8 730D jnc short _black_ 1976 000026FA 66B8FFFF mov ax, 0FFFFh 1977 000026FE E8F0020000 call random 1978 00002703 66257F7F and ax, 7F7Fh 1979 _black_: 1980 00002707 66898740010000 mov [edi+320], ax 1981 0000270E 66AB stosw 1982 00002710 E2E2 loop @@byte 1983 1984 00002712 FECA dec dl 1985 00002714 75D9 jnz short _row 1986 1987 00002716 81C790010000 add edi, 320+320-120*2 1988 0000271C FECE dec dh 1989 0000271E 75CD jnz short _col 1990 @@alias: 1991 00002720 BA03000000 mov edx, 3 1992 @@aliasonce: 1993 00002725 30E4 xor ah, ah 1994 00002727 BE00000A00 mov esi, 0A0000h 1995 0000272C 89F7 mov edi, esi ; 0A0000h 1996 1997 0000272E BDA0000000 mov ebp, 160 1998 @@aliaschar: 1999 00002733 B940010000 mov ecx, 320 2000 @@aliasrow: 2001 00002738 AC lodsb 2002 00002739 0206 add al, [esi] 2003 0000273B 80D400 adc ah, 0 2004 0000273E 02863F010000 add al, [esi+319] 2005 00002744 80D400 adc ah, 0 2006 00002747 028640010000 add al, [esi+320] 2007 0000274D 80D400 adc ah, 0 2008 00002750 66C1E802 shr ax, 2 2009 00002754 AA stosb 2010 00002755 E2E1 loop @@aliasrow 2011 2012 00002757 4D dec ebp 2013 00002758 75D9 jnz short @@aliaschar 2014 2015 0000275A 4A dec edx 2016 0000275B 75C8 jnz short @@aliasonce 2017 2018 0000275D BE[9E2B0000] mov esi, logopal 2019 00002762 E8F9010000 call fillpalette 2020 2021 00002767 31ED xor ebp, ebp 2022 00002769 BB40000000 mov ebx, 64 2023 @@fadein: 2024 ;call waitrtc 2025 0000276E E846020000 call fade 2026 00002773 45 inc ebp 2027 00002774 45 inc ebp 2028 00002775 4B dec ebx 2029 00002776 75F6 jnz short @@fadein 2030 2031 00002778 C705[AA330000]0000- mov dword [timer], 0 2031 00002780 0000 2032 @@wait: 2033 00002782 833D[AA330000]64 cmp dword [timer], 100 2034 00002789 72F7 jb short @@wait 2035 2036 ;mov ebx, 64 2037 0000278B B340 mov bl, 64 2038 @@fadeout: 2039 ;call waitrtc 2040 0000278D E827020000 call fade 2041 00002792 4D dec ebp 2042 00002793 4D dec ebp 2043 ;dec ebx 2044 00002794 FECB dec bl 2045 00002796 75F5 jnz short @@fadeout 2046 2047 00002798 C3 retn 2048 2049 ;------------------------------------------------------------------------ 2050 ; 2051 ;------------------------------------------------------------------------ 2052 alias: 2053 00002799 89DF mov edi, ebx ; offset (start) ; bx 2054 0000279B 01DE add esi, ebx ; DS segment + offset (start) ; [di] 2055 0000279D 01EF add edi, ebp ; * ; ES segment + offset (start) 2056 ; dx = offset (stop) ; ** 2057 0000279F 89F5 mov ebp, esi ; *** DS segment + Offset (start) 2058 000027A1 6629DD sub bp, bx ; **** DS seg + 65536 - offset (start) 2059 000027A4 31C9 xor ecx, ecx 2060 000027A6 01F3 add ebx, esi ; ebx == [di+bx] 2061 ; ebp == [di-bx] 2062 ; esi == [di] 2063 ; edi == es:[di] 2064 @@aliasloop: 2065 000027A8 8A0E mov cl, [esi] ; [di] 2066 000027AA 66C1E102 shl cx, 2 2067 000027AE 89C8 mov eax, ecx 2068 000027B0 8A4E01 mov cl, [esi+1] ; [di+1] 2069 000027B3 B500 mov ch, 0 2070 000027B5 66D1E1 shl cx, 1 2071 000027B8 6601C8 add ax, cx 2072 000027BB 8A4EFF mov cl, [esi-1] ; [di-1] 2073 000027BE B500 mov ch, 0 2074 000027C0 66D1E1 shl cx, 1 2075 000027C3 6601C8 add ax, cx 2076 000027C6 8A0B mov cl, [ebx] ; [di+bx] 2077 000027C8 B500 mov ch, 0 2078 000027CA 66D1E1 shl cx, 1 2079 000027CD 6601C8 add ax, cx 2080 000027D0 8A4D00 mov cl, [ebp] ; ***, **** ; [di-bx] 2081 000027D3 B500 mov ch, 0 2082 000027D5 66D1E1 shl cx, 1 2083 000027D8 6601C8 add ax, cx 2084 000027DB 8A4DFF mov cl, [ebp-1] ; ***, **** ; [di-bx-1] 2085 000027DE B500 mov ch, 0 2086 000027E0 6601C8 add ax, cx 2087 000027E3 8A4D01 mov cl, [ebp+1] ; ****, **** ; [di-bx+1] 2088 000027E6 6601C8 add ax, cx 2089 000027E9 8A4B01 mov cl, [ebx+1] ; [di+bx+1] 2090 000027EC 6601C8 add ax, cx 2091 000027EF 8A4BFF mov cl, [ebx-1] ; [di+bx-1] 2092 000027F2 6601C8 add ax, cx 2093 000027F5 66C1E804 shr ax, 4 2094 000027F9 8807 mov [edi], al ; * ; [es:di] 2095 000027FB 6647 inc di 2096 000027FD 6646 inc si 2097 000027FF 6645 inc bp 2098 00002801 6643 inc bx 2099 00002803 6639D7 cmp di, dx ; *, ** 2100 00002806 72A0 jb short @@aliasloop 2101 00002808 C3 retn 2102 2103 ;------------------------------------------------------------------------ 2104 ; 2105 ;------------------------------------------------------------------------ 2106 copy: 2107 00002809 BF[00000300] mov edi, clouds 2108 0000280E BE00000A00 mov esi, 0A0000h 2109 00002813 B9803E0000 mov ecx, 16000 2110 00002818 F3A5 rep movsd 2111 0000281A C3 retn 2112 2113 ;------------------------------------------------------------------------ 2114 ; 2115 ;------------------------------------------------------------------------ 2116 filledcircle: 2117 0000281B 31DB xor ebx, ebx 2118 ;movzx ecx, word [radius] 2119 0000281D 668B0D[9C330000] mov cx, [radius] 2120 00002824 89CA mov edx, ecx 2121 00002826 66D1E2 shl dx, 1 2122 00002829 66F7DA neg dx 2123 0000282C 6683C203 add dx, 3 2124 @@circloop: 2125 00002830 6639CB cmp bx, cx 2126 00002833 7D32 jge short @@vege 2127 2128 00002835 E836000000 call @@circline 2129 0000283A 6683FA00 cmp dx, 0 2130 0000283E 7D10 jge short _fc1 2131 2132 00002840 6689D8 mov ax, bx 2133 00002843 66C1E002 shl ax, 2 2134 00002847 6683C006 add ax, 6 2135 0000284B 6601C2 add dx, ax 2136 0000284E EB13 jmp short @@ki 2137 _fc1: 2138 00002850 6689D8 mov ax, bx 2139 00002853 6629C8 sub ax, cx 2140 00002856 66C1E002 shl ax, 2 2141 0000285A 6683C00A add ax, 10 2142 0000285E 6601C2 add dx, ax 2143 2144 00002861 6649 dec cx 2145 @@ki: 2146 00002863 6643 inc bx 2147 00002865 EBC9 jmp short @@circloop 2148 2149 00002867 6639CB @@vege: cmp bx, cx 2150 0000286A 0F858C000000 jne @@vege2 2151 @@circline: 2152 00002870 66A1[9A330000] mov ax, [yc] 2153 00002876 6629C8 sub ax, cx 2154 00002879 66A3[A0330000] mov [liney], ax 2155 0000287F 66A1[98330000] mov ax, [xc] 2156 00002885 6629D8 sub ax, bx 2157 00002888 66A3[A2330000] mov [linexstart], ax 2158 0000288E 66A1[98330000] mov ax, [xc] 2159 00002894 6601D8 add ax, bx 2160 00002897 66A3[A4330000] mov [linexend], ax 2161 0000289D E85B000000 call horizline 2162 2163 000028A2 66A1[9A330000] mov ax, [yc] 2164 000028A8 6601C8 add ax, cx 2165 000028AB 66A3[A0330000] mov [liney], ax 2166 000028B1 E847000000 call horizline 2167 000028B6 66A1[9A330000] mov ax, [yc] 2168 000028BC 6629D8 sub ax, bx 2169 000028BF 66A3[A0330000] mov [liney], ax 2170 000028C5 66A1[98330000] mov ax, [xc] 2171 000028CB 6629C8 sub ax, cx 2172 000028CE 66A3[A2330000] mov [linexstart], ax 2173 000028D4 66A1[98330000] mov ax, [xc] 2174 000028DA 6601C8 add ax, cx 2175 000028DD 66A3[A4330000] mov [linexend], ax 2176 000028E3 E815000000 call horizline 2177 2178 000028E8 66A1[9A330000] mov ax, [yc] 2179 000028EE 6601D8 add ax, bx 2180 000028F1 66A3[A0330000] mov [liney], ax 2181 000028F7 E801000000 call horizline 2182 @@vege2: 2183 000028FC C3 retn 2184 2185 ;------------------------------------------------------------------------ 2186 ; 2187 ;------------------------------------------------------------------------ 2188 horizline: 2189 000028FD 60 pushad 2190 000028FE BF00000A00 mov edi, 0A0000h 2191 00002903 668B1D[A2330000] mov bx, [linexstart] 2192 2193 0000290A 668B3D[A0330000] mov di, [liney] 2194 00002911 6689F8 mov ax, di 2195 00002914 66C1E709 shl di, 9 2196 00002918 66C1E007 shl ax, 7 2197 0000291C 6601C7 add di, ax 2198 0000291F 6601DF add di, bx 2199 2200 ;movzx ecx, word [linexend] 2201 00002922 668B0D[A4330000] mov cx, [linexend] 2202 00002929 6629D9 sub cx, bx 2203 0000292C 6641 inc cx 2204 0000292E A0[9E330000] mov al, [color] 2205 00002933 F3AA rep stosb 2206 00002935 61 popad 2207 2208 00002936 C3 retn 2209 2210 ;------------------------------------------------------------------------ 2211 ; 2212 ;------------------------------------------------------------------------ 2213 sky: 2214 00002937 8B1D[A6330000] mov ebx, [skyxstart] 2215 0000293D BF[00000100] mov edi, virtscr 2216 00002942 BD64000000 mov ebp, 100 2217 @@skyloop: 2218 00002947 89DE mov esi, ebx 2219 00002949 81C6[00000300] add esi, clouds 2220 0000294F B940010000 mov ecx, 320 2221 00002954 F3A4 rep movsb 2222 2223 00002956 81C380020000 add ebx, 640 2224 0000295C 4D dec ebp 2225 0000295D 75E8 jnz short @@skyloop 2226 2227 0000295F C3 retn 2228 2229 ;------------------------------------------------------------------------ 2230 ; 2231 ;------------------------------------------------------------------------ 2232 fillpalette: 2233 ;cld 2234 00002960 BF[002F0000] mov edi, palette 2235 2236 00002965 31C0 xor eax, eax 2237 00002967 66AB stosw 2238 00002969 AA stosb 2239 ;xor ecx, ecx 2240 @@set: 2241 0000296A 66AD lodsw 2242 0000296C 6691 xchg cx, ax 2243 0000296E 67E329 jcxz @@end 2244 00002971 66AD lodsw 2245 00002973 6693 xchg bx, ax 2246 00002975 66AD lodsw 2247 00002977 6692 xchg dx, ax 2248 00002979 66AD lodsw 2249 @@col: 2250 0000297B 883F mov [edi], bh 2251 0000297D 887701 mov [edi+1], dh 2252 00002980 886702 mov [edi+2], ah 2253 2254 00002983 66031E add bx, [esi] 2255 00002986 66035602 add dx, [esi+2] 2256 0000298A 66034604 add ax, [esi+4] 2257 2258 0000298E 83C703 add edi, 3 2259 ;loop @@col 2260 00002991 6649 dec cx 2261 00002993 75E6 jnz short @@col 2262 2263 00002995 83C606 add esi, 6 2264 00002998 EBD0 jmp short @@set 2265 @@end: 2266 0000299A C3 retn 2267 2268 ;------------------------------------------------------------------------ 2269 ; 2270 ;------------------------------------------------------------------------ 2271 setpalette: 2272 0000299B BE[002F0000] mov esi, palette 2273 000029A0 66BAC803 mov dx, 03C8h 2274 000029A4 30C0 xor al, al 2275 ;out dx, al 2276 000029A6 B401 mov ah, 1 ; outb 2277 000029A8 CD34 int 34h 2278 000029AA FEC2 inc dl 2279 000029AC B900030000 mov ecx, 768 2280 setpal_loop: 2281 ;rep outsb 2282 000029B1 AC lodsb 2283 ;out dx, al 2284 000029B2 B401 mov ah, 1 2285 000029B4 CD34 int 34h 2286 000029B6 E2F9 loop setpal_loop 2287 000029B8 C3 retn 2288 2289 ;------------------------------------------------------------------------ 2290 ; 2291 ;------------------------------------------------------------------------ 2292 fade: 2293 ;cld 2294 000029B9 BE[002F0000] mov esi, palette 2295 000029BE 66BAC803 mov dx, 03C8h 2296 000029C2 31C0 xor eax, eax 2297 ;out dx, al 2298 000029C4 B401 mov ah, 1 ; outb 2299 000029C6 CD34 int 34h 2300 2301 000029C8 FEC2 inc dl 2302 000029CA B900030000 mov ecx, 768 2303 @@3: 2304 000029CF 28E4 sub ah, ah 2305 000029D1 AC lodsb 2306 000029D2 660FAFC5 imul ax, bp 2307 000029D6 66C1E807 shr ax, 7 2308 ;out dx, al 2309 000029DA B401 mov ah, 1 ; outb 2310 000029DC CD34 int 34h 2311 000029DE E2EF loop @@3 2312 000029E0 C3 retn 2313 2314 ;------------------------------------------------------------------------ 2315 ; 2316 ;------------------------------------------------------------------------ 2317 drawvirt: 2318 ;call waitrtc 2319 2320 000029E1 BE[00000100] mov esi, virtscr 2321 000029E6 BF00000A00 mov edi, 0A0000h 2322 000029EB B9803E0000 mov ecx, 16000 2323 000029F0 F3A5 rep movsd 2324 000029F2 C3 retn 2325 2326 ;------------------------------------------------------------------------ 2327 ; 2328 ;------------------------------------------------------------------------ 2329 ;waitrtc: 2330 ; ;cli 2331 ; mov dx, 3DAh 2332 ; mov ah, 0 ; inb 2333 ;@@wait1: 2334 ; ;in al, dx 2335 ; int 34h 2336 ; test al, 08h 2337 ; jz short @@wait1 2338 ;@@wait2: 2339 ; ;in al, dx 2340 ; int 34h 2341 ; test al, 08h 2342 ; jnz short @@wait2 2343 ; ;sti 2344 ; retn 2345 2346 ;------------------------------------------------------------------------ 2347 ; 2348 ;------------------------------------------------------------------------ 2349 random: 2350 000029F3 53 push ebx 2351 000029F4 51 push ecx 2352 000029F5 52 push edx 2353 000029F6 6689C1 mov cx, ax 2354 000029F9 66B84B00 mov ax, 75 2355 000029FD 668B1D[342A0000] mov bx, [randseed] 2356 00002A04 66F7E3 mul bx 2357 00002A07 6683C04A add ax, 74 2358 00002A0B 6619D0 sbb ax, dx 2359 00002A0E 66A3[342A0000] mov [randseed], ax 2360 00002A14 6631D2 xor dx, dx 2361 00002A17 66F7F1 div cx 2362 00002A1A 6689D0 mov ax, dx 2363 00002A1D 5A pop edx 2364 00002A1E 59 pop ecx 2365 00002A1F 5B pop ebx 2366 00002A20 C3 retn 2367 2368 ;======================================================================== 2369 ; DATA 2370 ;======================================================================== 2371 2372 00002A21 90 align 2 2373 2374 00002A22 FFFE dw -257 2375 00002A24 00FF01FF0100010100- ctable: dw -256,-255,1,257,256,255,-1,-257 2375 00002A2D 01FF00FFFFFFFE 2376 2377 randseed: 2378 00002A34 0000 dw 0 2379 mazedat: 2380 00002A36 0489 dw 1000100100000100b 2381 00002A38 D7EB dw 1110101111010111b 2382 00002A3A 500A dw 0000101001010000b 2383 00002A3C 5BBB dw 1011101101011011b 2384 00002A3E 0289 dw 1000100100000010b 2385 00002A40 7ABD dw 1011110101111010b 2386 00002A42 4284 dw 1000010001000010b 2387 00002A44 EED5 dw 1101010111101110b 2388 00002A46 0015 dw 0001010100000000b 2389 00002A48 BF77 dw 0111011110111111b 2390 00002A4A 2000 dw 0000000000100000b 2391 00002A4C EFF6 dw 1111011011101111b 2392 00002A4E 0840 dw 0100000000001000b 2393 00002A50 FD5E dw 0101111011111101b 2394 00002A52 8102 dw 0000001010000001b 2395 00002A54 EDFB dw 1111101111101101b 2396 2397 ;------------------------------------------------------------------------ 2398 logo: 2399 2400 00002A56 02020002009811FC00- db 2,2,0,2,0,152,17,252,0,8,4,128,0,16,0,2,135,0,7,0 2400 00002A5F 080480001000028700- 2400 00002A68 0700 2401 00002A6A 501C7F801C03000038- db 80,28,127,128,28,3,0,0,56,0,7,134,0,7,32,120,8,56,192,28 2401 00002A73 000786000720780838- 2401 00002A7C C01C 2402 00002A7E 8300003900078E002F- db 131,0,0,57,0,7,142,0,47,64,124,24,48,32,189,7,0,1,122,0 2402 00002A87 407C183020BD070001- 2402 00002A90 7A00 2403 00002A92 07CF001B8032183030- db 7,207,0,27,128,50,24,48,48,110,7,64,0,220,0,15,203,64,9,128 2403 00002A9B 6E074000DC000FCB40- 2403 00002AA4 0980 2404 00002AA6 33183050260380004C- db 51,24,48,80,38,3,128,0,76,0,13,217,128,17,200,49,184,48,16,71 2404 00002AAF 000DD98011C831B830- 2404 00002AB8 1047 2405 00002ABA 2180008E402CD10010- db 33,128,0,142,64,44,209,0,16,240,113,176,32,16,67,193,128,0,135,128 2405 00002AC3 F071B0201043C18000- 2405 00002ACC 8780 2406 00002ACE 18F0A0FFE030B02033- db 24,240,160,255,224,48,176,32,51,255,133,128,7,255,0,24,240,192,54,224 2406 00002AD7 FF858007FF0018F0C0- 2406 00002AE0 36E0 2407 00002AE2 34F42850DB83A001B7- db 52,244,40,80,219,131,160,1,183,0,60,224,192,32,224,56,120,112,16,131 2407 00002AEB 003CE0C020E0387870- 2407 00002AF4 1083 2408 00002AF6 81C00107003870C040- db 129,192,1,7,0,56,112,192,64,112,120,112,96,49,1,193,192,2,3,128 2408 00002AFF 707870603101C1C002- 2408 00002B08 0380 2409 00002B0A 3070604070703060E1- db 48,112,96,64,112,112,48,96,225,1,193,132,66,3,128,116,120,104,208,120 2409 00002B13 01C184420380747868- 2409 00002B1C D078 2410 00002B1E F0317FC341E3F8C683- db 240,49,127,195,65,227,248,198,131,192,248,236,241,240,204,152,120,255 2410 00002B27 C0F8ECF1F0CC9878FF 2411 00002B30 07C333FF8F8660 db 7,195,51,255,143,134,96 2412 2413 00002B37 90 align 2 2414 2415 ;------------------------------------------------------------------------ 2416 cubes: 2417 00002B38 640064006400 dw 100, 100, 100 2418 00002B3E 9CFF9CFF9CFF dw -100,-100,-100 2419 00002B44 9CFF64006400 dw -100, 100, 100 2420 00002B4A 64009CFF6400 dw 100,-100, 100 2421 00002B50 640064009CFF dw 100, 100,-100 2422 00002B56 9CFF9CFF6400 dw -100,-100, 100 2423 00002B5C 64009CFF9CFF dw 100,-100,-100 2424 00002B62 9CFF64009CFF dw -100, 100,-100 2425 2426 00002B68 320032003200 dw 50, 50, 50 2427 00002B6E CEFF32003200 dw -50, 50, 50 2428 00002B74 3200CEFF3200 dw 50,-50, 50 2429 00002B7A 32003200CEFF dw 50, 50,-50 2430 00002B80 CEFFCEFF3200 dw -50,-50, 50 2431 00002B86 3200CEFFCEFF dw 50,-50,-50 2432 00002B8C CEFF3200CEFF dw -50, 50,-50 2433 00002B92 CEFFCEFFCEFF dw -50,-50,-50 2434 00002B98 000000000000 dw 0,0,0 2435 2436 ;------------------------------------------------------------------------ 2437 2438 logopal: 2439 00002B9E 300067007200A30067- dw 48,103,114,163,103,114,163 2439 00002BA7 007200A300 2440 00002BAC 370050136015901ECC- dw 55,4944,5472,7824,204,195,153 2440 00002BB5 00C3009900 2441 00002BBA 0000 dw 0 2442 2443 mazepal: 2444 00002BBC 7F000011000E00225C- dw 127,17*256,14*256,34*256,46*2,49*2,29*2 2444 00002BC5 0062003A00 2445 00002BCA 80000018000400004E- dw 128,24*256,4*256,0,78,118,126 2445 00002BD3 0076007E00 2446 00002BD8 0000 dw 0 2447 2448 mandalapal: 2449 00002BDA 7F00000D000A001A64- dw 127,13*256,10*256,26*256,100,102,74 2449 00002BE3 0066004A00 2450 00002BE8 8000003F003F003F9C- dw 128,63*256,63*256,63*256,-100,-102,-74 2450 00002BF1 FF9AFFB6FF 2451 00002BF6 0000 dw 0 2452 2453 firepal: 2454 00002BF8 3F0000013900000000- dw 63,256,57,0,256,57,0 2454 00002C01 0139000000 2455 00002C06 4000003F000E0000F8- dw 64,63*256,14*256,0,-8,142,85 2455 00002C0F FF8E005500 2456 00002C14 4000003D0031001508- dw 64,61*256,49*256,21*256,8,57,171 2456 00002C1D 003900AB00 2457 00002C22 40000000000E001AFC- dw 64,0,14*256,26*256,252,199,150 2457 00002C2B 00C7009600 2458 00002C30 0000 dw 0 2459 2460 stripepal: 2461 00002C32 8F0000150002000244- dw 143,5376,512,512,68,81,18 2461 00002C3B 0051001200 2462 00002C40 0000 dw 0 2463 2464 c_randseed: 2465 00002C42 3412 dw 01234h 2466 align 4 2467 2468 00002C44 0000C03F ddtemp: dd 1.5 2469 00002C48 00609F44 sz255: dd 1275.0 2470 2471 00002C4C 90 align 8 2472 2473 00002C50 91F936B34CF5FBBF91- mandata: dq -1.7473876,-1.7473876,1.72384644,0.0415735 2473 00002C59 F936B34CF5FBBF3404- 2473 00002C62 3201E094FB3FEAB0C2- 2473 00002C6B 2D1F49A53F 2474 00002C70 53646314BA01A5BF00- dq -0.0410288,8.0 2474 00002C79 00000000002040 2475 2476 bss_start: 2477 2478 ABSOLUTE bss_start 2479 2480 ;======================================================================== 2481 ; UNINITIALIZED DATA 2482 ;======================================================================== 2483 2484 alignb 2 2485 2486 00002C80 sintable: resw 64 2487 00002D00 costable: resw 256 2488 2489 00002F00 palette: resb 768 2490 2491 00003200 fadeinval: resw 1 2492 00003202 fadeoutval: resw 1 2493 ;mandinit: resw 1 2494 2495 00003204 dist: resw 200 2496 00003394 angle: resw 1 2497 00003396 xpos: resb 1 2498 00003397 ypos: resb 1 2499 2500 alignb 4 2501 2502 00003398 xc: resw 1 2503 0000339A yc: resw 1 2504 0000339C radius: resw 1 2505 0000339E color: resb 1 2506 2507 0000339F alignb 4 2508 2509 000033A0 liney: resw 1 2510 000033A2 linexstart: resw 1 2511 000033A4 linexend: resw 1 2512 2513 000033A6 skyxstart: resd 1 2514 2515 000033AA timer: resd 1 2516 2517 000033AE deg: resw 1 2518 2519 alignb 8 2520 2521 000033B0 x0: resq 1 2522 000033B8 x: resq 1 2523 000033C0 y: resq 1 2524 000033C8 addx: resq 1 2525 000033D0 addy: resq 1 2526 000033D8 bailout: resq 1 2527 2528 000033E0 r: resq 1 2529 000033E8 phi: resq 1 2530 000033F0 status: resw 1 2531 2532 000033F2 alignb 4 2533 000033F4 resd 1 2534 000033F8 fire: resb 32*16 2535 000035F8 resd 1 2536 2537 000035FC balldata1: resw 32*32 2538 00003DFC balldata2: resw 32*32 2539 000045FC balldata3: resw 32*32 2540 00004DFC balldata4: resw 32*32 2541 000055FC balldata5: resw 32*32 2542 00005DFC balldata6: resw 32*32 2543 000065FC balldata7: resw 32*32 2544 2545 00006DFC balloffsets: resd 7 2546 2547 00006E18 sqr: resw 1 2548 00006E1A dwtemp: resw 1 2549 ;ddtemp: resd 1 2550 2551 00006E1C alpha: resw 1 2552 00006E1E beta: resw 1 2553 00006E20 gamma: resw 1 2554 2555 00006E22 sinalpha: resw 1 2556 2557 00006E24 _r11: resw 1 2558 00006E26 _r12: resw 1 2559 00006E28 _r13: resw 1 2560 00006E2A _r21: resw 1 2561 00006E2C _r22: resw 1 2562 00006E2E _r23: resw 1 2563 00006E30 _r31: resw 1 2564 00006E32 _r32: resw 1 2565 00006E34 _r33: resw 1 2566 2567 00006E36 add11: resw 1 2568 00006E38 add12: resw 1 2569 2570 00006E3A resb 1 2571 00006E3B resw 1 2572 2573 00006E3D object: resw 3*(np-2) 2574 2575 2576 00006EA3 currentobject: resw 3*np 2577 2578 00006F15 alignb 4 2579 2580 00006F18 zlist: resw 2*np 2581 2582 00006F64 ballx: resw 1 2583 00006F66 bally: resw 1 2584 2585 ;fireinit: resw 1 2586 2587 ;sz255: resd 1 2588 ;stripeinit: resw 1 2589 00006F68 fireinit: resb 1 2590 00006F69 stripeinit: resb 1 2591 00006F6A mandinit: resb 1 2592 00006F6B patch: resb 1 2593 00006F6C morph: resw 1 2594 2595 00006F6E fpu_cw: resw 1 2596 2597 00006F70 _fs: resd 1 2598 00006F74 fireroot: resw 1 2599 ;patch: resb 1 2600 2601 00006F76 timer_event_number: resb 1 2602 2603 00006F77 alignb 65536 2604 2605 virtscr: 2606 00010000 resb 64000 2607 0001FA00 resb 1536 2608 2609 mazeseg: 2610 00020000 resb 65535 2611 0002FFFF resb 1 2612 2613 clouds: 2614 00030000 resb 64000 2615 0003FA00 resb 1536 2616 2617 mandalaseg: 2618 00040000 resb 65535 2619 0004FFFF resb 1 2620 2621 distable: 2622 00050000 resb 64000 2623 0005FA00 resb 1536 2624 2625 circtable: 2626 00060000 resb 64000 2627 0006FA00 resb 1536 2628 2629 degtable: 2630 00070000 resb 64000 2631 0007FA00 resb 1536 2632 2633 multable: 2634 00080000 resb 65535 2635 0008FFFF resb 1 2636 2637 bss_end: