Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main Page
Community Portal
Village Pump
Recent Changes
Upload File
Help
Help Contents
Editing Guide
Repair Guide Template
Sandbox
Browse Wiki
๐ Service Manuals
๐ Schematics
๐ Apple
๐ฎ Nintendo
๐ Sega
โก Troubleshooting
Search
Search
Appearance
Create account
Log in
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Editing
PsionLX
(section)
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== What PsionLX contained == Everything in this section is taken from Psion's own build tree and kernel image, except where another source is cited. It describes Psion's system, not the reconstruction. === Boot sequence === [[File:PsionLX beta splash screen.png|thumb|300px|Psion's 800 ร 600 PsionLX boot splash, from the <code>gpe-bootsplash</code> recipe in Psion's tree]] The netBook Pro's firmware bootloader, BooSt, loads an operating system image named <code>nBkProOs.img</code> from internal NAND or from a CompactFlash card. BooSt reports itself as "Psion Teklogix netBook2 BooSt".<ref name="boostdongle" /> For Linux the image is a kernel and initial ramdisk wrapped in a 256-byte BooSt header. <code>netbook-booting.txt</code> documents the header: platform ID <code>0x326B426E</code>, load offset <code>0x408000</code>, and image flags <code>0x10003</code> for a CF image (maximum 8,388,608 bytes) or <code>0x10013</code> for a NAND image (maximum 3,702,784 bytes). Bit 16 marks the payload as zlib-compressed and bit 4 copies it to the OS partition.<ref name="anon-lt" /> A 2007 analysis found extra start-up code in Psion's boot images, which sets up the hardware and moves the kernel and ramdisk into place, and for which no source has been found.<ref name="hpcf-oldman-0711" /> The kernel is <code>2.6.9-rc1-bk18-nb1</code>. The same forum analysis found the kernel source in Psion's archive identical to 2.6.9-rc1-bk18 with <code>linux-2.6.9-pre1-bk18-nbp1.patch</code>, published in Koen Kooi's directory at linuxtogo.org, applied.<ref name="hpcf-oldman-0711" /> Psion's image also carries module paths for <code>2.4.26-vrs1-pxa1-nb1</code>, and the tree has a 2.4.26 kernel recipe, so a 2.4 kernel was built for the machine as well.<ref name="kernel-strings" /><ref name="oe-tree" /> The initial ramdisk script, "Netbook LX initial ramdisk boot script", handles both kernel series. Under 2.4 it loads the <code>i2c</code> and <code>i2ckbd</code> keyboard modules; under 2.6 it prints "Running Linux 2.6 System". It then:<ref name="initrd" /> # mounts the first CF partition read-only and, if it holds an executable <code>NBLXLoad.sh</code>, runs it (this is how a new system was written to the internal flash); # tries to mount the internal NAND as JFFS2 (<code>/dev/mtdblock/0</code>) as the root filesystem; # if that fails, tries the second CF partition (<code>/dev/hda2</code>); # pivots into the root filesystem, leaving the ramdisk at <code>/initrd</code>, and starts <code>/sbin/init</code>. The ramdisk stays mounted at <code>/initrd</code> because it holds the kernel modules. The image recipe points <code>/lib/modules</code> at <code>../initrd/lib/modules</code> for that reason.<ref name="oe-meta" /> On the root filesystem, <code>gpe-bootsplash</code> draws Psion's splash, and <code>gpe-dm</code> starts the kdrive X server on the framebuffer and runs the scripts in <code>/etc/X11/Xinit.d</code>. The last of them, Psion's <code>99psion-session</code>, hands the display to user <code>lx</code>:<ref name="oe-tree" /><ref name="rtc-docs" /> <pre> chown lx /dev/dsp /dev/mixer if ! grep -q '^lx::' /etc/passwd; then exec gpe-login else ln -s /var/tmp/xsession-errors.lx /home/lx/.xsession-errors exec su lx -c /etc/X11/Xsession >> /home/lx/.xsession-errors 2>&1 fi </pre> The session then runs Psion's <code>95psion-apps</code>, which copies Psion's button bar layout into the user's home directory ("this also neatly avoids the annoying welcome screen and timezone setter", in the script's own comment), and starts Matchbox with Psion's session file:<ref name="oe-tree" /> <pre> gpe-soundserver & gpe-appmgr -d -r & matchbox-panel --orientation south --size 48 --no-menu & exec matchbox-window-manager $@ </pre> === The desktop === [[File:PsionLX Today screen on a netBook Pro.jpg|thumb|300px|The TODAY screen of PsionLX on a netBook Pro (photograph: fss_88). The date is the machine's clock.]] The desktop is <code>gpe-appmgr</code> in desktop mode (<code>-d</code>) and row view (<code>-r</code>), built from Psion's own branch of the program (CVS tag <code>GPE_APPMGR_56</code>).<ref name="oe-tree" /> The photographs of running machines show its layout:<ref name="pulster" /><ref name="fss88" /> * A strip of three amber tabs down the right-hand edge: TODAY, PROGRAMS and TASKS. * TODAY shows the date and a summary: Wi-Fi card present or not, internet connection, e-mail inbox and outbox, appointments and the to-do list, with a "Show this screen at startup" checkbox. * PROGRAMS shows the applications in four boxed groups, OFFICE, INTERNET, PIM and OTHER, each with its name written vertically down its left side. * A large pale Psion blockletter watermark runs down the left of the screen. * A 48-pixel bar along the bottom holds Psion's button bar (<code>gpe-buttonbox</code>, Psion's CVS tag 50) on the left, with Desk, Docs, Email, Web, Word, Sheet, Calendar, Contacts and Other, and the clock, volume, battery and card-ejector applets on the right. Psion's panel layout file lists exactly that, with a tab character separating the left group from the right:<ref name="oe-tree" /> <pre> gpe-buttonbox -p gpe-clock mb-applet-battery minimix psion-card-ejector </pre> The TASKS screen offered Psion's task scripts. Three recipes describe themselves that way: <code>iconnect</code> ("Internet connection script for tasks screen"), <code>backup</code> ("Backup script for tasks screen") and <code>mydocs</code> ("Task to specify location of My Documents"). The TASKS page itself was an HTML file, <code>gpe-appmgr/tasks.html</code>. It is lost, but Psion's <code>add-backup.patch</code> of 26 August 2004 edits it, and shows a table of tasks with icons in which "Back up your information" becomes a link to <code>launch:backup.sh</code>, beside an entry reading "Get help". The launcher recipe depends on Psion's HTML viewer, <code>gpe-helpviewer</code>.<ref name="oe-tree" /> === Theme, settings and keyboard === The <code>psion-theme</code> package has two halves. The GTK half is a <code>gtkrc</code> using the "mist" engine, with a <code>#E2E2E2</code> base and <code>#a1b6d7</code> for the clock and button bar. The window manager half is 20 PNG images plus <code>theme.xml</code> and <code>theme.desktop</code>. Psion derived it from the Blondie Matchbox theme and never renamed it: <code>theme.xml</code> still opens <code><theme name="blondie" author="Matthew Allum - mallum@handhelds.org"</code>, with <code>bgcol</code> and <code>dockcol</code> set to <code>#a1b6d7</code>.<ref name="oe-tree" /> Psion's XSettings override is four lines. It sets the double-click timing, turns Matchbox compositing off and selects the theme:<ref name="oe-tree" /> <pre> Net/DoubleClickTime:I:600 Net/DoubleClickDistance:I:7 MATCHBOX/COMPOSITE:S:off Net/ThemeName:S:psion </pre> The session also sets <code>LANG=en_GB</code>, sets <code>GPE_PRETEND_STYLUS=1</code>, and loads Psion's keyboard map for the machine, <code>xmodmap-netbookpro</code>. Psion's Matchbox keyboard bindings are:<ref name="oe-tree" /> {| class="wikitable styled-table" style="width:60%; text-align:left;" |+'''Psion's window manager key bindings (<code>kbdconfig</code>)''' ! Keys !! Action |- | Mod3 + D || Show the desktop |- | Mod3 + C || Touchscreen calibration (<code>xtscal</code>) |- | Mod3 + Left Alt || Internet dialler (<code>gkdial</code>) |- | Ctrl + Alt + Backspace || <code>reset.sh</code>, which asks "Are you sure you wish to restart the session?" |- | Alt + Tab, Alt + Shift + Tab || Next and previous window |- | Alt + Escape || Show the desktop |- | Alt + 4 || Close the window |} Help is a set of about a hundred HTML pages and images titled "Using your Netbook LX", with sections for the main applications, and there is a sixteen-page tutorial.<ref name="oe-tree" /> === Applications === <code>meta-psion.oe</code> ("Meta-packages for Psion Netbook LX", revision r23) groups the applications into <code>psion-apps</code>, <code>psion-net</code>, <code>psion-media</code>, <code>psion-games</code> and <code>psion-debug</code>. Every icon in the photograph of the PROGRAMS screen maps to a package in it or in the GPE manifest, <code>meta-gpe.oe</code>. The versions and patch counts below are from Psion's recipes; where more than one recipe exists, the newest is given.<ref name="oe-meta" /><ref name="pulster" /> {| class="wikitable styled-table" style="width:100%; text-align:left;" |+'''The 21 applications on the PsionLX PROGRAMS screen''' ! Launcher name !! Group !! Package !! Version Psion pinned !! Psion's patches |- | Calculator || OFFICE || galculator || 1.2.3 || 7 |- | Sheet || OFFICE || Gnumeric || 1.3.93 || 9 (<code>psion.patch</code> alone changes 24 files) |- | Sketch Pad || OFFICE || gpe-sketchbook || 0.2.8 || 3 |- | Word || OFFICE || AbiWord || 2.0.12 || 4, including <code>abiword-psion.patch</code>, which sets Thorndale AMT as the default font |- | Email || INTERNET || Balsa || 2.2.2 || 2 (<code>netbook-20041110.patch</code> changes 86 files) |- | Instant Messenger || INTERNET || Gaim || 1.0.0 || 1 |- | Internet Dialler || INTERNET || gkdial || 1.8.1 || 3 |- | Remote Desktop || INTERNET || grdesktop with rdesktop || 0.23 and 1.3.1 || <code>desktop-name.patch</code> on grdesktop; 4 on rdesktop |- | Web || INTERNET || Firefox || 1.0 || 8, including <code>startup-page.patch</code>, which opens Psion's branded start page |- | Calendar || PIM || gpe-calendar || 0.58 || 5 |- | Contacts || PIM || gpe-contacts || 0.32 || 7 |- | Files || PIM || gpe-filemanager || 0.21 || 6 |- | Image Viewer || PIM || gpe-gallery || 0.95 || 5 |- | To-do list || PIM || gpe-todo || 0.49 || 4 |- | Control Panel || OTHER || gpe-conf || 0.1.21 || 8 |- | Media Player || OTHER || Totem || 0.99.15.1 || 4 |- | My Network || OTHER || LinNeighborhood || 0.6.5 || 4 |- | PDF Viewer || OTHER || gpdf || 2.7.90 || 2 |- | Solitaire || OTHER || AisleRiot, from gnome-games || 2.6.2 || <code>short-name.patch</code> |- | Terminal || OTHER || gpe-terminal || 1.1 || none |- | Text Editor || OTHER || gpe-edit || 0.28 || 3 |} The same manifest adds the Agfa fonts, the aspell English dictionary, the Gaby database, the GNOME CUPS print manager and ESP Ghostscript, Zenity, <code>infoprint</code>, Bluetooth and IrDA beaming, the <code>aumix</code> and <code>minimix</code> volume controls, and the debugging tools <code>strace</code>, <code>mtd</code>, <code>xprop</code>, <code>xhost</code>, <code>scap</code>, <code>ldd</code>, <code>gdbserver</code> and <code>catchsegv</code>. A comment beside the games group reads "want minesweeper :P".<ref name="oe-meta" /> Underneath, Psion built its own copies of the base libraries: GTK+ 2.4.13 with 18 patches, GLib 2.4.7, and a kdrive X server from CVS with 5 patches.<ref name="oe-tree" /> === Other Psion components === {| class="wikitable styled-table" style="width:100%; text-align:left;" |+'''Psion-specific packages in the build tree''' ! Package !! What it does |- | <code>psion-session</code> || Session start-up scripts, button bar layout, XSettings override, keyboard map, locale, stylus setting and the session-reset script |- | <code>psion-theme</code> || The GTK and Matchbox theme described above |- | <code>psion-help</code>, <code>psion-tutorial</code> || The help pages and the sixteen-page tutorial |- | <code>psion-card-ejector</code> || A panel applet that runs <code>eject.sh</code> as root. The script unmounts any CF and MMC cards, stops the IDE card service on <code>hda</code> and <code>hdc</code>, and then shows "You can now remove your CF or MMC cards safely" |- | <code>psion-sierra</code> || PCMCIA card definitions for the "Sierra Wireless AC710/AC750 GPRS Network Adapter" and the "Pretec CompactModem or Globetrotter GPRS", both bound to the serial driver |- | <code>ppp</code> || GPRS peer files for Orange, Vodafone, O2 and T-Mobile with their chat scripts |- | <code>wpan-tools</code> || <code>bt_connect.sh</code> and <code>ir_connect.sh</code>, dial-up helpers for Bluetooth and IrDA phones |- | <code>plptools</code> || Psion's build of the PLP tools with a <code>plp_upgrade</code> script which "Extracts and moves files from previous versions of Psion Product over to the LX": it starts <code>ncpd</code> on the serial port and runs <code>plpbackup</code> against an EPOC Psion |- | <code>sync-serv</code> || "LX Sync Server", a small C program that answers file, SQL, directory-listing and command requests from a Windows PC over a pipe |- | <code>iconnect</code>, <code>backup</code>, <code>mydocs</code> || The TASKS screen scripts |- | <code>agfa-fonts</code> || Albany AMT, Thorndale AMT, Cumberland AMT and Arial Narrow, sixteen faces in all |- | <code>gpe-appmgr-psion</code>, <code>gpe-buttonbox-psion</code> || The launcher (tag 56) and button bar (tag 50), fetched from Psion's CVS |- | <code>psion-kernel</code> || Headers-only recipe for the 2.4.26 kernel, fetched from Psion's CVS |}
Summary:
Please note that all contributions to RetroTechCollection may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
RetroTechCollection:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
PsionLX
(section)
Add topic