On 09/03/13 12:57, Blue Swirl wrote:
I did some work on the control sequence handling in 2007 and 2009 based on what Debian 3.1 and NetBSD 4.0 expect of the OpenBIOS console. Later versions of Debian and other distros use fbdev console which is independent of this.
Based on a quick comparison, both Forth and C versions implement a lot of control characters.
Only in Forth version (or real implementation instead of dummy): BEL, VT, Esc-E, Esc-L, Esc-m, Esc-P, Esc-p, Esc-q, Esc-s
Esc-K seems to be simpler in Forth than C version, which has three separate modes. Similarly Esc-J handling does not seem to match.
Only in C console: CAN, SUB
But I have no objection, I can retest Debian 3.1 and NetBSD 4.0 afterwards and try to fix or reimplement if something is missing since the differences seem to be minor.
Great! I've done some testing here, and I do have a proof-of-concept patchset which works well. The problem is that in order to maintain bisectability for each feature, the vast majority of commits end up having to back-out certain parts of previous commits in order to maintain a working binary until the switch occurs.
My plan is to break out the Forth terminal fixes into a separate patchset and commit them straight away, and then post a separate patch series that does the switch. Once this is in done, it should be possible to further tidy up the console/graphic initialisation by moving the low-level C console code from the various architectures into libopenbios/console_common.c to remove even more redundancy.
ATB,
Mark.