home *** CD-ROM | disk | FTP | other *** search
/ The Equalizer BBS / equalizer-bbs-collection_2004.zip / equalizer-bbs-collection / DEMOSCENE-STUFF / TIMESRC.ZIP / L1P6.M < prev    next >
Text File  |  1994-02-24  |  4KB  |  211 lines

  1.  
  2. ;▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  3. ; DATA
  4. ;▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  5. align 2
  6. d6locs0         label   byte
  7. temp0=0
  8. temp1=79
  9. temp2=0
  10. temp3=67
  11. temp4=11h
  12. rept 64
  13.                 db low(temp0*100+temp2),high(temp0*100+temp2),temp4,temp2+1
  14.   temp0=temp0+temp1
  15.   if temp0 gt 199
  16.     temp0=temp0-200
  17.     temp1=temp1-3
  18.   endif
  19.   temp2=temp2+temp3
  20.   if temp2 gt 79
  21.     temp2=temp2-80
  22.     temp3=temp3-4
  23.   endif
  24.   if temp4 eq 11h
  25.     temp4=22h
  26.   else
  27.     if temp4 eq 22h
  28.       temp4=44h
  29.     else
  30.       if temp4 eq 44h
  31.         temp4=88h
  32.       else
  33.         temp4=11h
  34.       endif
  35.     endif
  36.   endif
  37. endm
  38. d6locs1         label   byte
  39. temp0=56
  40. temp1=95
  41. temp2=49
  42. temp3=59
  43. temp4=33h
  44. rept 32
  45.                 db low(temp0*100+temp2),high(temp0*100+temp2),temp4,temp2+1
  46.   temp0=temp0+temp1
  47.   if temp0 gt 199
  48.     temp0=temp0-200
  49.     temp1=temp1-6
  50.   endif
  51.   temp2=temp2+temp3
  52.   if temp2 gt 79
  53.     temp2=temp2-80
  54.     temp3=temp3-5
  55.   endif
  56.   temp4=temp4 xor 0ffh
  57. endm
  58.  
  59. d6locs2         label   byte
  60. temp0=132
  61. temp1=96
  62. temp2=13
  63. temp3=73
  64. rept 16
  65.                 db low(temp0*100+temp2),high(temp0*100+temp2),?,temp2+1
  66.   temp0=temp0+temp1
  67.   if temp0 gt 199
  68.     temp0=temp0-200
  69.     temp1=temp1-8
  70.   endif
  71.   temp2=temp2+temp3
  72.   if temp2 gt 79
  73.     temp2=temp2-80
  74.     temp3=temp3-7
  75.   endif
  76. endm
  77.  
  78. d6cntr          db      0f0h
  79. d6num           db      0
  80. d6numd          db      1
  81.  
  82. ;▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  83. ; CODE
  84. ;▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  85.  
  86. ;═════════════════════════════════════════════════════════════════════════════
  87. p60:
  88.         mov al,d6cntr
  89.         dec al
  90.         jnz short p60f0
  91.         mov d6cntr,0f0h
  92.         mov d6num,0
  93.         mov d6numd,1
  94.         jmp setnext
  95. p60f0:
  96.         mov d6cntr,al
  97.         mov ch,d6num
  98.         mov cl,d6numd
  99.         cmp al,010h
  100.         jne short p60f1
  101.         mov cl,-1
  102.         mov d6numd,cl
  103. p60f1:
  104.  
  105.         add ch,cl
  106.         jz short p60f2
  107.         cmp ch,10h
  108.         jb short p60f3
  109. p60f2:
  110.         mov d6numd,0
  111. p60f3:
  112.         mov d6num,ch
  113.  
  114.         mov edi,_vidptr
  115.         mov dx,3c5h
  116.         xor ebx,ebx
  117.         mov ah,0c7h
  118.  
  119.         mov esi,offset d6locs2
  120.         mov cl,10h
  121. p60l2:
  122.         mov bx,[esi]
  123.         add bx,400
  124.         cmp bx,100*200
  125.         jb short p60l2f0
  126.         sub bx,100*200
  127. p60l2f0:
  128.         dec ebx
  129.         dec byte ptr [esi+3]
  130.         jnz short p60l2f1
  131.         mov byte ptr [esi+3],80
  132.         add ebx,80
  133. p60l2f1:
  134.         mov [esi],bx
  135.         cmp cl,ch
  136.         ja short p60l2c
  137.         @outb 6
  138.         mov [edi+ebx],ah
  139.         mov [edi+ebx+300],ah
  140.         @outb 0fh
  141.         mov [edi+ebx+100],ah
  142.         mov [edi+ebx+200],ah
  143. p60l2c:
  144.         add esi,4
  145.         dec cl
  146.         jnz p60l2
  147.  
  148.         mov esi,offset d6locs1
  149.         shl ch,1
  150.         mov cl,20h
  151. p60l1:
  152.         mov bx,[esi]
  153.         add bx,200
  154.         cmp bx,100*200
  155.         jb short p60l1f0
  156.         sub bx,100*200
  157. p60l1f0:
  158.         mov al,[esi+2]
  159.         xor al,0ffh
  160.         jns short p60l1f1
  161.         dec ebx
  162.         dec byte ptr [esi+3]
  163.         jnz short p60l1f1
  164.         mov byte ptr [esi+3],80
  165.         add ebx,80
  166. p60l1f1:
  167.         mov [esi],bx
  168.         mov [esi+2],al
  169.         cmp cl,ch
  170.         ja short p60l1c
  171.         out dx,al
  172.         mov [edi+ebx],ah
  173.         mov [edi+ebx+100],ah
  174. p60l1c:
  175.         add esi,4
  176.         dec cl
  177.         jnz p60l1
  178.  
  179.         mov esi,offset d6locs0
  180.         shl ch,1
  181.         mov cl,40h
  182. p60l0:
  183.         mov bx,[esi]
  184.         add bx,100
  185.         cmp bx,100*200
  186.         jb short p60l0f0
  187.         sub bx,100*200
  188. p60l0f0:
  189.         mov al,[esi+2]
  190.         ror al,1
  191.         jnc short p60l0f1
  192.         dec ebx
  193.         dec byte ptr [esi+3]
  194.         jnz short p60l0f1
  195.         mov byte ptr [esi+3],80
  196.         add ebx,80
  197. p60l0f1:
  198.         mov [esi],bx
  199.         mov [esi+2],al
  200.         cmp cl,ch
  201.         ja short p60l0c
  202.         out dx,al
  203.         mov [edi+ebx],ah
  204. p60l0c:
  205.         add esi,4
  206.         dec cl
  207.         jnz p60l0
  208.  
  209.         ret
  210.  
  211.