
scr=$7a000
struc=$7d000
rastport=struc+100

setupsystem:

bsr getgfx
bsr cleanitdown


move.w #8000-1 ,d0
move.l #scr ,a0
slet: move.b #0 ,(a0)+
dbra d0 ,slet

move.l #scr ,a0
move.l a0 ,struc+8
move.l #struc ,a0
moveq #1 ,d0
move.l #320 ,d1
move.l #200 ,d2
move.l gfxbase ,a6
jsr -390(a6)
move.l #rastport ,a1
jsr -198(a6)
move.l #struc,rastport+4

move.l #copper0,newcop
bsr changecop

;--DEMO

move=-240
draw=-246
setapen=-342

move.l #rastport,a1

;/////// my demo!!! ///////
move.l	#charset,a2	;A2 is the pointer for the charset list.
move.l	#text,a3	;A3 is the pointer to the current letter.
move.l	#end,a4		;A4 is the pointer to the end of the text.
clr.l	d0
clr.l	d1
clr.l	d2
clr.l	d3
clr.l	d4
clr.l	d5
clr.l	d6
clr.l	d7

nextletter:
move.b	(a3),d0

;-----	STUFF IN JUMPERS FOR SPECIAL ROUTINES HERE!

;-----	AND NOT HERE!

subi	#34,d0
mulu	#28,d0
add.l	a2,d0
move.l	d0,a0		;A0 is the pointer to the current coordinate.
move.l	a0,a5
add.l	#28,a5		;A5 is the pointer to the end of letter.

nextline:
move.b	(a0)+,d2
move.b	(a0)+,d3
move	size,d0
mulu	d0,d2
mulu	d0,d3
divu	#3,d2
divu	#3,d3
add	x,d2
add	y,d3
move.b	(a0)+,d6
move.b	(a0)+,d7
mulu	d0,d6
mulu	d0,d7
divu	#3,d6
divu	#3,d7
add	x,d6
add	y,d7

move.b	#$11,d4
move.w	#1,d0
jsr	setapen(a6)
jsr	thisline
move.b	#$11,d4
clr.w	d0
;jsr	setapen(a6)
jsr	thisline

cmp.l	a0,a5
bgt	nextline

;rts

move	x,d0
add	size,d0
add	#4,d0
move	d0,x
addi.l	#1,a3
cmp.l	a3,a4
bne	nextletter
rts


thisline:
clr.l	d0
clr.l	d1
move	d2,d0
move	d3,d1
divs	d4,d0
divs	d4,d1
ext.l	d0
ext.l	d1
jsr	move(a6)

move	d6,d0
move	d7,d1
divu	d4,d0
divu	d4,d1
ext.l	d0
ext.l	d1
move.l	a0,d5
jsr	draw(a6)
move.l	d5,a0

sub	#1,d4
cmpi	#0,d4
bne	thisline

rts

;/////// my demo's over. //

copper0:dc.w	$0100,$1200

	dc.w	$008e,$2c81
	dc.w	$0090,$f4c1
	dc.w 	$0092,$38
	dc.w	$0094,$d0

	dc.w	$0108,$0000
	dc.w	$010a,$0000

	dc.w	$00e0,$0007
	dc.w	$00e2,$a000

	dc.w	$0180,$000
	dc.w	$0182,$fff

dc.w $ffff,$fffe

;*** gfx ***
gfxbase:	dc.l	0
gfxname:	dc.b	'graphics.library',0,0

getgfx:
	move.l	4	,a6
	move.l	#gfxname,a1
	jsr	-408(a6)
	move.l	d0	,gfxbase
rts

;*** change copper list ***

newcop: dc.l 0
;***
changecop:
	move.l	gfxbase	,a0
	move.l	newcop	,50(a0)
rts

;*********

forbid =-132
oldcopper:	dc.l 0

cleanitdown:
move.l 4,a6
jsr	-132(a6)
rts

charset:
dc.b	1,0,1,2,1,3,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;!
dc.b	1,0,1,1,2,0,2,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;"
dc.b	0,0,3,0,0,0,0,2,1,0,1,3,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0;$
dc.b	0,0,0,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;%
dc.b	0,0,0,3,0,0,2,3,2,0,2,3,3,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0;&
dc.b	1,0,1,1,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;'
dc.b	1,0,0,1,0,1,0,2,0,2,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;(
dc.b	2,0,3,1,3,1,3,2,3,2,2,3,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0;)
dc.b	1,0,3,0,0,2,1,0,1,0,1,3,0,2,3,2,0,2,0,3,1,0,1,0,1,0,1,0;AF
dc.b	0,0,2,0,0,0,0,1,1,0,1,1,0,1,2,1,1,1,1,2,2,1,2,2,0,2,2,2;SS
dc.b	1,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2;,
dc.b	0,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2;-
dc.b	1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3;.
dc.b	0,3,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0;/
dc.b	0,0,3,0,3,0,3,3,0,3,3,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0;0
dc.b	1,0,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;1
dc.b	0,0,3,0,3,0,3,2,0,2,3,2,0,2,0,3,0,3,3,3,0,0,0,0,0,0,0,0;2
dc.b	0,0,3,0,3,0,3,3,0,3,3,3,1,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;3
dc.b	0,0,0,2,0,2,3,2,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;4
dc.b	0,0,3,0,0,0,0,2,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0,0,0,0,0;5
dc.b	0,0,3,0,0,0,0,3,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0,0,0,0,0;6
dc.b	0,0,3,0,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;7
dc.b	0,0,3,0,3,0,3,3,0,0,0,3,0,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;8
dc.b	0,0,3,0,0,0,0,2,0,2,3,2,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0;9
dc.b	1,0,1,0,1,3,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;:
dc.b	0,1,1,3,1,3,3,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1;Amiga
dc.b	3,0,0,2,0,2,3,3,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0;>
dc.b	0,1,3,1,0,2,3,2,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1;=
dc.b	0,0,3,2,0,3,3,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;>
dc.b	0,0,3,0,3,0,3,1,0,1,3,1,0,1,0,2,0,2,3,2,1,3,2,3,0,0,0,0;?
dc.b	0,0,3,3,1,0,3,2,0,1,2,3,0,3,3,0,0,2,2,0,1,3,3,1,0,0,0,0;XX
dc.b	0,0,3,0,0,0,0,3,3,0,3,3,0,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;A
dc.b	0,0,0,3,0,0,3,0,3,0,3,1,3,1,2,1,2,1,3,2,3,2,3,3,0,3,3,3;B
dc.b	0,0,3,0,0,0,0,3,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;C
dc.b	0,0,2,0,2,0,3,1,3,1,3,2,3,2,2,3,0,3,2,3,0,0,0,3,0,0,0,0;D
dc.b	0,0,3,0,0,0,0,3,0,2,2,2,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0;E
dc.b	0,0,3,0,0,0,0,3,0,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;F
dc.b	0,0,3,0,0,0,0,3,0,3,3,3,3,2,1,2,0,0,0,0,0,0,0,0,0,0,0,0;G
dc.b	0,0,0,3,0,2,3,2,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;H
dc.b	1,0,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0;I
dc.b	3,0,3,3,3,3,0,3,0,3,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;J
dc.b	0,0,0,3,0,2,3,0,0,2,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;K
dc.b	0,0,0,3,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;L
dc.b	0,0,0,3,0,0,1,1,1,1,3,0,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0;M
dc.b	0,0,0,3,0,0,3,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;N
dc.b	0,0,3,0,3,0,3,3,3,3,0,3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0;O
dc.b	0,0,3,0,3,0,3,2,0,0,0,3,0,2,3,2,0,0,0,0,0,0,0,0,0,0,0,0;P
dc.b	0,0,3,0,3,0,3,3,0,0,0,3,0,3,3,3,2,2,3,3,0,0,0,0,0,0,0,0;Q
dc.b	0,0,3,0,0,0,0,3,0,2,3,2,3,0,3,2,0,2,3,3,0,0,0,0,0,0,0,0;R
dc.b	0,0,3,0,0,0,0,2,0,2,3,2,3,2,3,3,0,3,3,3,0,0,0,0,0,0,0,0;S
dc.b	0,0,3,0,1,0,1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;T
dc.b	0,0,0,3,0,3,3,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;U
dc.b	0,0,1,3,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;V
dc.b	0,0,0,3,0,3,1,3,1,3,3,3,3,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0;W
dc.b	0,0,3,3,3,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;X
dc.b	0,0,1,2,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;Y
dc.b	0,0,3,0,0,3,3,0,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;Z
dc.b	0,0,3,0,0,0,0,3,0,2,3,2,1,0,1,3,1,3,3,3,0,0,0,0,0,0,0,0;Æ
dc.b	0,0,3,0,0,0,0,3,0,3,3,0,3,0,3,3,0,3,3,3,0,0,0,0,0,0,0,0;Ø
dc.b	0,1,3,1,0,1,0,1,0,2,3,2,3,1,3,3,0,1,0,2,1,0,1,0,1,0,1,0;Å

even

size:
dc.w	7

x:
dc.w	50

y:
dc.w	100

text:
dc.b	"SWEINSTEIN!!!"
end:
