?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. ; 19.10.94  23:59
  2. ; 19.7.94
  3. ; 09.01.92  21:00
  4.  
  5. ;      typ42.as
  6.  
  7.        ;ORG  50000
  8.        if 0
  9. TY42
  10.         DEFW    0
  11.  
  12.         DEFW    $TYP42
  13.         DEFW    $CPL42
  14.         DEFW    $ADR42
  15.  
  16.         DEFB    6
  17.         DEFS    7
  18.  
  19. ;**************************
  20.        IF   .KEY&1
  21. *L+
  22. ;FULL
  23.        DEFW #800
  24. $ATB42 DEFS #800
  25. *L-
  26.        ENDIF
  27.  
  28.        IF   .KEY&2
  29. *L+
  30. ;TY42
  31.        DEFW #700
  32. $ATB42 EQU  $-#100
  33.        DEFS #700
  34. *L-
  35.        ENDIF
  36.  
  37.        IF   .KEY&4
  38. $ATB42 EQU  #3800 ;#33FF
  39.        ENDIF
  40. ;**************************
  41. $CPL42  OR      A
  42.         JR      Z,CPL4
  43.         LD      A,#FC
  44. CPL4
  45.         LD      (CONST1+1),A
  46.         LD      (CONST4+1),A
  47.         XOR     A
  48.         RET
  49.        endif
  50. ;=======================;
  51. ;** Type 42 Chars ******;
  52. ;=======================;
  53. sADR42
  54.         LD      A,B
  55.         XOR     C
  56.         AND     3
  57.         XOR     B
  58.         AND     #1B
  59.         ADD     A,#40
  60.         LD      D,A
  61.         SLA     C
  62.         LD      A,C
  63.         SLA     C
  64.         ADD     A,C
  65.         XOR     B
  66.         AND     #F8
  67.         XOR     B
  68.         RRCA
  69.         RRCA
  70.         RRCA
  71.         LD      E,A
  72.         EXX
  73.         RET
  74. ;*************************
  75. sTYP42
  76.         EXX
  77.        LD   BC,sATB42
  78.         LD      L,A
  79.         LD      H,#0
  80.         ADD     HL,HL
  81.         ADD     HL,HL
  82.         ADD     HL,HL
  83.         ADD     HL,BC
  84.         LD      B,D
  85.         LD      A,D
  86.         PUSH    DE
  87.         AND     #58
  88.         LD      D,A
  89.         XOR     B
  90.         EX      DE,HL
  91. CONST1  LD      BC,#0800
  92.         RRCA
  93.         JR      C,P62
  94.         RRCA
  95.         JR      C,PR4
  96.  
  97.         EX      DE,HL
  98. PR0
  99.         LD      A,(DE)
  100.         AND     3
  101.         OR      C
  102.         XOR     (HL)
  103.         LD      (DE),A
  104.         INC     D
  105.         INC     HL
  106.         DJNZ    PR0
  107.         INC     B
  108.         JR      EXIT
  109. ;--------------
  110.        DEFM "(c)SOV"
  111. PR40
  112.         DEC     L
  113.         INC     H
  114.         INC     DE
  115. PR4
  116.         RRD
  117.         LD      A,(DE)
  118.         XOR     C
  119.         RRCA
  120.         RRCA
  121.         RRCA
  122.         RRCA
  123.         RLD
  124.         INC     L
  125.         XOR     (HL)
  126.         AND     #C0
  127.         XOR     (HL)
  128.         LD      (HL),A
  129.         DJNZ    PR40
  130.         JR      EXIT
  131. ;-------------
  132. P62
  133.         RRCA
  134.         JR      NC,PR6
  135. PR2
  136.         LD      A,(DE)
  137.         XOR     C
  138.         RRCA
  139.         RRCA
  140.         XOR     (HL)
  141.         AND     #3F
  142.         XOR     (HL)
  143.         LD      (HL),A
  144.         INC     DE
  145.         INC     H
  146.         DJNZ    PR2
  147.         JR      EXIT
  148. ;-------------
  149. PR60
  150.         DEC     L
  151.         INC     H
  152.         INC     DE
  153. PR6
  154.         LD      A,(DE)
  155. CONST4  XOR     #00
  156.         RLCA
  157.         RLCA
  158.         LD      C,A
  159.         XOR     (HL)
  160.         AND     #FC
  161.         XOR     C
  162.         LD      (HL),A
  163.         INC     L
  164.         LD      A,C
  165.         XOR     (HL)
  166.         AND     #0F
  167.         XOR     C
  168.         LD      (HL),A
  169.         DJNZ    PR60
  170. EXIT
  171.         POP     DE
  172.         LD      A,E
  173.         INC     A
  174.         SUB     B
  175.         LD      E,A
  176.         INC     D
  177.         RES     2,D
  178.  
  179.         EXX
  180.         RET
  181. ;**;**
  182.