Advertisement
toko214

project

May 22nd, 2016
202
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. IDEAL
  2. MODEL small
  3. STACK 100h
  4. DATASEG
  5. filehandle dw ?
  6. Header db 54 dup (0)
  7. Palette db 256*4 dup (0)
  8. ScrLine db 320 dup (0)
  9. ErrorMsg db 'Error', 13, 10,'$'  
  10. Firstpic db 'Scrn1.bmp', 0
  11. Ship db 'Ship5.bmp',0
  12. filename db 'testfile.txt',0
  13. filehandle2 dw ?
  14. Message db '             $'
  15. ErrorMsg2 db 'Error', 10, 13,'$'                        
  16. buffer db 100 dup(0),'$'
  17. presskeycunt db 13,10,"press any key to continue! $"
  18. cuber db 'cube3.bmp',0
  19. deleter db 'Cube4.bmp',0
  20. deleter2 db 'Cube5.bmp',0
  21. ok db 0
  22.  
  23.  
  24.  
  25. mona db"     _____ _    _ ____  ______   ______ _____ ______ _      _____  ",13,10
  26. db "    / ____| |  | |  _ \|  ____| |  ____|_   _|  ____| |    |  __ \ ",13,10
  27. db "       | |    | |  | | |_) | |__    | |__    | | | |__  | |    | |  | |",13,10
  28. db "       | |    | |  | |  _ <|  __|   |  __|   | | |  __| | |    | |  | |",13,10
  29. db "       | |____| |__| | |_) | |____  | |     _| |_| |____| |____| |__| |",13,10
  30. db "    \_____|\____/|____/|______| |_|    |_____|______|______|_____/",13,10
  31. db"         __   _   __   _____ ___        ___ _      ___   __ ",13,10      
  32. db" | _| / | |_ | |_   _/ _ \      | _ \ |    /_\ \ / /",13,10          
  33. db" | |  | |  | |   | || (_) |     |  _/ |__ / _ \ V /",13,10          
  34. db" | |  |_|  | |   |_| \___/      |_| |____/_/ \_\_|",13,10            
  35. db" |__|  ___|__|_   ___ ___  ___      ___ _  _ ___ ___",13,10          
  36. db" | _| |_  ) |_ | | __/ _ \| _ \    |_ _| \| | __/ _ |",13,10        
  37. db" | |   / /   | | | _| (_) |   /     | || .` | _| (_)|",13,10        
  38. db" | |  /___|  | | |_| \___/|_|_\    |___|_|\_|_| \___/",13,10        
  39. db" |__|  ____ |__|  ___ ___  ___      ___  ___ ___  ___ ___ ___",13,10
  40. db" | _| |__ / |_ | | __/ _ \| _ \    / __|/ __/ _ \| _ \ __/ __|",13,10
  41. db" | |   |_ \  | | | _| (_) |   /    \__ \ (_| (_) |   / _|\__ |",13,10
  42. db" | |  |___/  | | |_| \___/|_|_\    |___/\___\___/|_|_\___|___/",13,10
  43. db" |__|       |__|$"                                  
  44.      
  45.      
  46. level db "Choose a level str:",13,10
  47. db       "Press E For Easy ",13,10
  48. db       "Press M For Meduim",13,10
  49. db       "Press H For Hard",13,10
  50. db       "Press B To Go Back To The Menu",13,10,"$"
  51.  
  52.  
  53.  
  54.      
  55. mon2 db "The Game Start With Only 1 Cube Falling From Above$"                          
  56. mon3 db "NO SCORES LOSER!$"                                                                            
  57.                                                                                                                                                      
  58.  
  59.                                                                                                                                                      
  60.                                                                                                                                                      
  61.                                                                                                                                                      
  62. Right db 4dh
  63. Left db 4bh
  64. key1 db 31h
  65. key2 db 32h
  66. key3 db 33h
  67. key4 db 34h
  68. keyEasy db 65h
  69. keyMed db 6dh
  70. keyHard db 68h
  71. keyBack db 62h
  72. y dw 190
  73. x dw 150
  74. ycheck dw ?
  75. xcheck dw ?
  76. x2 dw 0
  77. y2 dw 0
  78. x3 dw 0
  79. ycube dw 0
  80. colorCube db 4
  81. x4 dw ?
  82. y4 dw ?
  83. ydeath dw 0
  84. xdeath dw ?
  85. colorDearh db 10
  86. ycube2 dw 0
  87. ycube3 dw 0
  88. ycube4 dw 0
  89. isprintcube db 1
  90. isprintcube2 db 0
  91. isprintcube3 db 0
  92. isprintcube4 db 0
  93. hits db 0
  94. speed dw 0
  95. ; --------------------------
  96.  
  97. CODESEG
  98. proc CloseFile ;The procedure closes the opened file
  99.     push bp
  100.     mov bp, sp
  101.  
  102.     mov bx, [filehandle]
  103.     mov ah, 3eh
  104.     int 21h
  105.  
  106.     pop bp
  107.     ret
  108. endp CloseFile
  109.  
  110. ;======================================================================
  111. ; This proc wiil pop al registers when "PushAll" is written in the code=
  112. ;======================================================================
  113. macro PushAll ;Macros that are used in procs
  114.     push ax
  115.     push bx
  116.     push cx
  117.     push dx
  118.     push di
  119.     push si
  120. endm PushAll
  121. ;======================================================================
  122. ; This proc wiil pop al registers when "PopAll" is written in the code=
  123. ;======================================================================
  124. macro PopAll
  125.     pop si
  126.     pop di
  127.     pop dx
  128.     pop cx
  129.     pop bx
  130.     pop ax
  131. endm PopAll
  132.  
  133. ;---------------------------------------------------------------------------
  134. proc OpenFile ;The procedure gets an offset of a file
  135.               ;The procedure opens for reading the sent file
  136.     ; Open file
  137.     push bp
  138.     mov bp, sp
  139.    
  140.     mov ah, 3Dh
  141.     mov al, 2
  142.     mov  dx, [bp+4]
  143.     int  21h
  144.  
  145.     jc openerror
  146.    
  147.     mov [filehandle], ax ;Success
  148.     pop bp
  149.     ret 2
  150.  
  151. openerror:
  152.     mov dx, offset ErrorMsg
  153.     mov ah, 9h
  154.     int 21h
  155.    
  156.     pop bp
  157.     ret  2
  158. endp OpenFile
  159. ;-----------------------------------------------------------------------
  160.  
  161. proc ReadHeader ;The procedure reads BMP file header, 54 bytes
  162.     mov ah, 3fh
  163.     mov bx, [filehandle]
  164.     mov  cx, 54
  165.     mov  dx, offset Header
  166.     int  21h                      
  167.     ret
  168. endp ReadHeader  
  169.  
  170. proc ReadPalette
  171. ; Read BMP file color palette, 256 colors * 4 bytes (400h)
  172.  
  173.     mov ah,3fh
  174.     mov  cx,400h                          
  175.     mov  dx,offset Palette
  176.     int  21h                      
  177.     ret
  178. endp ReadPalette  
  179. ;----------------------------------------------------------------------
  180. proc CopyPal  
  181.             ; Copy the colors palette to the video memory registers  
  182.             ; The number of the first color should be sent to port 3C8h
  183.             ; The palette is sent to port 3C9h
  184.  
  185.     mov     si,offset Palette        
  186.     mov     cx,256              
  187.     mov     dx,3C8h
  188.     mov     al,0                    
  189.         ; Copy starting color to port 3C8h
  190.     out      dx,al
  191.         ; Copy palette itself to port 3C9h  
  192.     inc       dx                      
  193.        
  194.         PalLoop:
  195.             ; Note: Colors in a BMP file are saved as BGR values rather than RGB.
  196.            
  197.             mov al,[si+2]             ; Get red value.
  198.             shr al,2                     ; Max. is 255, but video palette maximal
  199.            
  200.             ; value is 63.  Therefore dividing by 4.
  201.            
  202.             out      dx,al   ; Send it.
  203.             mov     al,[si+1]   ; Get green value.
  204.             shr      al,2
  205.             out      dx,al                    ; Send it.
  206.             mov     al,[si]                  ; Get blue value.
  207.             shr      al,2
  208.             out      dx,al                    ; Send it.
  209.             add      si,4                     ; Point to next color.
  210.  
  211.             ; (There is a null chr. after every color.)
  212.     loop    PalLoop
  213.     ret
  214. endp CopyPal  
  215. ;------------------------------------------------------------------------------
  216.  
  217. proc PrintCharacter;First is Length-Second is Width-
  218.                     ;after push X- and after push Y / SUB-y-x-אורך-רוחב
  219.                    
  220.                 ; BMP graphics are saved upside-down.
  221.                 ; Read the graphic line by line (200 lines in VGA format),
  222.                 ; displaying the lines from bottom to top.  
  223.  
  224.  
  225.     push bp
  226.     mov bp, sp
  227.  
  228.     PushAll
  229.  
  230.     mov ax, 0A000h
  231.     mov es, ax
  232.     mov cx,[bp+10];Length        
  233.  
  234. PrintBMPLoop:
  235.     push    cx
  236.    
  237.     ;=====UP======
  238.     add cx, [bp+4];y
  239.     dec cx
  240.     ;=============
  241.    
  242.     mov     di,cx                    
  243.     shl      cx,6                    
  244.     shl      di,8                    
  245.     add      di,cx
  246.    
  247.    
  248.     ; Read one line
  249.     mov     ah,3fh
  250.     mov     cx,[bp+8];Width
  251.     mov     dx,offset ScrLine
  252.     int      21h                      
  253.    
  254.     ; Copy one line into video memory
  255.    
  256.     cld                               ; Clear direction flag, for movsb
  257.     mov     cx,[bp+8];Width
  258.     ;=====SIDES=====   
  259.     mov si, offset ScrLine
  260.     add di, [bp+6];x
  261.     sub cx, [bp+12]
  262.    
  263.     ;===============
  264.    
  265.    
  266.     repe movsb                    ; Copy line to the screen  
  267.      
  268.     pop     cx
  269.     loop    PrintBMPLoop
  270.  
  271. PopAll
  272.     pop bp
  273.     ret 10
  274. endp PrintCharacter
  275. ;-------------------------------------------------------------------------------
  276.  
  277. proc PrintPic ;The procedure gets an offset, a subber number, length, width, x and y
  278.               ;The procedure prints a bmp file picture on the screen.
  279. push bp
  280. mov bp, sp
  281. PushAll
  282.  
  283.     push [bp+14]
  284.     call OpenFile
  285.     call ReadHeader
  286.     call  ReadPalette  
  287.     push [bp+12]
  288.     push [bp+10]
  289.     push [bp+8]
  290.     push [bp+6]
  291.     push [bp+4]
  292.     call PrintCharacter
  293.    
  294.     call CloseFile
  295.  
  296. PopAll
  297.     pop bp 
  298.     ret 12
  299. endp PrintPic
  300. ;======================================================
  301. ; this proc sets the DOS for video mode 320*200 pixels=
  302. ;======================================================
  303. proc    SetVideoMode
  304.     push ax
  305.     mov ax,0013h
  306.     int 10h
  307.     pop ax
  308.     ret
  309. endp
  310.  
  311.  
  312. proc settextmode
  313.     mov ah, 0
  314.     mov al, 2
  315.     int 10h
  316.     ret
  317. endp
  318.  
  319. proc MenuPrint
  320.     call settextmode
  321.     mov ah,9h
  322.     mov dx,offset mona
  323.     int 21h
  324.     ret
  325. endp
  326.  
  327. proc infoDis
  328.  
  329.     call settextmode
  330.     mov ah,9h
  331.     mov dx,offset mon2
  332.     int 21h
  333.     call disAnyKey
  334.     mov ah,0h
  335.     int 16h
  336.     ret
  337. endp
  338. proc menuDis
  339.  
  340. checks:
  341.     call MenuPrint
  342.     mov ah,07h
  343.     int 21h
  344.     cmp al,[key1]
  345.     je exitMenu
  346.     cmp al,[key2]
  347.     je infoDisCheck
  348.     cmp al,[key3]
  349.     je scorescheck
  350.     jmp checks
  351.    
  352. scorescheck:
  353.     call scoresDis
  354.     jmp checks
  355. infoDisCheck:
  356.     call infoDis
  357.     jmp checks
  358. exitMenu:
  359.     call levelStr
  360. endp
  361.  
  362. proc levelStr
  363.     call settextmode
  364.     mov ah,9h
  365.     mov dx,offset level
  366.     int 21h
  367. KeysWait:  
  368.     mov ah,07h
  369.     int 21h
  370.     cmp al,[keyEasy]
  371.     je EasyLevel
  372.     cmp al,[keyMed]
  373.     je MedLevel
  374.     cmp al,[keyHard]
  375.     je HardLevel
  376.     cmp al,[keyBack]
  377.     je goBack
  378.     jmp KeysWait
  379. EasyLevel:
  380.     mov [speed],3
  381.     call play
  382. MedLevel:
  383.     mov [speed],6
  384.     call play
  385. HardLevel:
  386.     mov[speed],12
  387.     call play
  388. goBack:
  389.     call menuDis
  390. endp
  391. proc scoresDis
  392.  
  393.     call settextmode
  394.     call OpenFileText
  395.     call ReadFile
  396.     call CloseFileText
  397.     mov ah,9h
  398.     mov dx,offset buffer
  399.     int 21h
  400.     call disAnyKey
  401.     mov ah,0h
  402.     int 16h
  403.     ret
  404. endp
  405. ;================================
  406. ; movement of the player
  407. ;================================
  408. proc printsTheCubes
  409.     cmp [hits],5
  410.     je hitsUpdate
  411.     cmp [hits],6
  412.     je hitsUpdate2
  413.     cmp [hits],7
  414.     je hitsUpdate3
  415.     jmp prints
  416. hitsUpdate:
  417.     mov cl,[hits]
  418.     mov [message],cl
  419.     call OpenFileText
  420.     call WriteToFile
  421.     call CloseFileText
  422.     mov [isprintcube2],1
  423.     jmp prints
  424. hitsUpdate2:
  425.     mov [isprintcube3],1
  426.     jmp prints
  427. hitsUpdate3:
  428.     mov [isprintcube4],1
  429.     jmp prints
  430. prints:
  431.     cmp [isprintcube],1
  432.     je ToPrintcube
  433. isPrintableCube2:
  434.     cmp [isprintcube2],1
  435.     je ToPrintcube2
  436. isPrintableCube3:
  437.     cmp [isprintcube3],1
  438.     je ToPrintcube3
  439. isPrintableCube4:
  440.     cmp [isprintcube4],1
  441.     je ToPrintcube4
  442.     ret
  443. ToPrintcube:
  444.     call printcube
  445.     jmp isPrintableCube2
  446. ToPrintcube2:
  447.     call printcube2
  448.     jmp isPrintableCube3
  449. ToPrintcube3:
  450.     call printcube3
  451.     jmp isPrintableCube4
  452. ToPrintcube4:
  453.     call printcube4
  454.     ret
  455. endp
  456. proc printcube
  457.     mov [x3],0
  458.     cmp [ycube],190
  459.     jae resetThings
  460.     mov cx,[ycube]
  461.     mov [ydeath],cx
  462.     call play2
  463.     call play4
  464.     mov bx,[speed]
  465.     add [ycube],bx
  466.     ret
  467. resetThings:
  468.     inc [hits]
  469.     mov cx,[ycube]
  470.     sub cx,10
  471.     mov [ydeath],cx
  472.     call play3
  473.     call checkDeath
  474.     mov [ycube],0
  475.     ret
  476. endp
  477.  
  478. proc printcube2
  479.     mov [x3],60
  480.     cmp [ycube2],180
  481.     je resetThings2
  482.     mov cx,[ycube2]
  483.     mov [ydeath],cx
  484.     call play2
  485.     call play4
  486.     mov bx,[speed]
  487.     add [ycube2],bx
  488.     ret
  489. resetThings2:
  490.     mov cx,[ycube2]
  491.     sub cx,10
  492.     mov [ydeath],cx
  493.     call play3
  494.     call checkDeath
  495.     mov [ycube2],0
  496.     ret
  497. endp
  498.  
  499. proc printcube3
  500.     mov [x3],120
  501.     cmp [ycube3],180
  502.     je resetThings3
  503.     mov cx,[ycube3]
  504.     mov [ydeath],cx
  505.     call play2
  506.     call play4
  507.     mov bx,[speed]
  508.     add [ycube3],bx
  509.     ret
  510. resetThings3:
  511.     mov cx,[ycube3]
  512.     sub cx,10
  513.     mov [ydeath],cx
  514.     call play3
  515.     call checkDeath
  516.     mov [ycube3],0
  517.     ret
  518. endp
  519.  
  520. proc printcube4
  521.     mov [x3],180
  522.     cmp [ycube4],180
  523.     je resetThings4
  524.     mov cx,[ycube4]
  525.     mov [ydeath],cx
  526.     call play2
  527.     call play4
  528.     mov bx,[speed]
  529.     add [ycube4],bx
  530.     ret
  531. resetThings4:
  532.     mov cx,[ycube4]
  533.     sub cx,10
  534.     mov [ydeath],cx
  535.     call play3
  536.     call checkDeath
  537.     mov [ycube4],0
  538.     ret
  539. endp
  540.  
  541.  
  542. proc resetValues
  543.     mov [x3],0
  544.     mov [ydeath],0
  545.     mov [ycube],0
  546.     mov [ycube2],0
  547.     mov [ycube3],0
  548.     mov [ycube4],0
  549.     mov [x],150
  550.     mov [y],190
  551.     mov [isprintcube2],0
  552.     mov [isprintcube3],0
  553.     mov [isprintcube4],0
  554.     mov [hits],0
  555.     ret
  556. endp
  557.  
  558. proc checkDeath
  559.     mov cx,28
  560.     mov bx,[x]
  561.     cmp bx,[x3]
  562.     jl checkkkk
  563.     add [x3],20
  564. checkkkk:
  565.     cmp [x3],bx
  566.     je gameOver
  567.     inc bx
  568.     loop checkkkk
  569.     ret
  570. gameOver:
  571.     call resetValues
  572.     call fillscrn
  573.     call menuDis
  574.     ret
  575. endp
  576.  
  577.  
  578.  
  579. proc movement
  580.     push bp
  581.     mov bp,sp
  582.     PushAll
  583. Waitagain:
  584.     call w8time
  585.     call printsTheCubes
  586.     in al,64h
  587.     cmp al,10b
  588.     je Waitagain
  589.     in al,60h
  590.     cmp al,[Right]
  591.     je RightMov
  592.     cmp al,[Left]
  593.     je LeftMov
  594.     cmp al,27
  595.     je ENDOF
  596.     call deleteLeft
  597.     jmp Waitagain
  598.    
  599. ENDOF:
  600.     pop bp
  601.     ret
  602. RightMov:
  603.     cmp [x],300
  604.     je chngright
  605.     add [x],5
  606.     push offset Ship
  607.     push 0
  608.     push 10
  609.     push 20
  610.     push [word ptr x]
  611.     push [word ptr y]
  612.     call deleteLeft
  613.     call PrintPic
  614.     jmp Waitagain
  615.  
  616. chngright:
  617.     sub [x],5
  618.     jmp Waitagain
  619.    
  620. LeftMov:
  621.     cmp [x],0
  622.     je chngleft
  623.     sub [x],5
  624.     push offset Ship
  625.     push 0
  626.     push 10
  627.     push 20
  628.     push [word ptr x]
  629.     push [word ptr y]
  630.     call PrintPic
  631.     call deleteRight
  632.     jmp Waitagain
  633.  
  634. chngleft:
  635.     add [x],5
  636.     jmp Waitagain
  637.    
  638.    
  639.    
  640. endp
  641.  
  642.  
  643.  
  644. ;================================
  645. ; files
  646. ;================================
  647.  
  648. proc ReadFile
  649. ; Read file
  650.     mov ah,3Fh
  651.     mov bx, [filehandle2]
  652.     mov cx, 100
  653.     mov dx,offset buffer
  654.     int 21h
  655. ret
  656. endp
  657.  
  658. proc OpenFileText
  659. ; Open file for reading and writing
  660.     mov ah, 3Dh
  661.     mov al, 2
  662.     mov dx, offset filename
  663.     int 21h
  664.     jc openerror2
  665.     mov [filehandle2], ax
  666.     ret
  667. openerror2:
  668.     mov dx, offset ErrorMsg2
  669.     mov ah, 9h
  670.     int 21h
  671.     ret
  672. endp
  673.  
  674.  
  675. proc WriteToFile
  676. ; Write message to file
  677.     mov ah,40h
  678.     mov bx, [filehandle2]
  679.     mov cx,24
  680.     mov dx,offset Message
  681.     int 21h
  682.     ret
  683. endp WriteToFile
  684.  
  685.  
  686. proc CloseFileText
  687. ; Close file
  688.     mov ah,3Eh
  689.     mov bx, [filehandle2]
  690.     int 21h
  691.     ret
  692.    
  693. endp
  694.  
  695. proc disAnyKey
  696.     mov ah,9h
  697.     mov dx, offset presskeycunt
  698.     int 21h
  699.     ret
  700. endp
  701.  
  702.  
  703. proc play
  704.     xor ah,ah
  705.     xor al,al
  706.     xor dx,dx
  707.     call SetVideoMode
  708.     call fillscrn
  709.     push offset Ship
  710.     call OpenFile
  711.     call ReadHeader
  712.     call ReadPalette
  713.     call CopyPal
  714.     push 0
  715.     push 10
  716.     push 20
  717.     push [word ptr x]
  718.     push [word ptr y]
  719.     call PrintCharacter
  720.     call CloseFile
  721.     call movement
  722.     ret
  723. endp
  724.  
  725. proc w8time
  726.     mov cx ,20000
  727. loosoos:
  728.     mov [y4],cx
  729.     call w82
  730.     loop loosoos
  731.     mov cx, [x4]
  732.     ret
  733. endp
  734. proc w82
  735.     mov cx, 1
  736. asdsad:
  737.    
  738.     loop asdsad
  739.     mov cx,[y4]
  740.     ret
  741. endp
  742. proc fillscrn
  743. line2:
  744.     cmp [x2],320
  745.     je fixthea
  746.     mov al,[colorCube]
  747.     mov bl,0
  748.     mov cx,[x2]
  749.     mov dx,[y2]
  750.     mov ah,0ch
  751.     int 10h
  752.     inc [x2]
  753.     jmp line2
  754.  
  755. fixthea:
  756.     cmp [y2],200
  757.     je finishthat
  758.     inc [y2]
  759.     mov [x2],0
  760.     jmp line2
  761. finishthat:
  762.     mov [x2],0
  763.     mov [y2],0
  764.     ret
  765. endp
  766.  
  767.  
  768. proc play2
  769.  
  770.     push offset cuber
  771.     call OpenFile
  772.     call ReadHeader
  773.     call ReadPalette
  774.     call CopyPal
  775.     push 0
  776.     push 20
  777.     push 20
  778.     push [x3]
  779.     push [ydeath]
  780.     call PrintCharacter
  781.     call CloseFile
  782.     ret
  783. endp
  784.  
  785. proc play3
  786.    
  787.     push offset deleter
  788.     call OpenFile
  789.     call ReadHeader
  790.     call ReadPalette
  791.     call CopyPal
  792.     push 0
  793.     push 20
  794.     push 20
  795.     push [x3]
  796.     push [ydeath]
  797.     call PrintCharacter
  798.     call CloseFile
  799.     ret
  800. endp
  801.  
  802.  
  803. proc play4
  804.     sub [ydeath],10
  805.     push offset deleter2
  806.     call OpenFile
  807.     call ReadHeader
  808.     call ReadPalette
  809.     call CopyPal
  810.     push 0
  811.     push 10
  812.     push 20
  813.     push [x3]
  814.     push [ydeath]
  815.     call PrintCharacter
  816.     call CloseFile
  817.     add [ydeath],10
  818.     ret
  819. endp
  820.  
  821. proc deleteRight
  822.     mov bx,[x]
  823.     mov [x3],bx
  824.     add [x3],20
  825.     push offset deleter
  826.     call OpenFile
  827.     call ReadHeader
  828.     call ReadPalette
  829.     call CopyPal
  830.     push 0
  831.     push 20
  832.     push 20
  833.     push [x3]
  834.     push 190
  835.     call PrintCharacter
  836.     call CloseFile
  837.     ret
  838. endp
  839.  
  840. proc deleteLeft
  841.     mov bx,[x]
  842.     mov [x3],bx
  843.     sub [x3],20
  844.     push offset deleter
  845.     call OpenFile
  846.     call ReadHeader
  847.     call ReadPalette
  848.     call CopyPal
  849.     push 0
  850.     push 20
  851.     push 20
  852.     push [x3]
  853.     push 190
  854.     call PrintCharacter
  855.     call CloseFile
  856.     xor bx,bx
  857.     ret
  858. endp
  859. start:
  860.     mov ax, @data
  861.     mov ds, ax
  862.    
  863.     call menuDis
  864.        
  865. exit:
  866.     mov ax, 4c00h
  867.     int 21h
  868. END start
  869.     ;mov cx,6
  870. ;losos:
  871.     ;cmp [x3],300
  872.     ;je losos2
  873.     ;call play2
  874.     ;add [x3],50
  875.     ;loop losos
  876. ;losos2:
  877.     ;mov [x3],0
  878. ;losos33:
  879.     ;cmp [y3],160
  880.     ;je losos4
  881.     ;call play2
  882. ;   call w8time
  883. ;   call play3
  884. ;   add [y3],2
  885.    
  886. ;   jmp losos33
  887. ;losos4:   
  888.     ;call play3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement