StartData=511*1024 ;start data
bplan1=startdata-10240
bplan2=bplan1-10240
bplan3=bplan2-10240
bplan4=bplan3-10240
bplan5=bplan4-10240
enddata=bplan5
CUST=$DFF000
startddf=56 ;56
stopddf=208 ;208
startdiw=$2681 ; 2181
enddiw=$07c1 ;1ac1

 MOVEM.L D0-D7/A0-A6,-(SP)
 MOVE.L $6C,OLDIRQ
 MOVE INTENAR,OLDINT
 MOVE #%0111111111111111,INTENA
 MOVE DMACONR,OLDDMA
 MOVE #%0111111111111111,DMACON
 OR.w #%1000000000000000,OLDINT
 OR.w #%1000000000000000,OLDDMA

;efface memoire
 lea enddata,a0
 move.l #enddata,d0
 move.l #startdata,d7
 sub.l d0,d7
 divu #4,d7
emc1:
 move.l #0,(a0)+
 dbra d7,emc1
;initialise le blitter
 move.w #0,bltbmod
 move.w #0,bltdmod
 move.w #%10111001100,bltcon0
;------------
 MOVE.L #newcopper,cop2lch
 MOVE copjmp2,D0
 MOVE #%1000011111000000,dmacon
 MOVE.L #newirq,$6c
 MOVE #%1100000000100000,intena
;-------
wait:
 btst #6,$bfe001  ; linke maustaste ???
 bne wait
;--------------
endprg:
 MOVE #%0111111111111111,INTENA
 MOVE #%0111111111111111,DMACON
 MOVE.L OLDIRQ,$6C 
 MOVE OLDINT,INTENA
 MOVE OLDDMA,DMACON
 MOVE COPJMP1,D0
 MOVEM.L (SP)+,D0-D7/A0-A6
 rts


newirq:
 movem.l d0-d7/a0-a6,-(sp)

 movem.l (sp)+,d0-d7/a0-a6
 move.w #$70,intreq
 rte




even
newcopper:
 dc.w color00-cust,$0
 dc.w BPLCON0-CUSt,%0010001000000000 ; double pl. 2 + 3 plans
 dc.w BPL1MOD-CUSt,0
 dc.w BPL2MOD-CUSt,0
 dc.w ddfstrt-cust,startddf
 dc.w ddfstop-cust,stopddf
 dc.w diwstrt-cust,startdiw
 dc.w diwstop-cust,enddiw
 
 dc.w BPL1PTH-cust,bplan1/$10000,bpl1ptl-cust,bplan1&$ffff
 dc.w BPL2PTH-cust,bplan2/$10000,bpl2ptl-cust,bplan2&$ffff
 dc.w BPL3PTH-cust,bplan3/$10000,bpl3ptl-cust,bplan3&$ffff
 dc.w BPL4PtH-CUSt,bplan4/$10000,BPL4PtL-CUSt,bplan4&$FFFF
 dc.w BPL5PtH-CUSt,bplan5/$10000,BPL5PtL-CUSt,bplan5&$FFFF
 dc.l $fffffffe ; fin de copperlist

even
oldirq: dc.l 0
oldint: dc.w 0
olddma: dc.w 0

pic: blk.l 51264/4

;=====LIStE=======REGIStRES====================
BLtDDAt=$DFF000
DMACONR=$DFF002
VPOSR=$DFF004
VHPOSR=$DFF006
DSKDAtR=$DFF008
JOY0DAt=$DFF00A
JOY1DAt=$DFF00C
CLXDAt=$DFF00E
ADKCONR=$DFF010
POt0DAt=$DFF012
POt1DAt=$DFF014
POtGOR=$DFF016
SERDAtR=$DFF018
DKSBYtR=$DFF01A 
INtENAR=$DFF01C
INtREQR=$DFF01E
DSKPtH=$DFF020
DSKPtL=$DFF022
DSKLEN=$DFF024
DSKDAt=$DFF026
REFPtR=$DFF028
VPOSW=$DFF02A
VHPOSW=$DFF02C
COPCON=$DFF02E
SERDAt=$DFF030
SERPER=$DFF032
POtGO=$DFF034
JOYtESt=$DFF036
StREQU=$DFF038
StRVBL=$DFF03A
StRHOR=$DFF03C
StRLONG=$DFF03E
BLtCON0=$DFF040
bltcon1=$DFF042
BLtAFWM=$DFF044
BLtALWM=$DFF046
BLtCPtH=$DFF048
BLtCPtL=$DFF04A
BLtBPtH=$DFF04C
BLtBPtL=$DFF04E
BLtAPtH=$DFF050
BLtAPtL=$DFF052
BLtDPtH=$DFF054
BLtDPtL=$DFF056
BLtsize=$DFF058
BLtCMOD=$DFF060
BLtBMOD=$DFF062
BLtAMOD=$DFF064
BLtDMOD=$DFF066
BLtCDAt=$DFF070
BLtBDAt=$DFF072
BLtADAt=$DFF074
DSKSYNC=$DFF07E
COP1LCH=$DFF080
COP1LCL=$DFF082
COP2LCH=$DFF084
COP2LCL=$DFF086
COPJMP1=$DFF088
COPJMP2=$DFF08A
COPINS=$DFF08C
DIWStRt=$DFF08E
DIWStOP=$DFF090
DDFStRt=$DFF092
DDFStOP=$DFF094
DMACON=$DFF096
CLXCON=$DFF098
INtENA=$DFF09A
INtREQ=$DFF09C
ADKCON=$DFF09E
AUD0LCH=$DFF0A0
AUD0LCL=$DFF0A2
AUD0LEN=$DFF0A4
AUD0PER=$DFF0A6
AUD0VOL=$DFF0A8
AUD0DAt=$DFF0AA
AUD1LCH=$DFF0B0
AUD1LCL=$DFF0B2
AUD1LEN=$DFF0B4
AUD1PER=$DFF0B6
AUD1VOL=$DFF0B8
AUD1DAt=$DFF0BA
AUD2LCH=$DFF0C0
AUD2LCL=$DFF0C2
AUD2LEN=$DFF0C4
AUD2PER=$DFF0C6
AUD2VOL=$DFF0C8
AUD2DAt=$DFF0CA
AUD3LCH=$DFF0D0
AUD3LCL=$DFF0D2
AUD3LEN=$DFF0D4
AUD3PER=$DFF0D6
AUD3VOL=$DFF0D8
AUD3DAt=$DFF0DA
BPL1PtH=$DFF0E0
BPL1PtL=$DFF0E2
BPL2PtH=$DFF0E4
BPL2PtL=$DFF0E6
BPL3PtH=$DFF0E8
BPL3PtL=$DFF0EA
BPL4PtH=$DFF0EC
BPL4PtL=$DFF0EE
BPL5PtH=$DFF0F0
BPL5PtL=$DFF0F2
BPL6PtH=$DFF0F4
BPL6PtL=$DFF0F6
BPLCON0=$DFF100
BPLCON1=$DFF102
BPLCON2=$DFF104
BPL1MOD=$DFF108
BPL2MOD=$DFF10A
BPL1DAt=$DFF110
BPL2DAt=$DFF112
BPL3DAt=$DFF114
BPL4DAt=$DFF116
BPL5DAt=$DFF118
BPL6DAt=$DFF11A
SPR0PtH=$DFF120
SPR0PtL=$DFF122
SPR1PtH=$DFF124
SPR1PtL=$DFF126
SPR2PtH=$DFF128
SPR2PtL=$DFF12A
SPR3PtH=$DFF12C
SPR3PtL=$DFF12E
SPR4PtH=$DFF130
SPR4PtL=$DFF132
SPR5PtH=$DFF134
SPR5PtL=$DFF136
SPR6PtH=$DFF138
SPR6PtL=$DFF13A
SPR7PtH=$DFF13C
SPR7PtL=$DFF13E
SPR0POS=$DFF140
SPR0CtL=$DFF142
SPR0DAtA=$DFF144
SPR0DAtB=$DFF146
SPR1POS=$DFF148
SPR1CtL=$DFF14A
SPR1DAtA=$DFF14C
SPR1DAtB=$DFF14E
SPR2POS=$DFF150
SPR2CtL=$DFF152
SPR2DAtA=$DFF154
SPR2DAtB=$DFF156
SPR3POS=$DFF158
SPR3CtL=$DFF15A
SPR3DAtA=$DFF15C
SPR3DAtB=$DFF15E
SPR4POS=$DFF160
SPR4CtL=$DFF162
SPR4DAtA=$DFF164
SPR4DAtB=$DFF166
SPR5POS=$DFF168
SPR5CtL=$DFF16A
SPR5DAtA=$DFF16C
SPR5DAtB=$DFF16E
SPR6POS=$DFF170
SPR6CtL=$DFF172
SPR6DAtA=$DFF174
SPR6DAtB=$DFF176
SPR7POS=$DFF178
SPR7CtL=$DFF17A
SPR7DAtA=$DFF17C
SPR7DAtB=$DFF17E
COLOR00=$DFF180
COLOR01=$DFF182
COLOR02=$DFF184
COLOR03=$DFF186
COLOR04=$DFF188
COLOR05=$DFF18A
COLOR06=$DFF18C
COLOR07=$DFF18E
COLOR08=$DFF190
COLOR09=$DFF192
COLOR10=$DFF194
COLOR11=$DFF196
COLOR12=$DFF198
COLOR13=$DFF19A
COLOR14=$DFF19C
COLOR15=$DFF19E
COLOR16=$DFF1A0
COLOR17=$DFF1A2
COLOR18=$DFF1A4
COLOR19=$DFF1A6
COLOR20=$DFF1A8
COLOR21=$DFF1AA
COLOR22=$DFF1AC
COLOR23=$DFF1AE
COLOR24=$DFF1B0
COLOR25=$DFF1B2
COLOR26=$DFF1B4
COLOR27=$DFF1B6
COLOR28=$DFF1B8
COLOR29=$DFF1BA
COLOR30=$DFF1BC
COLOR31=$DFF1BE
; fin des registres 
