home *** CD-ROM | disk | FTP | other *** search
/ Computer Installation Guide - Dragon Clan Series / CD2.iso / TXT / T2E41 / COLOR.ASM < prev    next >
Encoding:
Assembly Source File  |  1996-01-01  |  6.4 KB  |  207 lines

  1. ;-------------------------------------------------------;
  2. ;                                                       ;
  3. ;  Txt2Exe V4.00                                        ;
  4. ;      - ╘┤│╠╨≥  ╤╒╔½▒φ│╠╨≥  V1.00                      ;
  5. ;                                                       ;
  6. ;  │╠╩╜╫≈╒▀:═⌠└±╚²   ▒ú┴⌠╦∙╙╨░µ╚¿!      1995.6          ;
  7. ;                                                       ;
  8. ;      ╥╘╧┬┤·┬δ╓╨╙╨╣╪░µ╚¿╡─╨┼╧ó▓╗╡├╨▐╕─,╥╘╧┬┤·┬δ▓╗╡├    ;
  9. ;  ╙├╙┌╔╠╥╡─┐╡─íú                                       ;
  10. ;                                                       ;
  11. ;      ▒╛│╠╨≥╓╗╘┌╬≈╬─╗≥╓º│╓╓▒╜╙╨┤╞┴╡─║║╫╓╧╡═│╧┬╘╦╨╨     ;
  12. ;                                                       ;
  13. ;      ▒╛│╠╨≥╙ª╫¬╗╗╬¬COM╨╬╩╜╘┘╘╦╨╨, ╜¿╥Θ╙├╥╘╧┬▓╜╓Φ╓╞╫≈: ;
  14. ;                                                       ;
  15. ;              tasm   color                             ;
  16. ;              tlink  color /t                          ;
  17. ;                                                       ;
  18. ;-------------------------------------------------------;
  19.  
  20. ;  ╨▐╕─╡»│÷╤╒╔½▒φ╡─╚╚╝ⁿ╟δ╨▐╕─╧┬├µ╥╗╨╨╓╨í░EQUí▒╓«║≤╡─╖√║┼
  21. ;
  22. ;  └²╚τ, ╜½╚╚╝ⁿ╨▐╕─╬¬ Alt C ╝ⁿ, ╧┬├µ╥╗╨╨┐┤╞≡└┤┐╔─▄╧≤╒Γ╤∙:
  23. ;       HotKey     EQU      kb_Alt_C
  24. ;
  25. ;  ╨▐╕─═Ω╚╚╝ⁿ║≤,╟δ╜½╠ß╩╛╨┼╧ó╓╨╡─╚╚╝ⁿ├√═¼▓╜╨▐╕─
  26.  
  27. HotKey          EQU     kb_Alt_C        ; ╚╚╝ⁿ╟δ╨▐╕─▒╛╨╨í░EQUí▒╓«║≤╡─╖√║┼
  28.  
  29. kb_Alt_Z        EQU     2c00H           ; ╘ñ╧╚╢¿╥σ┴╦╝╕╕÷╚╚╝ⁿ╡─╖√║┼╣⌐╤í╙├
  30. kb_Alt_X        EQU     2d00H
  31. kb_Alt_C        EQU     2e00H
  32.  
  33. videoSeg        EQU     0b800H          ; ▓╩╧╘╩╙╞╡╗║│σ╟°╢╬╓╖
  34.  
  35. code segment
  36.      assume cs:code,ds:code
  37.  
  38.     org 100H
  39.  
  40.  start:
  41.     jmp         begin
  42.  
  43.     vect16      DD      0
  44.  
  45.  isr16:
  46.     cmp         ah,0
  47.     jz          @ir8
  48.     cmp         ah,10H
  49.     jz          @ir8
  50.     cmp         ax,'═⌠'
  51.     jnz         @ir6
  52.     mov         ax,'└±'
  53.     mov         bx,'╚²'
  54.     mov         cx,'╤╒'
  55.     mov         dx,'╔½'
  56.     iret
  57.  @ir6:
  58.     jmp         cs:vect16
  59.  @ir8:
  60.     pushf
  61.     call        cs:vect16
  62.     cmp         ax,HotKey
  63.     je          @ir10
  64.     iret
  65.  @ir10:
  66.     sti
  67.     push        es
  68.     push        ds
  69.     push        si
  70.     push        di
  71.     push        cx
  72.     push        bx
  73.  
  74.     mov         ax,1003H                ; ╔Φ╓├╬¬╕▀┴┴╢╚
  75.     mov         bh,0
  76.     int         10H
  77.  
  78.     mov         ax,cs                   ; ▒ú┤µ╞┴─╗╫ε╢Ñ╢╦─┌╚▌
  79.     mov         es,ax
  80.     mov         ax,videoSeg
  81.     mov         ds,ax
  82.     mov         si,0
  83.     mov         di,offset screenBuffer
  84.     mov         cx,160
  85.     cld
  86.     rep movsb
  87.  
  88.     mov         ax,cs                   ; ╗¡│÷╤╒╔½▒φ
  89.     mov         ds,ax
  90.     mov         ax,videoSeg
  91.     mov         es,ax
  92.     mov         si,offset colorTable
  93.     mov         di,0
  94.     mov         cx,160
  95.     rep movsb
  96.  
  97.     mov         ah,0                    ; ╡├╡╜░┤╝ⁿ
  98.     pushf
  99.     call        vect16
  100.     push        ax
  101.  
  102.     mov         di,0                    ; ╗╓╕┤╞┴─╗─┌╚▌
  103.     mov         si,offset screenBuffer
  104.     mov         cx,160
  105.     rep movsb
  106.  
  107.     pop         ax
  108.  
  109.     pop         bx
  110.     pop         cx
  111.     pop         di
  112.     pop         si
  113.     pop         ds
  114.     pop         es
  115.     iret
  116.  
  117.  screenBuffer   db 160 dup(0)
  118.  colorTable     db 20H,00H,20H,00H,'0',0fH,20H,00H,20H,00H
  119.      db 20H,10H,20H,10H,'1',1fH,20H,10H,20H,10H
  120.      db 20H,20H,20H,20H,'2',2fH,20H,20H,20H,20H
  121.      db 20H,30H,20H,30H,'3',3fH,20H,30H,20H,30H
  122.      db 20H,40H,20H,40H,'4',4fH,20H,40H,20H,40H
  123.      db 20H,50H,20H,50H,'5',5fH,20H,50H,20H,50H
  124.      db 20H,60H,20H,60H,'6',6fH,20H,60H,20H,60H
  125.      db 20H,70H,20H,70H,'7',7fH,20H,70H,20H,70H
  126.      db 20H,80H,20H,80H,'8',8fH,20H,80H,20H,80H
  127.      db 20H,90H,20H,90H,'9',9fH,20H,90H,20H,90H
  128.      db 20H,0a0H,20H,0a0H,'a',0a0H,20H,0a0H,20H,0a0H
  129.      db 20H,0b0H,20H,0b0H,'b',0b0H,20H,0b0H,20H,0b0H
  130.      db 20H,0c0H,20H,0c0H,'c',0c0H,20H,0c0H,20H,0c0H
  131.      db 20H,0d0H,20H,0d0H,'d',0d0H,20H,0d0H,20H,0d0H
  132.      db 20H,0e0H,20H,0e0H,'e',0e0H,20H,0e0H,20H,0e0H
  133.      db 20H,0f0H,20H,0f0H,'f',0f0H,20H,0f0H,20H,0f0H
  134.  
  135.  msgCopyright   db 0dH,'ColorTable  V1.00   '
  136.                 db '(C)Copyright by LiSan Wang.  '
  137.                 db '1995.6   All rights reserved. ',0dH,0aH,'$'
  138.  
  139.  ; ╚τ╣√─π╨▐╕─┴╦╚╚╝ⁿ, ╟δ╜½╥╘╧┬╠ß╩╛╓╨╡─╚╚╝ⁿ╠ß╩╛╥▓═¼╩▒╨▐╕─
  140.  
  141.  msgOK          db 'Install OK      ---> Press   Alt C$'
  142.  msgInstall     db 07H,'Has installed. $'
  143.  
  144.  begin:
  145.     mov         dx,offset msgCopyright  ; ╧╘╩╛░µ╚¿╨┼╧ó
  146.     mov         ah,9
  147.     int         21H
  148.     mov         ax,'═⌠'                 ; ╝∞▓Γ╩╟╖±╥╤╛¡╫ñ┴⌠
  149.     int         16H
  150.     cmp         ax,'└±'
  151.     jnz         @bc10
  152.     cmp         bx,'╚²'
  153.     jnz         @bc10
  154.     cmp         cx,'╤╒'
  155.     jnz         @bc10
  156.     cmp         dx,'╔½'
  157.     jnz         @bc10
  158.     mov         dx,offset msgInstall    ; ╥╤╛¡╫ñ┴⌠╘≥═╦│÷
  159.     mov         ah,9
  160.     int         21H
  161.     mov         ax,4c00H
  162.     int         21H
  163.  @bc10:
  164.     mov         ax,3516H                ; ╗±╚í16H╓╨╢╧╧≥┴┐
  165.     int         21H
  166.     mov         word ptr vect16,bx
  167.     mov         word ptr vect16+2,es
  168.     mov         ax,2516H                ; ╔Φ╓├╨┬16H╓╨╢╧╧≥┴┐
  169.     mov         dx,offset isr16
  170.     int         21H
  171.     mov         dx,offset msgOK         ; ╧╘╩╛╫ñ┴⌠╨┼╧ó
  172.     mov         ah,9
  173.     int         21H
  174.     mov         dx,offset msgCopyright  ; ╫ñ┴⌠═╦│÷
  175.     shr         dx,4
  176.     inc         dx
  177.     mov         ax,3100H
  178.     int         21H
  179.  
  180. code ends
  181.      end start
  182.  
  183. ;  ║≤╗░
  184. ;
  185. ;      ▒α╒Γ╕÷│╠╨≥,╣╪╝ⁿ╥¬╜Γ╛÷┴╜╕÷╝╝╩⌡╬╩╠Γ: ╥╗╩╟╖└╓╣╓╪╕┤╫ñ┴⌠;  ╢■
  186. ;  ╩╟╩╡╧╓╞┴─╗─┌╚▌╡─▒ú┤µíó╤╒╔½▒φ╡─╧╘╩╛╝░╞┴─╗─┌╚▌╡─╗╓╕┤íú
  187. ;      ╬¬╖└╓╣╓╪╕┤╫ñ┴⌠, ╬╥▓╔╙├┴╦╥╗╕÷╝≥╡Ñ╡─╖╜╖¿, ╛▀╠σ╩╡╧╓┐╔▓╬╝√╔╧
  188. ;  ├µ╡─│╠╨≥╢╬íú
  189. ;      ╡┌╢■╕÷╝╝╩⌡╬╩╠Γ╡─╜Γ╛÷╖╜╖¿╥╗░π╙╨┴╜╓╓: ╓▒╜╙▓┘╫≈╩╙╞╡╗║│σ╟°║═
  190. ;  ╡≈╙├▒Ω╫╝10H└α╧╘╩╛╓╨╢╧íú
  191. ;      ▒╛└┤, ╬¬┴╦╩╣╒Γ╕÷│╠╨≥╛▀▒╕┴╝║├╡─═¿╙├╨╘, ╥╗┐¬╩╝╬╥▓╔╙├╡─╩╟╡≈
  192. ;  ╙├▒Ω╫╝10H└α╧╘╩╛╓╨╢╧╡─╖╜╖¿íú▓Γ╩╘╡─╩▒║≥,╘┌╬≈╬─▓┘╫≈╧╡═│║══╝╨╬─ú
  193. ;  ╩╜╧┬╣ñ╫≈╒²│ú, ╡½╘┌╓º│╓╓▒╜╙╨┤╞┴╡──ú╩╜╧┬╤╒╔½▒φ╡─▒│╛░╔½╬▐╖¿╧╘╩╛
  194. ;  │÷└┤íú╬╥▓╔╙├UCDOS 3.1╫≈╬¬▓Γ╩╘║║╫╓▓┘╫≈╧╡═│íú
  195. ;      ╬▐─╬,╓╗─▄╙├╓▒╜╙▓┘╫≈╩╙╞╡╗║│σ╟°╡─╖╜╖¿▒α│╠┴╦,▓·╔·╡─║≤╣√╩╟═¿
  196. ;  ╙├╨╘╩▄╡╜╧▐╓╞,╓╗─▄╘┌╬≈╬─╗≥╓▒╜╙╨┤╞┴╡─║║╫╓╧╡═│╧┬╘╦╨╨íú
  197. ;      ╫╘╚╗, ╬╥╥▓╧δ╣²╜½╒Γ┴╜╓╓╖╜╖¿╫█║╧╞≡└┤, ▓╗╣², ╬╥╗╣╩╟╡╚╦∙╬╜╡─
  198. ;  í░╓╨╬─╞╜╠¿í▒╒µ╒²╙δ╬≈╬─10H╓╨╢╧═Ω╚½╝µ╚▌╩▒╘┘╦╡░╔íú
  199. ;
  200. ;      ╬╥╗¡╤╒╔½▒φ╩▒╙├╥╘╧┬╓╨╢╧╡≈╙├╨≥┴╨:
  201. ;          ╚δ┐┌:        ax  = 1303H
  202. ;                       cx  = 80                 ╙╨80╕÷╫╓╖√
  203. ;                       dx  = 0                  0╨╨0┴╨
  204. ;                       es  = cs
  205. ;                       bp  = offset colorTabel
  206. ;                       int  10H                 ╡≈╙├10H╧╘╩╛╓╨╢╧
  207.