Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Dec 2012 07:39:20 -0800
From:      Devin Teske <devin.teske@fisglobal.com>
To:        Jaakko Heinonen <jh@FreeBSD.org>
Cc:        FreeBSD Hackers <freebsd-hackers@freebsd.org>, Devin Teske <dteske@freebsd.org>
Subject:   Re: loader and ficl/Forth help
Message-ID:  <E0CCF77E-6515-4F57-9825-E2FE60AAFEE8@fisglobal.com>
In-Reply-To: <20121207102836.GA1808@a91-153-116-96.elisa-laajakaista.fi>
References:  <3386ABA0-B05E-4E52-B9F7-35555A8AAFDA@fisglobal.com> <20121207102836.GA1808@a91-153-116-96.elisa-laajakaista.fi>

next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_0A50479D-638A-44CA-B3F7-F7F7D3339F14
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="us-ascii"

Thanks for testing Jaakko.

Can you re-test with the attached patch?

I cleaned things up a bit while addressing the problem that a later call to=
 f_double was un-doing the previous installation of the ASCII charset.

This new patch should work (and I re-tested, having had ample sleep this ti=
me).
--=20
Thanks in advance,
Devin

_____________
The information contained in this message is proprietary and/or confidentia=
l. If you are not the intended recipient, please: (i) delete the message an=
d all copies; (ii) do not disclose, distribute or use the message in any ma=
nner; and (iii) notify the sender immediately. In addition, please be aware=
 that any message addressed to our domain is subject to archiving and revie=
w by persons other than the intended recipient. Thank you.

--Apple-Mail=_0A50479D-638A-44CA-B3F7-F7F7D3339F14
Content-Disposition: attachment; filename="patch.txt"
Content-Type: text/plain; name="patch.txt"
Content-Transfer-Encoding: 7bit

Index: support.4th
===================================================================
--- support.4th	(revision 242835)
+++ support.4th	(working copy)
@@ -201,6 +201,42 @@ create last_module_option sizeof module.next allot
 
 : getenv?  getenv -1 = if false else drop true then ;
 
+\ determine if a word appears in a string, case-insensitive
+: contains? ( addr1 len1 addr2 len2 -- 0 | -1 )
+	2 pick 0= if 2drop 2drop true exit then
+	dup 0= if 2drop 2drop false exit then
+	begin
+		begin
+			swap dup c@ dup 32 = over 9 = or
+			over 10 = or over 13 = or swap drop
+		while 1+ swap 1- repeat
+		swap 2 pick 1- over <
+	while
+		2over 2over drop over compare-insensitive 0= if
+			2 pick over = if 2drop 2drop true exit then
+			2 pick tuck - -rot + swap over c@ dup 32 =
+			over 9 = or over 10 = or over 13 = or
+			swap drop if 2drop 2drop true exit then
+		then begin
+			swap dup c@
+			dup 32 = over 9 = or over 10 = or over 13 = or
+			swap drop if false else true then 2 pick 0> and
+		while 1+ swap 1- repeat
+		swap
+	repeat
+	2drop 2drop false
+;
+
+: boot_serial? ( -- 0 | -1 )
+	s" console" getenv dup -1 <> if
+		s" comconsole" 2swap contains?
+	else drop false then
+	s" boot_serial" getenv dup -1 <> if
+		s" YES" compare-insensitive 0=
+	else drop false then
+	or ( true if either console contains comconsole or boot_serial=YES )
+;
+
 \ Private definitions
 
 vocabulary support-functions
Index: frames.4th
===================================================================
--- frames.4th	(revision 242835)
+++ frames.4th	(working copy)
@@ -12,6 +12,11 @@ variable rt_el
 variable rb_el
 variable fill
 
+\ ASCII frames (used when serial console is detected)
+ 45 constant ascii_dash
+124 constant ascii_pipe
+ 43 constant ascii_plus
+
 s" arch-pc98" environment? [if]
 	\ Single frames
 	149 constant sh_el
@@ -63,7 +68,17 @@ s" arch-pc98" environment? [if]
 	loop
 ;
 
+: f_ascii ( -- )	( -- )	\ set frames to ascii
+	ascii_dash h_el !
+	ascii_pipe v_el !
+	ascii_plus lt_el !
+	ascii_plus lb_el !
+	ascii_plus rt_el !
+	ascii_plus rb_el !
+;
+
 : f_single	( -- )	\ set frames to single
+	boot_serial? if f_ascii exit then
 	sh_el h_el !
 	sv_el v_el !
 	slt_el lt_el !
@@ -73,6 +88,7 @@ s" arch-pc98" environment? [if]
 ;
 
 : f_double	( -- )	\ set frames to double
+	boot_serial? if f_ascii exit then
 	dh_el h_el !
 	dv_el v_el !
 	dlt_el lt_el !

--Apple-Mail=_0A50479D-638A-44CA-B3F7-F7F7D3339F14
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="us-ascii"




On Dec 7, 2012, at 2:28 AM, Jaakko Heinonen wrote:

> On 2012-12-07, Devin Teske wrote:
>>> http://www.freebsd.org/cgi/query-pr.cgi?pr=3D121064
>>>=20
>>=20
>> I've made some improvements to the supplied patch. Said improvements =
should address the previous issues that were preventing this from going =
in.
>>=20
>> Can someone test the newly-attached patch.txt and get back to me?
>=20
> I tried the latest patch in the PR and it didn't work for me. I have =
the
> following line in my /boot/loader.conf:
>=20
> console=3D"comconsole"
>=20
> Attached is a screenshot from the menu. It's still using non-ASCII
> characters.
>=20
> --=20
> Jaakko
> <menu.png>


--Apple-Mail=_0A50479D-638A-44CA-B3F7-F7F7D3339F14--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E0CCF77E-6515-4F57-9825-E2FE60AAFEE8>