Advertisement
Guest User

Untitled

a guest
Mar 27th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.02 KB | None | 0 0
  1. .model tiny
  2. .code
  3. org 100h
  4. start:
  5. mov ax, 0b800h ; заливка
  6. mov es, ax
  7. mov al, 219
  8. mov cx, 80*25
  9. xor di, di
  10. mov ah, 2
  11. rep stosw
  12.  
  13. mov ah, 0fh
  14. int 10h
  15. push ax
  16. mov al, ah
  17. mov cl, ah
  18. xor ah, ah
  19. sub ax, 34
  20. shl cx, 3
  21. add ax, cx
  22.  
  23. mov di, ax ;640+46
  24. mov ah, 20h
  25. mov al, 186
  26. mov cx, 18
  27. pop dx
  28. push dx
  29. shl dh, 1
  30. sub dh, 2
  31. mov dl, dh
  32. xor dh, dh
  33.  
  34. vertic_line1:
  35. stosw
  36. add di, dx
  37.  
  38. loop vertic_line1
  39.  
  40. pop ax
  41. push ax
  42. mov al, ah
  43. mov cl, ah
  44. xor ah, ah
  45. add ax, 36
  46. shl cx, 3
  47. add ax, cx
  48.  
  49. mov di, ax ;640+116
  50. mov ah, 20h
  51. mov al, 186
  52. mov cx, 18
  53.  
  54. vertic_line2:
  55. stosw
  56. add di, dx
  57.  
  58. loop vertic_line2
  59.  
  60. pop ax
  61. push ax
  62. mov al, ah
  63. mov cl, ah
  64. xor ah, ah
  65. sub ax, 30
  66. shl cx, 3
  67. add ax, cx
  68.  
  69. mov di, ax ;640+50
  70. mov ah, 20h
  71. mov al, 179
  72. mov cx, 18
  73.  
  74. vertic_line3:
  75. stosw
  76. add di, dx
  77.  
  78. loop vertic_line3
  79.  
  80. pop ax
  81. push ax
  82. mov al, ah
  83. mov cl, ah
  84. xor ah, ah
  85. mov dl, 6
  86. mul dl
  87. sub cx, 34
  88. add ax, cx
  89.  
  90. mov di, ax; 480+46 верхушка
  91. mov ah, 20h
  92. mov al, 201
  93. stosw
  94.  
  95. mov al, 205
  96. stosw
  97.  
  98. mov al, 209
  99. stosw
  100.  
  101. mov al, 205
  102. mov cx, 32
  103. repnz stosw
  104.  
  105. mov al, 187
  106. stosw ;------------
  107.  
  108. xor al, al
  109. pop dx
  110. push dx
  111. mov dl, dh
  112. mov cl, dh
  113. xor dh, dh
  114. sub dx, 32
  115. shl cx, 3
  116. add dx, cx
  117.  
  118. mov di, dx ;640+48
  119. stosw
  120.  
  121. add di, 2
  122. mov al, 48
  123.  
  124. mov cx, 10
  125. header_numb_hor:
  126. stosw
  127. push ax
  128.  
  129. xor al, al
  130. stosw
  131.  
  132. pop ax
  133. inc al
  134.  
  135. loop header_numb_hor
  136.  
  137. mov al, 65
  138. mov cx, 6
  139. header_let_hor:
  140. stosw
  141. push ax
  142.  
  143. xor al, al
  144. stosw
  145.  
  146. pop ax
  147. inc al
  148.  
  149. loop header_let_hor
  150.  
  151. pop ax
  152. push ax
  153. mov al, ah
  154. mov cl, ah
  155. xor ah, ah
  156. mov dl, 12
  157. mul dl
  158. sub cx, 32
  159. add ax, cx
  160.  
  161. mov di, ax ;6*160+48
  162. mov ah, 20h
  163. mov al, 48
  164. mov cx, 10
  165. pop dx
  166. push dx
  167. shl dh, 1
  168. sub dh, 2
  169. mov dl, dh
  170. xor dh, dh
  171. header_numb_ver:
  172. stosw
  173. add di, dx
  174.  
  175. inc al
  176. loop header_numb_ver
  177.  
  178. mov al, 65
  179. mov cx, 6
  180. header_let_ver:
  181. stosw
  182. add di, dx
  183.  
  184. inc al
  185. loop header_let_ver
  186.  
  187. pop ax
  188. push ax
  189. mov al, ah
  190. mov cl, ah
  191. xor ah, ah
  192. mov dl, 10
  193. mul dl
  194. sub cx, 34
  195. add ax, cx
  196.  
  197. mov di, ax ;800+46 3-я строка
  198. mov ah, 20h
  199. mov al, 199
  200. stosw
  201.  
  202. mov al, 196
  203. stosw
  204.  
  205. mov al, 197
  206. stosw
  207.  
  208. mov al, 196
  209. mov cx, 32
  210. repnz stosw
  211.  
  212. mov al, 182
  213. stosw ;-------
  214.  
  215. pop ax
  216. push ax
  217. mov al, ah
  218. mov cl, ah
  219. xor ah, ah
  220. mov dl, 44
  221. mul dl
  222. sub cx, 34
  223. add ax, cx
  224.  
  225. mov di, ax ;22*160+46 последняя
  226. mov ah, 20h
  227. mov al, 200
  228. stosw
  229.  
  230. mov al, 205
  231. stosw
  232.  
  233. mov al, 207
  234. stosw
  235.  
  236. mov al, 205
  237. mov cx, 32
  238. repnz stosw
  239.  
  240. mov al, 188
  241. stosw ;-----------
  242.  
  243. mov si, 256; непосредственно сам квадрат
  244.  
  245. pop ax
  246. push ax
  247. mov al, ah
  248. mov cl, ah
  249. xor ah, ah
  250. mov dl, 12
  251. mul dl
  252. sub cx, 28
  253. add ax, cx
  254. mov di, ax
  255.  
  256. mov ah, 20h
  257. xor al, al
  258.  
  259. cycling:
  260. stosw
  261. push ax
  262.  
  263. xor al, al
  264. stosw
  265.  
  266. pop ax
  267. inc al
  268. test al, 0Fh
  269. jnz ending
  270.  
  271. pop dx
  272. push dx
  273. mov dl, dh
  274. xor dh, dh
  275. sub dl, 32
  276. shl dl, 1
  277. add di, dx
  278.  
  279. ending:
  280. dec si
  281. jnz cycling
  282. pop ax
  283.  
  284. xor ah, ah
  285. int 16h
  286.  
  287. mov al, 219
  288. mov cx, 80*25
  289. xor di, di
  290. xor ah, ah
  291. rep stosw
  292.  
  293. ret
  294. end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement