home *** CD-ROM | disk | FTP | other *** search
/ CD-X 1 / cdx_01.iso / demodisc / cyberdan / intrance / inc / effect4.asm < prev    next >
Encoding:
Assembly Source File  |  1995-03-09  |  1.5 KB  |  75 lines

  1. EFFECT4:
  2.         MOV     AX,CS:[PIC4]            ; GET THE PLACE OF MAIN PIC
  3.         ADD     AX,64000/16             ; CALC. THE 1ST PAL'S PLACE
  4.         MOV     CS:[PAL1H],AX
  5.  
  6.         MOV     AX,CS
  7.     MOV    DS,AX
  8.     MOV    ES,AX
  9.         CALL    PREPAREPAL
  10.         CALL    LOADPICTURE4
  11.  
  12. MAINPRG:MOV     CX,1
  13. MAIN2:    PUSH    CX
  14.     CALL    SUCKPAL
  15.     CALL    RASTERWAIT
  16.         MOV     DS,CS:[PAL1H]
  17.         MOV     SI,0
  18.     CALL    PAL256
  19.     POP    CX
  20.     INC    CX
  21.     CMP    CX,120
  22.     JB    MAIN2
  23.         RET
  24. ;------------------------------------------------------------------------------
  25. PREPAREPAL:
  26.         PUSH    ES DS
  27.         MOV     DI,0
  28.         MOV     ES,CS:[PAL1H]
  29.         MOV     CX,3
  30.         MOV     AX,0
  31.         REP     STOSB
  32.     MOV    CX,756/3
  33. PREP1:  MOV     AL,0
  34.     STOSB
  35.         MOV     AL,23
  36.     STOSB
  37.         MOV     AL,29
  38.     STOSB    
  39.     LOOP    PREP1
  40.         MOV     DS,CS:[PAL1H]
  41.         MOV     SI,0
  42.         CALL    PAL256
  43.         POP     DS ES
  44.     RET
  45.  
  46. SUCKPAL:MOV     ES,CS:[PAL1H]
  47.         MOV     DS,CS:[PAL1H]
  48.         MOV     SI,0
  49.         MOV     DI,0
  50. SP2:    LODSB
  51.     CMP    AL,0
  52.     JE    KICS1
  53.     DEC    AL
  54. KICS1:    STOSB
  55.     LOOP    SP2
  56.     RET
  57. ;------------------------------------------------------------------------------
  58. LOADPICTURE4:
  59.         PUSH    DS ES
  60.         MOV     DS,CS:[PIC4]
  61.     MOV    DX,0
  62.         MOV     AX,13
  63.         CALL    LOADOVERLAY
  64.         MOV     AX,0A000H
  65.         MOV     ES,AX
  66.         MOV     SI,0
  67.         MOV     DI,0
  68.         MOV     CX,32000
  69.         REP     MOVSW
  70.     POP    ES DS 
  71.     RET
  72.  
  73. PIC4    DW      0 
  74. PAL1H   DW      0
  75.