home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 July / Chip_1998-07_cd.bin / ctenari / Soban / KURZOR / KURZOR3.ASM < prev    next >
Assembly Source File  |  1994-12-08  |  2KB  |  143 lines

  1.         org 100h
  2.         jmp start
  3.         db 'PROGRAM NAPROGRAMOVAL PETR µOB╡╒ (c) 1994 ; Ostrava'
  4. start:
  5.         mov al,[80h]
  6.         cmp al,00h
  7.         jz kurzor1
  8.         mov bx,81h
  9.         call preskoc_mezery
  10.         cmp al,'/'
  11.         jnz error
  12.         inc bx
  13.         call preskoc_mezery
  14.         sub al,30h
  15.         jc error
  16.         call hex
  17.         mov ch,al
  18.         sal ch,4
  19.         inc bx
  20.         call preskoc_mezery
  21.         sub al,30h
  22.         jc error
  23.         call hex
  24.         or ch,al
  25.         inc bx
  26.         call preskoc_mezery
  27.         sub al,30h
  28.         jc error
  29.         call hex
  30.         mov cl,al
  31.         sal cl,4
  32.         inc bx
  33.         call preskoc_mezery
  34.         sub al,30h
  35.         jc error
  36.         call hex
  37.         or cl,al
  38.         mov ah,01h
  39.         int 10h
  40.         mov ax,4c00h
  41.         int 21h
  42.         hlt
  43. error:
  44.         mov ah,09h
  45.         mov dx,napoveda
  46.         int 21h
  47.         mov ax,4c01h
  48.         int 21h
  49.         hlt
  50. kurzor1:
  51.         mov ah,09h
  52.         mov dx,hlaseni
  53.         int 21h
  54.         mov cx,4707h
  55. dalsi:
  56.         push cx
  57.         and cx,0111111100011111b
  58.         mov ah,01h
  59.         int 10h
  60.         mov ah,08h
  61.         int 21h
  62.         cmp al,00h
  63.         jnz preskoc
  64.         mov ah,08h
  65.         int 21h
  66. preskoc:
  67.         pop cx
  68.         cmp al,0dh
  69.         jz konec
  70.         cmp al,4dh
  71.         jnz loop1
  72.         dec ch
  73. loop1:
  74.         cmp al,4bh
  75.         jnz loop2
  76.         inc ch
  77. loop2:
  78.         cmp al,48h
  79.         jnz loop3
  80.         dec cl
  81. loop3:
  82.         cmp al,50h
  83.         jnz dalsi
  84.         inc cl 
  85.         jmp dalsi
  86.  
  87. konec:
  88.         pop cx
  89.         mov ah,4ch
  90.         int 21h
  91.         hlt
  92. preskoc_mezery:
  93.         mov al,[bx]
  94.         cmp al,' '
  95.         jz mezera
  96.         ret
  97. mezera:
  98.         inc bx
  99.         jmp preskoc_mezery
  100. hex:
  101.         and al,0011111b
  102.         cmp al,0ah
  103.         jnc hex1
  104.         ret
  105. hex1:
  106.         sub al,07h
  107.         ret
  108.  
  109. hlaseni:
  110.         db 0ah,0dh
  111.         db '  Program kurzor v 1.02 (c) 6.12.1994 S&S'
  112.         db 0ah,0dh
  113.         db '     ovládání:'
  114.         db 0ah,0dh
  115.         db '                 ',1ah
  116.         db 0ah,0dh
  117.         db '                 ',1bh
  118.         db 0ah,0dh
  119.         db '                 ',18h
  120.         db 0ah,0dh
  121.         db '                 ',19h
  122.         db 0ah,0dh
  123.         db '             ENTER akceptování zobrazeného kurzoru.'
  124.         db 0ah,0ah,0dh
  125.         db '                      ',0b0h,'$'
  126.  
  127. napoveda:
  128.         db 0ah,0dh
  129.         db '  Program kurzor v 1.02 (c) 6.12.1994 S&S'
  130.         db 0ah,0dh
  131.         db 0ah,0dh
  132.         db 0ah,0dh,'                 ┌┬┬┬─ sestnáctkové císlo'
  133.         db 0ah,0dh,'                 ││││'
  134.         db 0ah,0dh,'     kurzor.com /FFFF'
  135.         db 0ah,0dh
  136.         db 0ah,0dh
  137.         db 0ah,0dh,'príklady:'
  138.         db 0ah,0dh
  139.         db 0ah,0dh,'      kurzor.com /0101'
  140.         db 0ah,0dh,'      kurzor.com /4707'
  141.         db 0ah,0dh,'      kurzor.com /450A'
  142.         db 0ah,0dh,'$'
  143.