home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 109 / EnigmaAmiga109CD.iso / software / testi / corsoasm / sorgenti9 / lezione15d.s < prev    next >
Text File  |  1995-04-26  |  14KB  |  357 lines

  1.  
  2. ; Lezione15d.s    - Visualiziamo la prima pic in hires a 256 colori con
  3. ;          il burst pompato a 64 bit (FMODE, $1fc=3)
  4.  
  5.     SECTION    AgaRulez,CODE
  6.  
  7. ;    Include    "DaWorkBench.s"    ; togliere il ; prima di salvare con "WO"
  8.  
  9. *****************************************************************************
  10.     include    "startup2.s"    ; Salva Copperlist Etc.
  11. *****************************************************************************
  12.  
  13.         ;5432109876543210
  14. DMASET    EQU    %1000001110000000    ; copper, bitplane DMA
  15.  
  16. WaitDisk    EQU    30    ; 50-150 al salvataggio (secondo i casi)
  17.  
  18. START:
  19.  
  20. ;    Puntiamo la pic AGA
  21.  
  22.     MOVE.L    #PICTURE,d0
  23.     LEA    BPLPOINTERS,A1
  24.     MOVEQ    #8-1,D7        ; num. bitplanes
  25. POINTB:
  26.     move.w    d0,6(a1)
  27.     swap    d0
  28.     move.w    d0,2(a1)
  29.     swap    d0
  30.     addi.l    #80*100,d0    ; Lunghezza di un bitplane
  31.     addq.w    #8,a1
  32.     dbra    d7,POINTB        ;Rifai D1 volte (D1=num of bitplanes)
  33.  
  34.     move.l    #$2c07fffe,d1    ; Prima linea YY wait: $2c
  35.     moveq    #$00,d5        ; Colore start
  36.     move.w    #99-1,d7    ; Numero linee: 99
  37.     bsr.w    FaiAGACopB    ; Fai una sfumatura BLU
  38.  
  39.     bsr.s    MettiColori
  40.  
  41.     MOVE.W    #DMASET,$96(a5)        ; DMACON - abilita bitplane, copper
  42.     move.l    #CopList,$80(a5)    ; Puntiamo la nostra COP
  43.     move.w    d0,$88(a5)        ; Facciamo partire la COP
  44.     move.w    #0,$1fc(a5)        ; Fmode azzerato, burst normale
  45.     move.w    #$c00,$106(a5)        ; BPLCON3 resettato
  46.     move.w    #$11,$10c(a5)        ; BPLCON4 resettato
  47.  
  48. LOOP:
  49.     BTST    #6,$BFE001
  50.     BNE.S    LOOP
  51.     RTS
  52.  
  53.  
  54. ; Questa routine, che e' presente anche nella mia demo WORLD OF MANGA, serve
  55. ; per leggere la palette a 24 bit, in questo caso inclusa con un INCBIN
  56. ; In pratica converte ogni colore a 24 bit, che si presenta nel formato di
  57. ; una long $00RrGgBb, dove R = nibble alto di RED, r = nibble basso di RED,
  58. ; G = nibble alto di GREEN eccetera, nel formato della copperlist aga, ossia
  59. ; in due word $0RGB con i nibble alti e $0rgb con i nibble bassi.
  60.  
  61. MettiColori:
  62.     LEA    LogoPal(PC),A0        ; indirizzo della color palette 
  63.     LEA    COLP0+2,A1        ; Indirizzo del primo registro
  64.                     ; settato per i nibble ALTI
  65.     LEA    COLP0B+2,A2        ; Indirizzo del primo registro
  66.                     ; settato per i nibble BASSI
  67.     MOVEQ    #8-1,d7            ; 8 banchi da 32 registri ciascuno
  68. ConvertiPaletteBank:
  69.     moveq    #0,d0
  70.     moveq    #0,d2
  71.     moveq    #0,d3
  72.     moveq    #32-1,d6    ; 32 registri colore per banco
  73.  
  74. DaLongARegistri:    ; loop che trasforma i colori $00RrGgBb.l nelle 2
  75.             ; word $0RGB, $0rgb adatte ai registri copper.
  76.  
  77. ; Conversione dei nibble bassi da $00RgGgBb (long) al colore aga $0rgb (word)
  78.  
  79.     MOVE.B    1(A0),(a2)    ; Byte alto del colore $00Rr0000 copiato
  80.                 ; nel registro cop per nibble bassi
  81.     ANDI.B    #%00001111,(a2) ; Seleziona solo il nibble BASSO ($0r)
  82.     move.b    2(a0),d2    ; Prendi il byte $0000Gg00 dal colore a 24bit
  83.     lsl.b    #4,d2        ; Sposta a sinistra di 4 bit il nibble basso
  84.                 ; del GREEN, "trasformandolo" in nibble alto
  85.                 ; di del byte basso di D2 ($g0)
  86.     move.b    3(a0),d3    ; Prendi il byte $000000Bb dal colore a 24bit
  87.     ANDI.B    #%00001111,d3    ; Seleziona solo il nibble BASSO ($0b)
  88.     or.b    d2,d3        ; "FONDI" i nibble bassi di green e blu...
  89.     move.b    d3,1(a2)    ; Formando il byte basso finale $gb da mettere
  90.                 ; nel registro colore, dopo il byte $0r, per
  91.                 ; formare la word $0rgb dei nibble bassi
  92.  
  93. ; Conversione dei nibble alti da $00RgGgBb (long) al colore aga $0RGB (word)
  94.  
  95.     MOVE.B    1(A0),d0    ; Byte alto del colore $00Rr0000 in d0
  96.     ANDI.B    #%11110000,d0    ; Seleziona solo il nibble ALTO ($R0)
  97.     lsr.b    #4,d0        ; Shifta a destra di 4 bit il nibble, in modo
  98.                 ; che diventi il nibble basso del byte ($0R)
  99.     move.b    d0,(a1)        ; Copia il byte alto $0R nel color register
  100.     move.b    2(a0),d2    ; Prendi il byte $0000Gg00 dal colore a 24bit
  101.     ANDI.B    #%11110000,d2    ; Seleziona solo il nibble ALTO ($G0)
  102.     move.b    3(a0),d3    ; Prendi il byte $000000Bb dal colore a 24 bit
  103.     ANDI.B    #%11110000,d3    ; Seleziona solo il nibble ALTO ($B0)
  104.     lsr.b    #4,d3        ; Shiftalo di 4 bit a destra trasformandolo in
  105.                 ; nibble basso del byte basso di d3 ($0B)
  106.     ori.b    d2,d3        ; Fondi i nibble alti di green e blu ($G0+$0B)
  107.     move.b    d3,1(a1)    ; Formando il byte basso finale $GB da mettere
  108.                 ; nel registro colore, dopo il byte $0R, per
  109.                 ; formare la word $0RGB dei nibble alti.
  110.  
  111.     addq.w    #4,a0        ; Saltiamo al prossimo colore .l della palette
  112.                 ; attaccata in fondo alla pic
  113.     addq.w    #4,a1        ; Saltiamo al prossimo registro colore per i
  114.                 ; nibble ALTI in Copperlist
  115.     addq.w    #4,a2        ; Saltiamo al prossimo registro colore per i
  116.                 ; nibble BASSI in Copperlist
  117.  
  118.     dbra    d6,DaLongARegistri
  119.  
  120.     add.w    #(128+8),a1    ; salta i registri colore + il dc.w $106,xxx
  121.                 ; dei nibble ALTI
  122.     add.w    #(128+8),a2    ; salta i registri colore + il dc.w $106,xxx
  123.                 ; dei nibble BASSI
  124.  
  125.     dbra    d7,ConvertiPaletteBank    ; Converte un banco da 32 colori per
  126.     rts                ; loop. 8 loop per i 256 colori.
  127.  
  128. ; Palette salvata in binario con il PicCon (opzioni: save as binary, non cop)
  129.  
  130. LogoPal:
  131.     incbin    "Pic640x100x256.pal"
  132.  
  133. ;*****************************************************************************
  134. ; Routine che crea sfumature aga BLU:
  135. ;
  136. ; d1 = Prima linea da aspettare (Wait, ad es: $2c07fffe per linea Y=$2c)
  137. ; d5 = inizio tonalita' ($00-$ff)
  138. ; d7 = Numero linee da fare
  139. ;*****************************************************************************
  140.  
  141. FaiAgaCopB:
  142.     lea    AgaCopEff1,a0
  143.     move.l    #$01060c00,d4    ; BplCon3 - nibble alti
  144.     move.l    #$01060e00,d3    ; BplCon3 - nibble bassi
  145.     move.w    #$180,d2    ; Registro Color0
  146. FaiAGALoopB:
  147.     move.l    d1,(a0)+    ; Metti il wait YYXXFFFE
  148.     add.l    #$01000000,d1    ; Fai waitare una linea sotto per la prossima
  149.     move.l    d4,(a0)+    ; BplCon3 - selez. nibble alti
  150.     move.w    d2,(a0)+    ; Registro Color0
  151.     addq.b    #1,d5        ; "Illumina" leggermente il colore $Gg
  152.     move.w    d5,d6        ; Copialo in d6
  153.     and.w    #%11110000,d6    ; Selez. solo il nibble ALTO
  154.     lsr.w    #4,d6        ; Alla posizione giusta, ossia al BLU $xxB)
  155.     move.w    d6,(a0)+    ; Valore del Color0 (nib alti)
  156.     move.l    d3,(a0)+    ; BplCon3 - selez. nibble bassi
  157.     move.w    d2,(a0)+    ; Registro Color0
  158.     move.w    d5,d6        ; Colore $xx in d6
  159.     and.w    #%00001111,d6    ; Selez. solo i nibble bassi - posizione $xxB
  160.     move.w    d6,(a0)+    ; Metti il colore in copperlist (nibble bassi)
  161.     dbra    d7,FaiAGALoopB
  162.     rts
  163.  
  164. ;*****************************************************************************
  165. ;*                COPPERLIST                     *
  166. ;*****************************************************************************
  167.  
  168.     CNOP    0,8    ; Allineo a 64 bit
  169.  
  170.     section    coppera,data_C
  171.  
  172. COPLIST:
  173.     dc.w    $8E,$2c81    ; DiwStrt
  174.     dc.w    $90,$2cc1    ; DiwStop
  175.  
  176. ; Nota: il ddfstart/stop HIRES sarebbero $003c e $00d4, ma con il burst attivo
  177. ; va bene lo stesso valore del LOWRES, ossia $0038 e $00d0.
  178.  
  179.     dc.w    $92,$0038    ; DdfStart
  180.     dc.w    $94,$00d0    ; DdfStop
  181.     dc.w    $102,0        ; BplCon1
  182.     dc.w    $104,0        ; BplCon2
  183.     dc.w    $108,-8        ; Bpl1Mod (burst 64bit, modulo=modulo-8)
  184.     dc.w    $10a,-8        ; Bpl2Mod (come sopra)
  185.  
  186.             ; 5432109876543210
  187.     dc.w    $100,%1000001000010001    ; 8 bitplane HIRES 640x256. Per
  188.                     ; settare 8 planes setto il bit 4 e
  189.                     ; azzero i bit 12,13,14. Il bit 0 e'
  190.                     ; settato dato che abilita molte
  191.                     ; funzioni AGA che vedremo dopo.
  192.  
  193.     dc.w    $1fc,3        ; Burst mode a 64 bit
  194.  
  195. BPLPOINTERS:
  196.     dc.w $e0,0,$e2,0    ; primo     bitplane
  197.     dc.w $e4,0,$e6,0    ; secondo       "
  198.     dc.w $e8,0,$ea,0    ; terzo           "
  199.     dc.w $ec,0,$ee,0    ; quarto       "
  200.     dc.w $f0,0,$f2,0    ; quinto       "
  201.     dc.w $f4,0,$f6,0    ; sesto           "
  202.     dc.w $f8,0,$fA,0    ; settimo       "
  203.     dc.w $fC,0,$fE,0    ; ottavo       "
  204.  
  205. ; In questo caso la palette viene aggiornata da una routine, per cui basta
  206. ; lasciare azzerati i valori dei registri.
  207.  
  208.     DC.W    $106,$c00    ; SELEZIONA PALETTE 0 (0-31), NIBBLE ALTI
  209. COLP0:
  210.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  211.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  212.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  213.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  214.  
  215.     DC.W    $106,$e00    ; SELEZIONA PALETTE 0 (0-31), NIBBLE BASSI
  216. COLP0B:
  217.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  218.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  219.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  220.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  221.  
  222.     DC.W    $106,$2C00    ; SELEZIONA PALETTE 1 (32-63), NIBBLE ALTI
  223.  
  224.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  225.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  226.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  227.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  228.  
  229.     DC.W    $106,$2E00    ; SELEZIONA PALETTE 1 (32-63), NIBBLE BASSI
  230.  
  231.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  232.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  233.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  234.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  235.  
  236.     DC.W    $106,$4C00    ; SELEZIONA PALETTE 2 (64-95), NIBBLE ALTI
  237.  
  238.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  239.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  240.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  241.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  242.  
  243.     DC.W    $106,$4E00    ; SELEZIONA PALETTE 2 (64-95), NIBBLE BASSI
  244.  
  245.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  246.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  247.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  248.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  249.  
  250.     DC.W    $106,$6C00    ; SELEZIONA PALETTE 3 (96-127), NIBBLE ALTI
  251.  
  252.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  253.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  254.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  255.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  256.  
  257.     DC.W    $106,$6E00    ; SELEZIONA PALETTE 3 (96-127), NIBBLE BASSI
  258.  
  259.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  260.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  261.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  262.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  263.  
  264.     DC.W    $106,$8C00    ; SELEZIONA PALETTE 4 (128-159), NIBBLE ALTI
  265.  
  266.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  267.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  268.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  269.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  270.  
  271.     DC.W    $106,$8E00    ; SELEZIONA PALETTE 4 (128-159), NIBBLE BASSI
  272.  
  273.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  274.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  275.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  276.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  277.  
  278.     DC.W    $106,$AC00    ; SELEZIONA PALETTE 5 (160-191), NIBBLE ALTI
  279.  
  280.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  281.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  282.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  283.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  284.  
  285.     DC.W    $106,$AE00    ; SELEZIONA PALETTE 5 (160-191), NIBBLE BASSI
  286.  
  287.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  288.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  289.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  290.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  291.  
  292.     DC.W    $106,$CC00    ; SELEZIONA PALETTE 6 (192-223), NIBBLE ALTI
  293.  
  294.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  295.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  296.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  297.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  298.  
  299.     DC.W    $106,$CE00    ; SELEZIONA PALETTE 6 (192-223), NIBBLE BASSI
  300.  
  301.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  302.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  303.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  304.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  305.  
  306.     DC.W    $106,$EC00    ; SELEZIONA PALETTE 7 (224-255), NIBBLE ALTI
  307.  
  308.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  309.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  310.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  311.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  312.  
  313.     DC.W    $106,$EE00    ; SELEZIONA PALETTE 7 (224-255), NIBBLE BASSI
  314.  
  315.     DC.W    $180,0,$182,0,$184,0,$186,0,$188,0,$18A,0,$18C,0,$18E,0
  316.     DC.W    $190,0,$192,0,$194,0,$196,0,$198,0,$19A,0,$19C,0,$19E,0
  317.     DC.W    $1A0,0,$1A2,0,$1A4,0,$1A6,0,$1A8,0,$1AA,0,$1AC,0,$1AE,0
  318.     DC.W    $1B0,0,$1B2,0,$1B4,0,$1B6,0,$1B8,0,$1BA,0,$1BC,0,$1BE,0
  319.  
  320. AgaCopEff1:
  321.     dcb.l    99*5        ; Ossia: 99 linee * 5 long:
  322.                 ; 1 per il wait,
  323.                 ; 1 per il bplcon3
  324.                 ; 1 per color0 (nib alti)
  325.                 ; 1 per il bplcon3
  326.                 ; 1 per color0 (nib bassi)
  327.     dc.w    $9007,$fffe    ; aspetta la fine del logo
  328.     dc.w    $100,$200    ; zero bitplanes
  329.  
  330.     dc.w    $FFFF,$FFFE    ; Fine della copperlist
  331.  
  332. ;******************************************************************************
  333.  
  334. ; Figura RAW ad 8 bitplanes, cioe' a 256 colori
  335.  
  336.     CNOP    0,8    ; allineo a 64 bit
  337.  
  338. PICTURE:
  339.     INCBIN    "Pic640x100x256.RAW"    ; (C) by Cristiano "KREEX" Evangelisti
  340.  
  341.     end
  342.  
  343. Da notare, nella copperlist, che i moduli sono -8, perche' l'FMODE ($1fc) e'
  344. a 64 bit. Provate a togliere il CNOP 0,8 davanti alla label PICTURE, con un
  345. bel punto e virgola, e noterete che assemblando la pic ad un indirizzo non
  346. allineato a 64 bit otterrete una visualizzazione a fette verticali.
  347. Altro particolare e' che con il burst attivo, il DDFSTART e il DDFSTOP non
  348. vanno messi al valore per l'hires normale, ossia $003c e $00d4, ma allo stesso
  349. valore del lowres, dato che "pompa" velocemente.
  350.  
  351.     dc.w    $92,$0038    ; DdfStart lowres, adatto per HIRES con burst
  352.     dc.w    $94,$00d0    ; DdfStop lowres, come sopra
  353.  
  354. Ci sta bene la sfumatura copper blu sullo sfondo, vero? Almeno andiamo a
  355. 256+99 colori totali visualizzati, ossia 355.
  356.  
  357.