[comp.sys.amiga.programmer] BPL1DAT Par -> SER How to trigger?

d89-ahg@sm.luth.se (Anders Hedberg) (04/02/91)

I want a Ham pattern to repeat over the screen, I will not use DMA
and bitplanepointers, I just load the value to repeat into the
BPL1DAT - BPL6DAT registers. My problem is that the parallel to serial
conversion just occours one time, ie when i have loaded the BPL1DAT register
16 bits reach the screen and then nothing... A dummy read or write to the
BPL1DAT sends the same sequence to the screen again.
How do I get the par -> serial conversion to take place without using
valuble 68000 clockcycles?
I wanna have the 68000 free for some heavy 3d calculations.

Below is a program to show what I mean:

;#### 900401 Anders Hedberg
;#### To test the Ham-mode

start:	move.l	4,a6				;Exec-base
	jsr	-30-102(a6)			;Forbid
	
	lea	$dff000,a0			;Custom chip base-adress
	move.l	#copperlist,$80(a0)		;use own copperlist
	move.w	#%0000000100000000,$96(a0)	;No bitplaneDMA
		 ;5432109876543210

loop:	move.w	$110(a0),d0			;DUMMY READ TO TRIG PAR->SER

	btst	#6,$bfe001			;test mosusebutton ...	
	bne	loop				;... until pressed
	move.w	#%1000000100000000,2(a0)	;BitplaneDMAon
	jsr	-30-108(a6)			;Permit

restor:	move.l	#Grname,a1
	clr.l	d0
	jsr	-30-522(a6)			;open GFX library
	move.l	d0,a4
	move.l	38(a4),$dff080			;reinstall old copperlist
	clr.w	$dff088				;restart copperlist
	rts					;Press RightAmiga-M to get back

Grname:	dc.b	"graphics.library",0,0

copperlist:
	dc.l	$01006a00	;6 bitplanes,ham-mode,color	
	dc.l	$01020000	;No scroll
	dc.l	$01040000	;Priority doesn't care
	dc.l	$008e2c81	;Ordinary screen size
	dc.l	$0094f4c1	;	-"-
		
	dc.w	$0112,%0011001100110011	;pattern for bitplane 2
	dc.w	$0114,%0000111100001111	;3
	dc.w	$0116,%0000000011111111	;4
	dc.w	$0118,%1111111111111111	;5	change 
	dc.w	$011a,%1111111111111111	;6	green color
	dc.w	$0110,%0101010101010101	;1
		      ;5432109876543210

	dc.l	$fffffffe