home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Assembler / dse-src5.dms / in.adf / picshow.S < prev    next >
Encoding:
Text File  |  1990-05-07  |  2.7 KB  |  175 lines

  1. OPENLIB:   EQU -408
  2. ALLOCMEM:  EQU -198
  3. FREEMEM:   EQU -210
  4. MEMF_CHIP: EQU $10002
  5.  
  6. BEGIN:       MOVEM.L D0-D7/A0-A6,-(SP)
  7.     MOVE.L    $4.W,A6
  8.     MOVE.L    #COPSIZE+PICSIZE,D0
  9.     MOVE.L    #MEMF_CHIP,D1
  10.     JSR ALLOCMEM(A6)
  11.     MOVE.L    D0,NEWCOPPER
  12.     BEQ.L    ALLOCERROR
  13.     ADD.L    #COPSIZE,D0
  14.     MOVE.L    D0,BPPTR
  15.  
  16. INITBP:       MOVE.L  D0,D7
  17.     SWAP    D7
  18.     MOVE.W    D7,BP1H
  19.     SWAP    D7
  20.     MOVE.W    D7,BP1L
  21.  
  22.     ADD.L    #BPSIZE,D7
  23.     SWAP    D7
  24.     MOVE.W    D7,BP2H
  25.     SWAP    D7
  26.     MOVE.W    D7,BP2L
  27.  
  28.     ADD.L    #BPSIZE,D7
  29.     SWAP    D7
  30.     MOVE.W    D7,BP3H
  31.     SWAP    D7
  32.     MOVE.W    D7,BP3L
  33.  
  34.     ADD.L    #BPSIZE,D7
  35.     SWAP    D7
  36.     MOVE.W    D7,BP4H
  37.     SWAP    D7
  38.     MOVE.W    D7,BP4L
  39.  
  40.     ADD.L    #BPSIZE,D7
  41.     SWAP    D7
  42.     MOVE.W    D7,BP5H
  43.     SWAP    D7
  44.     MOVE.W    D7,BP5L
  45.  
  46.     LEA.L    PIC+[5*BPSIZE],A0
  47.     LEA.L    COLORS+2(PC),A1
  48.     MOVEQ    #31,D7
  49. INITCOLORS: MOVE.W  (A0)+,(A1)
  50.     ADDQ.L    #4,A1
  51.     DBF D7,INITCOLORS
  52.  
  53.  
  54.     MOVE.W    #COPSIZE+PICSIZE-1,D7
  55. MOVETOCHIP: MOVE.B  (A1)+,(A0)+
  56.     DBF D7,MOVETOCHIP
  57.  
  58.     LEA.L    GFXNAME(PC),A1
  59.     JSR OPENLIB(A6)
  60.     TST.L    D0
  61.     BEQ.S    GFXERROR
  62.     MOVE.L    D0,A0
  63.     MOVE.L    $26(A0),OLDCOPPER
  64.     MOVE.W    #$4000,$DFF09A
  65. DISABLE:    TST.B   $DFF006
  66.     BNE.S    DISABLE
  67.     MOVE.W    $DFF002,DMABITS
  68.     BSET    #7,DMABITS
  69.     MOVE.W    #$7FFF,$DFF096
  70.     MOVE.W    #$8380,$DFF096
  71.  
  72.     MOVE.L    NEWCOPPER(PC),$DFF080
  73.  
  74. MAIN:        BTST    #6,$BFE001
  75.     BNE.S    MAIN
  76.  
  77.  
  78.  
  79. EXIT:MOVE.L  OLDCOPPER(PC),$DFF080
  80.     MOVE.W    DMABITS(PC),$DFF096
  81.     MOVE.W    #$C000,$DFF09A
  82. GFXERROR:   MOVE.L  NEWCOPPER(PC),A1
  83.     MOVE.L    #COPSIZE+PICSIZE,D0
  84.     JSR FREEMEM(A6)
  85. ALLOCERROR: MOVEM.L (SP)+,D0-D7/A0-A6
  86.     RTS
  87.  
  88. OLDCOPPER:  DC.L    0
  89. NEWCOPPER:  DC.L    0
  90. BPPTR:        DC.L    0
  91. DMABITS:    DC.W    0
  92. GFXNAME:    DC.B    'GRAPHICS.LIBRARY',0
  93. EVEN
  94.  
  95. COPPERLIST: DC.W    $008E,$2C81
  96.     DC.W    $0090,$F4C1
  97.     DC.W    $0092,$003B
  98.     DC.W    $0094,$00D0
  99.     DC.W    $0100,$5000
  100.     DC.W    $0102,$0000
  101.     DC.W    $0104,$0000
  102.     DC.W    $0108,$0000
  103.     DC.W    $010A,$0000
  104.  
  105.     DC.W    $00E0
  106. BP1H:        DC.W    $0000
  107.     DC.W    $00E2
  108. BP1L:        DC.W    $0000
  109.  
  110.     DC.W    $00E4
  111. BP2H:        DC.W    $0000
  112.     DC.W    $00E6
  113. BP2L:        DC.W    $0000
  114.  
  115.     DC.W    $00E8
  116. BP3H:        DC.W    $0000
  117.     DC.W    $00EA
  118. BP3L:        DC.W    $0000
  119.  
  120.     DC.W    $00EC
  121. BP4H:        DC.W    $0000
  122.     DC.W    $00EE
  123. BP4L:       DC.W    $0000
  124.  
  125.     DC.W    $00F0
  126. BP5H:        DC.W    $0000
  127.     DC.W    $00F2
  128. BP5L:       DC.W    $0000
  129.  
  130. COLORS:        DC.W    $0180,$0000
  131.     DC.W    $0182,$0000
  132.     DC.W    $0184,$0000
  133.     DC.W    $0186,$0000
  134.     DC.W    $0188,$0000
  135.     DC.W    $018A,$0000
  136.     DC.W    $018C,$0000
  137.     DC.W    $018E,$0000
  138.     DC.W    $0190,$0000
  139.     DC.W    $0192,$0000
  140.     DC.W    $0194,$0000
  141.     DC.W    $0196,$0000
  142.     DC.W    $0198,$0000
  143.     DC.W    $019A,$0000
  144.     DC.W    $019C,$0000
  145.     DC.W    $019E,$0000
  146.     DC.W    $01A0,$0000
  147.     DC.W    $01A2,$0000
  148.     DC.W    $01A4,$0000
  149.     DC.W    $01A6,$0000
  150.     DC.W    $01A8,$0000
  151.     DC.W    $01AA,$0000
  152.     DC.W    $01AC,$0000
  153.     DC.W    $01AE,$0000
  154.     DC.W    $01B0,$0000
  155.     DC.W    $01B2,$0000
  156.     DC.W    $01B4,$0000
  157.     DC.W    $01B6,$0000
  158.     DC.W    $01B8,$0000
  159.     DC.W    $01BA,$0000
  160.     DC.W    $01BC,$0000
  161.     DC.W    $01BE,$0000
  162.  
  163.     DC.W   $FFFF,$FFFE
  164. COPEND:
  165. COPSIZE:    EQU COPEND-COPPERLIST
  166. BPSIZE:        EQU 320/8*200
  167. PICSIZE:    EQU 5*BPSIZE+64
  168.  
  169. PIC:        BLK.B   PICSIZE,0
  170.  
  171.  
  172.  
  173.  
  174.  
  175.