So I've finally gotten around to attempting a feature I mentionted back
in June 2007: using ASCII line-drawing characters for the borders around
beastie/fbsdlogo in frames.4th:

http://lists.freebsd.org/pipermail/freebsd-hackers/2007-June/020851.html

I was hoping there might be some folks familiar with the existing Forth
pieces in /boot who could help, since debugging this is incredibly
difficult.  This is my first time with Forth, which is probably where
the true problem lies...

My idea was to implement a loader_logo_lines loader variable, which you
could set to "ascii" to achieve the desired effect -- but simultaneously
retaining support for the PC98 character set, and the CP437 (IBM PC
ANSI) set if the variable isn't defined, or is set to something it
doesn't understand.

So far I've managed to crash loader(8) doing the below, with the message
"sh_el not found" from ficl on the serial console, then either an
infinite register dump or an automatic reboot.

I moved the PC98 and CP437 line constants into routines named pc98_lines
and cp437_lines repectively, and made one called ascii_lines.  The main
code piece I changed in frames.4th became this:

s" loader_logo_lines" getenv
        dup -1 = if
                drop
                s" arch-pc98" environment? if
                        drop
                        pc98_lines
                else
                        drop
                        cp437_lines
                then
        then
        2dup s" ascii" compare-insensitive 0= if
                2drop
                ascii_lines
        then
        2drop
        cp437_lines

I suspect this is what's broken, causing none of the routines to get
executed, thus sh_el never gets defined.  The version is here:
http://jdc.parodius.com/freebsd/frames.4th.new

-- 
| Jeremy Chadwick                                    jdc at parodius.com |
| Parodius Networking                           http://www.parodius.com/ |
| UNIX Systems Administrator                      Mountain View, CA, USA |
| Making life hard for others since 1977.                  PGP: 4BD6C0CB |

_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to