home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / BEEHIVE / GAMES / 2SOUNDS.ARC / MUSIC.ASM < prev    next >
Assembly Source File  |  1989-09-27  |  2KB  |  133 lines

  1.     ORG    100
  2.     PUSH    BC
  3.     POP    IX
  4.     LD    HL,4EH
  5.     LD    A,1
  6.     LD    (9),A
  7.     LD    (1DH),A
  8.     PUSH    AF
  9.     PUSH    AF
  10.     PUSH    AF
  11.     JR    NZ,L320
  12. L30B    LD    A,(IX+1)
  13.     LD    (9),A
  14.     LD    A,(IX+2)
  15.     LD    (1DH),A
  16. L315    INC    IX
  17.     INC    IX
  18.     INC    IX
  19. L320    LD    A,(IX+0)
  20.     CP    1
  21.     JR    Z,L30B
  22.     JR    C,L337
  23.     POP    AF
  24.     POP    AF
  25.     POP    AF
  26. L32D    LD    B,0EEH
  27.     LD    A,(IX+1)
  28.     JR    NZ,L336
  29.     LD    B,0FEH
  30. L336    RET
  31. L337    LD    (8),A
  32.     CALL    L32D
  33.     LD    (6),A
  34.     PUSH    AF
  35.     LD    A,B
  36.     LD    (L383),A
  37.     LD    A,(9)
  38.     LD    B,A
  39.     POP    AF
  40. L343    SRL    A
  41.     DJNZ    L343
  42.     LD    (L37C+$1),A
  43.     INC    IX
  44.     CALL    L32D
  45.     DEC    IX
  46.     LD    (7),A
  47.     PUSH    AF
  48.     LD    A,B
  49.     LD    (L3BB),A
  50.     LD    A,(1DH)
  51.     LD    B,A
  52.     POP    AF
  53. L354    SRL    A
  54.     DJNZ    L354
  55.     LD    (L3B4+$1),A
  56.     POP    AF
  57.     LD    C,A
  58.     POP    AF
  59.     LD    B,A
  60.     POP    AF
  61.     JR    NZ,L365
  62. L362    CALL    SUB
  63. L365    CP    0
  64.     JP    M,L36C
  65.     NOP
  66.     JP    P,L36F
  67. L36C    CALL    SUB
  68.     POP    AF
  69. L36F    LD    (4EH),A
  70.     CALL    0A504H
  71.     JR    Z,L336
  72.     DEC    C
  73.     JR    NZ,L37B
  74.     JR    Z,L381
  75. L37B    LD    A,B
  76. L37C    CP    0;This is a dummy value
  77.     JR    Z,L383
  78.     JR    NZ,L385
  79. L381    LD    A,(6)
  80.     LD    C,A
  81.     LD    A,(4EH)
  82. L383    XOR    40H
  83. L385    BIT    6,(HL)
  84.     JR    Z,L390
  85.     JR    NZ,L38B
  86. L38B    JP    P,L396
  87.     NOP
  88.     JP    M,L399
  89. L390    NOP
  90.     JP    M,L396
  91.     NOP
  92.     JP    P,L399
  93. L396    CALL    SUB
  94. L399    INC    HL
  95.     INC    (HL)
  96.     DEC    HL
  97.     JR    NZ,L3AE
  98.     PUSH    AF
  99.     LD    A,(8)
  100.     DEC    A
  101.     LD    (8),A
  102.     POP    AF
  103.     JR    NZ,L3AE
  104.     JP    M,L3A6
  105.     CALL    SUB
  106. L3A6    LD    A,B
  107.     PUSH    AF
  108.     LD    A,C
  109.     PUSH    AF
  110.     JP    L315
  111. L3AE    DJNZ    L3B3
  112.     JR    Z,L3B9
  113. L3B3    PUSH    AF
  114.     LD    A,B
  115. L3B4    CP    0;This is a dummy value
  116.     POP    AF
  117.     JR    Z,L3BB
  118.     JR    NZ,L3BD
  119. L3B9    PUSH    AF
  120.     LD    A,(7)
  121.     LD    B,A
  122.     POP    AF
  123. L3BB    XOR    80
  124. L3BD    JP    M,L362
  125.     NOP
  126.     JR    L365
  127. SUB    PUSH    AF
  128.     IN    A,(2)
  129.     XOR    40
  130.     OUT    (2),A
  131.     RET
  132.     END
  133.