~rabbits/left

a35aae10e42de48273e752f309fb5633c413e0c4 — Devine Lu Linvega a month ago 3c764ff
Simplfied get-segw
1 files changed, 18 insertions(+), 23 deletions(-)

M src/left.tal
M src/left.tal => src/left.tal +18 -23
@@ 327,7 327,7 @@ BRK
	&hor
		LDAk #0a EQU ?&hor-end
		walk-color POP
		LDAk get-chrw STH2 ADD2r
		DUP2 get-segw STH2 ADD2r
		LTH2kr STHr ?&hor-end
		INC2 LDAk ?&hor
	&hor-end


@@ 458,7 458,7 @@ JMP2r
	DUP2 find-line-start
	&l
		EQU2k ?&end
		LDAk get-chrw STH2 ADD2r
		DUP2 get-segw STH2 ADD2r
		INC2 GTH2k ?&l
	&end
	POP2 POP2


@@ 466,17 466,6 @@ JMP2r

JMP2r

@get-width ( addr* -- width* )

	DUP2 is-rune ?&rune
	LDAk DUP #7e GTH
		?&special
	get-chrw

JMP2r
	&special POP
	&rune #0008 JMP2r

@update-selection ( -- )

	( scroll-x )


@@ 1016,21 1005,12 @@ JMP2r
	&tab POP ;tab-icn JMP2r
	&unknown POP ;checkered-icn JMP2r

@get-chrw ( c -- width* )

	DUP #7f GTH ?&unknown
	#0000 ROT ;font ADD2 LDA

JMP2r
	&fixed #0000 ROT ;font-mono ADD2 LDA JMP2r
	&unknown POP #0008 JMP2r

@get-strw ( str* -- width* )

	LIT2r 0000
	LDAk #00 EQU ?&skip
	&w
		LDAk get-chrw STH2 ADD2r
		DUP2 get-segw STH2 ADD2r
		INC2 LDAk ?&w
		&skip
	POP2


@@ 1038,6 1018,21 @@ JMP2r

JMP2r

@get-segw ( addr* -- width* )

	DUP2 is-rune ?&special
	LDA !get-chrw
	&special POP2 #0007 JMP2r

@get-chrw ( c -- width* )

	DUP #7f GTH ?&unknown
	#0000 ROT ;font ADD2 LDA

JMP2r
	&fixed #0000 ROT ;font-mono ADD2 LDA JMP2r
	&unknown POP #0008 JMP2r

@draw-str-right ( text* -- )

	DUP2 get-strw STH2