~rabbits/potato

e60dc6831d4da26b4f1538545b24f9b7ea4ae1f3 — neauoire 3 months ago 847c59c
Moved get-meta to meta app
2 files changed, 32 insertions(+), 40 deletions(-)

M src/apps.tal
M src/potato.tal
M src/apps.tal => src/apps.tal +32 -16
@@ 347,34 347,50 @@ JMP2r

&on-draw ( win* -- )

	#0008 ADD2 LDA2 ;make-src JSR2
		;get-meta JSR2

	;get-meta/pict .Screen/addr DEO2
	#76 .Screen/auto DEO
	#0c .Screen/sprite
		DEOk DEOk DEOk DEOk
		DEOk DEOk DEOk DEO

	.Screen/y DEI2k #0030 SUB2 ROT DEO2
	.Screen/x DEI2k #0050 ADD2 ROT DEO2
	#0008 ADD2 LDA2 ;make-src JSR2 .Disk/name DEO2

	( read start )
	#0003 .Disk/length DEO2
	;&header .Disk/read DEO2
	( body )
	;&start LDA2 #0100 SUB2 ;seek JSR2
	#0004 .Disk/length DEO2
	;&end
		DUP2 .Disk/read DEO2
		LDA2 ;&start LDA2 SUB2 .Disk/length DEO2
	;mem-ptr JSR2
		DUP2 .Disk/read DEO2

	.Screen/x DEI2 STH2
	;get-meta/buffer
	.Screen/x DEI2 STH2 DUP2r LIT2r 0040 ADD2r
	( body )
	STH2kr .Screen/x DEO2
	;draw-str JSR2
	.Screen/x DEI2k #0010 ADD2 ROT DEO2
	#20 ;draw-chr JSR2
	#05 ;draw-chr/color STA
	;draw-str JSR2 ;draw-lb JSR2
	STH2kr .Screen/x DEO2
	#0a ;draw-chr/color STA
	;draw-str JSR2 ;draw-lb JSR2
	STH2kr .Screen/x DEO2
	STH2r .Screen/x DEO2
	;draw-str JSR2 ;draw-lb JSR2
	POP2

	( icon )
	STH2r .Screen/x DEO2
	.Screen/y DEI2k #0018 SUB2 ROT DEO2
	;&icon LDA2 #0100 SUB2 ;seek JSR2
	#0200 .Disk/length DEO2
	;mem-ptr JSR2
		DUP2 .Disk/read DEO2
		.Screen/addr DEO2
	#76 .Screen/auto DEO
	#0c .Screen/sprite 
		DEOk DEOk DEOk DEOk
		DEOk DEOk DEOk DEO

	#01 .Screen/auto DEO

JMP2r
	&header $1 &start $2 &end $2 &icon $2

(
@|text )

M src/potato.tal => src/potato.tal +0 -24
@@ 405,30 405,6 @@ JMP2r
(
@|helpers )

@get-meta ( path* -- )

	( setup )
	.Disk/name DEO2
	( read start )
	#0003 .Disk/length DEO2
	;&header .Disk/read DEO2
	( body )
	,&start LDR2 #0100 SUB2 ;seek JSR2
	#0004 .Disk/length DEO2
	;&end
		DUP2 .Disk/read DEO2
		LDA2 ,&start LDR2 SUB2 .Disk/length DEO2
	;&buffer .Disk/read DEO2
	( icon )
	,&icon LDR2 #0100 SUB2 ;seek JSR2
	#0200 .Disk/length DEO2
	;&pict .Disk/read DEO2

JMP2r
	&header $1 &start $2 &end $2 &icon $2
	&buffer $40
	&pict $200

@seek ( length* -- )

	.Disk/name DEI2k ROT  DEO2