~rabbits/catclock

174fc6fab4f2a5c233ed67553d38aa78798d788b — Devine Lu Linvega 3 months ago 5dc0641
Minor opt
1 files changed, 14 insertions(+), 12 deletions(-)

M src/catclock.tal
M src/catclock.tal => src/catclock.tal +14 -12
@@ 82,12 82,12 @@ BRK

@make-needles ( -- )

	[ #00 .DateTime/second DEI ] DUP2 ADD2 ;sin60 ADD2 LDA2
	[ LIT2 00 -DateTime/second ] DEI DUP2 ADD2 ;sin60 ADD2 LDA2
		#0090 circle .needles/sx STZ2 .needles/sy STZ2
	[ #00 .DateTime/minute DEI ] DUP2 ADD2 ;sin60 ADD2 LDA2
	[ LIT2 00 -DateTime/minute ] DEI DUP2 ADD2 ;sin60 ADD2 LDA2
		#0090 circle .needles/mx STZ2 .needles/my STZ2
	[ #00 .DateTime/hour DEI #0c ( mod ) DIVk MUL SUB #20 SFTk NIP ADD ]
	[ #00 .DateTime/minute DEI #0f DIV ADD2 ] DUP2 ADD2 ;sin60 ADD2 LDA2
	[ LIT2 00 -DateTime/hour ] DEI #0c ( mod ) DIVk MUL SUB #20 SFTk NIP ADD ]
	[ LIT2 00 -DateTime/minute ] DEI #0f DIV ADD2 ] DUP2 ADD2 ;sin60 ADD2 LDA2
		#00b0 circle .needles/hx STZ2 .needles/hy STZ2

JMP2r


@@ 111,8 111,10 @@ JMP2r
	#0c MUL #00 SWP #30 SFT2 ;spritesheet/eyes ADD2 .Screen/addr DEO2
	#0c00
	&loop-eyes
		DUP #06 ( mod ) DIVk MUL SUB #00 SWP #30 SFT2 .center/x LDZ2 #0018 SUB2 ADD2 .Screen/x DEO2
		DUP #06 DIV #00 SWP #30 SFT2 .center/y LDZ2 #0030 SUB2 ADD2 .Screen/y DEO2
		#00 OVR #06
			( mod ) DIVk MUL SUB #30 SFT2 .center/x LDZ2 #0018 SUB2 ADD2 .Screen/x DEO2
		#00 OVR #06
			DIV #30 SFT2 .center/y LDZ2 #0030 SUB2 ADD2 .Screen/y DEO2
		[ LIT2 01 -Screen/sprite ] DEO
		INC GTHk ?&loop-eyes
	POP2


@@ 212,17 214,17 @@ JMP2r
	;fill-icn .Screen/addr DEO2
	#0000 DUP2 .Screen/x DEO2 .Screen/y DEO2
	[ LIT2 11 -Screen/auto ] DEO
	[ LIT &y $1 ] #00
	[ LIT2 00 &y $1 ] SUB
	&v
		[ LIT &x $1 ] #00
		[ LIT2 00 &x $1 ] SUB
		&h
			[ LIT2 01 -Screen/sprite ] DEO
			INC GTHk ?&h
		POP2
			INC DUP ?&h
		POP
		#0000 .Screen/x DEO2
		.Screen/y DEI2k #0010 ADD2 ROT DEO2
		INC GTHk ?&v
	POP2
		INC DUP ?&v
	POP

JMP2r