From owner-freebsd-hackers@FreeBSD.ORG Mon Mar 28 15:51:13 2011 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B060B106566C for ; Mon, 28 Mar 2011 15:51:13 +0000 (UTC) (envelope-from dteske@vicor.com) Received: from postoffice.vicor.com (postoffice.vicor.com [69.26.56.53]) by mx1.freebsd.org (Postfix) with ESMTP id 9775D8FC18 for ; Mon, 28 Mar 2011 15:51:13 +0000 (UTC) Received: from [173.241.25.35] (port=50197 helo=[10.0.0.102]) by postoffice.vicor.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.74) (envelope-from ) id 1Q4Eia-0008Mp-CW; Mon, 28 Mar 2011 08:51:02 -0700 Mime-Version: 1.0 (Apple Message framework v1084) From: Devin Teske In-Reply-To: <201103281003.32661.jhb@freebsd.org> Date: Mon, 28 Mar 2011 08:51:10 -0700 Message-Id: <516E4086-F579-4752-A01D-2D8EC4E2CEAE@vicor.com> References: <16FA7C02-86B0-46E6-A923-BC61357478FA@vicor.com> <201103281003.32661.jhb@freebsd.org> To: John Baldwin X-Mailer: Apple Mail (2.1084) X-Scan-Signature: c61feb86be2d5867fe8e5dc7b9036f8f X-Scan-Host: postoffice.vicor.com Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-hackers@freebsd.org, Devin Teske Subject: Re: New Boot-Loader X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Mar 2011 15:51:13 -0000 On Mar 28, 2011, at 7:03 AM, John Baldwin wrote: > On Monday, March 28, 2011 12:48:03 am Devin Teske wrote: >> Hi fellow hackers, >>=20 >> I'm designing an open-sourced replacement boot-loader for FreeBSD. I = feel >> that the existing options in the boot-loader menu today can be = whittled down >> significantly with a stateful menu system rather than a single-action = item >> menu system. >=20 > Are you reimplementing loader from scratch or just hacking on the 4th = scripts=20 > to display the menu, etc.? The menu is implemented as a series of 4th modules. Here's an earlier = version of the code which I've been using on my LiveDistro boot disc: = druidbsd.cvs.sourceforge.net/viewvc/druidbsd/druidbsd/druidbsd/mdroot/boot= / >=20 >> In designing the new menu, I'd like to get your opinions. =46rom old: >>=20 >> FreeBSD 8.1-RELEASE: twitpic.com/4e485w >>=20 >> to new: >>=20 >> Replacement Boot-Loader: twitpic.com/4e46ol >>=20 >> NOTE: The final release will have a single-user mode option. >>=20 >> The new menu allows for more flexibility as selecting options 2 = ("Boot=20 >> Verbose") or 3 ("ACPI Support") independently toggles the status, = updates the >> menu item, and redisplays the menu -- ever-waiting until the user = ultimately >> presses ENTER, "1", or escapes to the prompt and types "boot". Thus, = one could >> potentially launch single-user mode with verbosity on and ACPI = disabled (if >> one so desired). >=20 > This is good. I think DFly already does this and I had a low priority = item on=20 > my todo list to eventually implement this in the current menu myself. >=20 I think you'll like the Forth code that I've written. I strived to keep = it clean and modular. IMHO I feel that it's really easy to = change/enhance/extend based on the menu mechanics as seen in "menu.rc", = and "include/menu-commands.4th". > --=20 > John Baldwin --=20 Cheers, Devin Teske -> LEGAL DISCLAIMER <- This message contains confidential and proprietary information of the sender, and is intended only for the person(s) to whom it is addressed. Any use, distribution, copying or disclosure by any other person is strictly prohibited. If you have received this message in error, please notify the e-mail sender immediately, and delete the original message without making a copy. -> FUN STUFF <- -----BEGIN GEEK CODE BLOCK----- Version 3.12 GAT/CS/B/CC/E/IT/MC/M/MU/P/S/TW d+(++) s: a- C+++@$ UB++++$ P++++@$ = L++++$ E- W+++ N? o? K? w@ O M++$ V- PS+>++ PE@ Y+ PGP-> t(+) 5? X(+) R(-) tv+ = b+>++ DI+ D+(++) G++ e>++++ h r+++ z+++ ------END GEEK CODE BLOCK------ http://www.geekcode.com/ -> END TRANSMISSION <-