Configuring Pikachu

Summary: Configuring a Toshiba Portégé 320CT laptop with GNU/Linux (Debian 2.2 potato) and the K Desktop Environment (KDE)..

Contents

  1. Introduction
  2. Configuration
    1. Hardware
    2. Software
  3. Hardware Setup
    1. BIOS Settings
  4. Linux Setup
    1. Install Linux
    2. Configure Initial Package Set
    3. Configure Sound
    4. Configure NFS and Automount
    5. Create User Accounts
    6. Install KDE
    7. Install Additional Packages
    8. Save Configuration
    9. Configure Dialup
    10. Configure Mail
    11. Configure Desktops
  5. Applications
    1. Amaya
    2. Toshiba Linux Utilities
  1. Data Files
  2. Scripts
  3. References and Resources

Introduction

I (Ted Ruegsegger) prepared this document as:

Configuration

Hardware

Component Description
Console Toshiba Portégé 320CT laptop with:
  • 10.4in LCD display
  • "finger-joystick" and two thumb-buttons, in lieu of mouse (detected as PS/2 mouse)
  • 2 PCMCIA "credit-card" sockets
  • USB port
  • External headphone or speaker jack (stereo)
  • Microphone (mono)
  • Internal speaker (mono)
  • VGA port for external monitor
  • Infrared port
  • Expansion bus for docking station or port expander

The I/O Bar(Port Expander), when attached, provides:

  • Port for external floppy drive
  • Serial port
  • Parallel port
  • PS/2 port for keyboard or mouse
Processor Intel Pentium, 266 MHz
Memory 64 MB EDO RAM, max 96 (one slot)
Hard Disk Toshiba HDD2932, MK1011GAV EIDE "10.05 GB" = 10,056,130,560 bytes = 9590.27 MB = 9.37 GB
CD-ROM Drive none
Graphics Adapter Chips & Technologies B65555, 2MB (uses SVGA X server)
Monitor 10.4in LCD display, Panoramic Active Matrix Color (16:9 aspect ratio), 1024x600, 0.22mm dot pitch, 100:1 contrast ratio. HorizSync 30-64, VertRefresh 40-100
Sound Yamaha OPL3-SA3 (emulates SoundBlaster Pro and Windows Sound System). Parameters set in BIOS.
PCMCIA Controller i82365 (Controller mode in BIOS can toggle between PCIC compatible, CardBus/16-bit, Auto-Selected)
Network Card 3Com Etherlink III 3C589D PCMCIA Ethernet card (10 Mbps)
Modem
  • Internal K56Flex Voice/Data/Fax modem w/V.80 (for video conferencing); Toshiba seems loath to disclose the make and model (3Com XJ1560J?), so it's probably a winmodem. On the other hand, the Linux/Modem Compatibility Knowledge Base at http://www.idir.net/~gromitkc/winmodem.html lists the Megahertz XJ1560 as working with Linux, so it might be worth a try. I chose instead to purchase a PCMCIA modem:
  • 3Com 3CXM056-BNW PCMCIA 56K modem
USB Controller NEC Open Host Controller: usb-ohci
Mouse
  • Logitech 3-button USB (don't leave home without it).
  • Internal "finger joystick" or "nipple" which is a PS/2 "mouse."
Floppy Disk Drive 1.44 MB 3.25in. in external drive, attached to the port expander

Software

Operating System Debian GNU/Linux 2.2 (Potato)

Hardware Setup

It's probably a good idea to install the flash BIOS upgrade and any others, obtained from the Toshiba website (see References).

BIOS Settings

To access the BIOS, hit Esc right after boot, before the Toshiba logo shows (if you miss, hit Ctrl-Alt-Del immediately and try again). Use PgUp/PgDn to switch between the two pages.

Set (and note) the parameters for the various devices, in particular, the sound card.

On page 2, under PC CARD, set Controller Mode=PCIC Compatible, or the PCMCIA ethernet card won't work.

Linux Setup

Install Linux

Install GNU/Linux from the installation media, in my case the three-CD set for Debian GNU/Linux 2.2r2 (Potato). Some notes:

  1. Since Pikachu has no CDROM drive, I considered using an FTP or NFS installation. However, since I was new to Debian and anticipated several experimental installs, I opted instead to install from hard disk. Since I had lots of disk space and a working Linux already installed, it was a simple matter to copy the CD contents and boot files via NFS or FTP, after which I booted from the rescue floppy (and loaded the RAMDISK image from the root floppy), as described below.

    All of this is documented, a bit convolutedly, in the Debian Installation Manual, beginning at Installing from a Linux Partition.

  2. Designate a separate ext2 partition that won't be overwritten by the installation. I used /home and made subdirectories under /home/cdrom/ for each of the three CDs.

  3. Create a rescue floppy and a root floppy from the rescue.bin and root.bin images on the first CD's install/ subdirectory, in my case /home/cdrom/deb22r2-1/install/, using
    dd if=file of=/dev/fd0 bs=1024 conv=sync ; sync
    These floppies need to be flawless, or one or the other will fail. It may take several tries to get good ones.

  4. Boot from the rescue floppy and load the root floppy when prompted.

  5. Partition the disk thus and mount / and /home:
    Disk /dev/hda: 255 heads, 63 sectors, 1222 cylinders
    Units = cylinders of 16065 * 512 bytes
    Device Cyls Start End MB Type Mount Point
    /dev/hda1 522 1 522 4095 83 Linux native /
    /dev/hda2 32 523 554 251 82 Linux swap
    /dev/hda3 668 555 1222 5240 83 Linux native /home
    Total 1222 1 1222 9586

    Note!
    The filesystems for the system under construction are temporarily mounted under /target/

  6. When the Debian install starts, specify an installation from an already mounted filesystem and then point it (using the <...> browse feature) at the directory containing the archives:
    /target/home/cdrom/deb22r2-1/dists/stable/main/disks-i386/current/

    (it's sufficient to specify just /target/home/cdrom/deb22r2-1/ )

  7. Specify PCMCIA support (i82365 controller).

  8. Install modules, in order:
    Category Module Options
    misc opl3 io=0x388
    misc sb io=0x220 irq=5 dma=0 mpu_io=0x330
    Note!
    For some reason, configuring it as what it actually is (Yamaha OPL3-SA3) gets poor results. It works best as SoundBlaster 16.
    usb input
    usb hid
    usb mousedev
    usb

    usb-ohci

  9. Configure the network (these values are for my network):
    Fully-qualified domain name pikachu.home
    IP address 192.168.0.100
    Subnet mask 255.255.255.0
    Gateway 192.168.0.1
    DNS servers 131.131.157.250
    131.131.220.201

  10. Install LILO on the master boot record /dev/hda

  11. Make a boot diskette.

After the new kernel boots,

  1. Enable MD5 and shadow passwords.
  2. Apt configuration: specify "filesystem" and point it at /home/cdrom/deb22r2-{1 2 3}, in succession.
  3. Package installation: run the simple package installer, selecting nothing; it will install some default packages.
  4. Defer exim configuration (select 5, no configuration).

Configure Initial Package Set

  1. At the first login prompt, log in as root and create the mouse device:
    mkdir /dev/input
    mknod /dev/input/mice c 13 63
    Note!
    Use the install_usb_mice.sh script.
  2. Run the simple package installer again:
    tasksel -s
    and, again, select nothing; it will install more default packages, as recommended in the installation instructions under Simple Package Selection -- The Task Installer.

Configure Sound

  1. Verify that sound is correctly configured:

    cat /dev/sndstat

  2. Test sound using the sample files sample.au and sample.midi:
    cat sample.au >/dev/audio
    Install playmidi using dselect and run;
    playmidi sample.midi

Configure NFS and Automount

In /etc, install the hosts file and the automount maps from the reference copies. Be sure the server's /etc/exports file includes Pikachu for the appropriate shares.

/etc/auto.master Master automount map that identifies the others
/etc/auto.home User home directories (mounted under /users)
/etc/auto.misc For mounting local devices (unchanged)
/etc/auto.pkg Software installation packages
/etc/auto.public Shared public directory, writeable

Run dselect and install autofs.

Create User Accounts

  1. Install the /etc/skel/ files from the reference copies.
  2. Create user accounts with UIDs and GIDs matching those on the file server, so we can all access our file-server directories under /users, but make the default home directories local, that is, under /home.
  3. Also, create a local guest account (uid 60000, gid 60000) with an easy, welcoming password.
  4. Add all these users to the audio group.
Note!
Accomplish this easily by using the create_accounts.sh script.

Install KDE

  1. Run dselect and install:
    task-kde and its dependencies
  2. Build /etc/X11/XF86Config

Install Additional Packages

Install and upgrade software as needed. As recommended in dselect Documentation for Beginners, it's a good idea to run /etc/cron.daily/find after installing new software, so locate can find the new files. Essential packages include ntp and ssh. I also install apache (and possibly apache-ssl), php, and postgresql.

Save Configuration

Always save copies of modified configuration files under /home/config (reference copies are in the config subdirectory relative to this document). Some comments:

File Notes
/etc/X11/XF86Config

This file started as a cross between the results of XConfigurator and xf86config. This worked, but lacked a modeline for the 1024x600 mode that the display actually wants. Fortunately, Hideki ASAZU of Japan, asa@sslab.sony.co.jp, made an XF86Config file for a Portege 300 with the same LCD display and the Chips & Techonology 65554 chip (Pikachu uses the # 65555). I merged that data here.

/etc/skel/.bash_logout
/etc/skel/.bash_profile
/etc/skel/.bashrc
/root/.bashrc
I list these here because web browsers won't display dot files in an index. Note that /root/.bashrc isn't the same as /etc/skel/.bashrc

Configure Dialup

  1. Note that the PCMCIA modem is automatically enabled at (and /dev/modem is linked to) /dev/ttyS1.
  2. For each account that will need it, set up kppp by starting it and clicking the Setup button:
    Accounts tab
    Create a new account:
    Dial tab
    Assign a connection name and specify the ISP's dialup number.
    DNS tab
    Specify the ISP's DNS server addresses.
    Gateway tab
    Check Assign the Default Route to this Gateway.
    Device tab
    Set Modem Device to /dev/modem.
    Set Connection Speed to 115200.
    Modem tab
    Set the volume.
    Click Modem Commands:
    Set Volume/high to M1L3.
    Click Terminal:
    Set ATW2 and save it with AT&W (this reports connect speed).
    PPP tab
    Check the following options:
    PPP: Dock into Panel on Connect
    Automatic Redial on Disconnect
    Show Clock on Caption
    Disconnect on X-server Shutdown
    Minimize Window on Connect

    with appropriate settings for the available ISPs.

Configure Mail

For each account that will need it, set up kmail by starting it and specifying the ISP's mail and news servers.

Configure Desktops

Run appfinder to add non-KDE applications to the menu.

Some handy settings for the KDE desktop:

Focus policy:
select Focus follows mouse

check Click Raise

Configure the Panel:
hide the Taskbar

check Auto Hide Panel (small delay, fast speed)

Applications

Some notes on apps.

  1. Amaya
  2. Toshiba Linux Utilities

Amaya

The version of Amaya that comes with the stable distribution is very old. I recompiled the sources for the testing version to make an Amaya package that runs under potato. If that doesn't suffice, get the Amaya web browser/editor from the World Wide Web Consortium at http://www.w3c.org.

Toshiba Linux Utilities

Jonathan Buzzard's tools (see References). At time of writing, stable release was 1.1 and developmental release was 990830. Fan turns fan on and off, but always reports it as off. Developmental release has some buggy Makefiles (tries to install nonexistent manpages; installs executables in /usr/local instead of /usr/local/bin). Tuxtime crashes a lot, but does detect low battery: When I configured Pikachu, the battery was defective, and the alarms kept popping up every few seconds. They were exactly correct, but I couldn't find a way to shut them off!

All the same, these promise to be very useful when Buzzard finishes them.

Data Files

File Notes
pikachu.wav
sample.au
sample.midi
team-rocket-motto.wav
Sound samples for testing sound configuration

Scripts

File Notes
create_accounts.sh Set up accounts for the usual users at home
install_usb_mice.sh Sets up USB devices for mouse

References and Resources

Toshiba Portégé 320CT Series documentation
http://www.csd.toshiba.com/cgi-bin/WebObjects/Toshiba.woa/wa/ssDownload?series=59
The detailed specs and support bulletins are useful. The User's Guide at the bottom of the download list has some value, but it runs only under Windows. However, the individual pages can be saved as Postscript, if needed.
Toshiba Linux Utilities
Jonathan Buzzard's "small series of programs to control the more Toshiba specific aspects of their laptops. In particular they allow many of the settings controlled by either Toshiba's MaxTime or Power Saver utilities to be changed under Linux. The code is licensed under the GNU Public licence (GPL)." Utilities available so far (not all of them "stable" releases yet) at http://www.buzzard.org.uk/toshiba/ include:

His Technical Documentation is useful, too, at http://www.buzzard.org.uk/toshiba/docs.html

Toshiba's Linux support for Toshiba PC page
http://linux.toshiba-dme.co.jp/linux/
Linux on Portégés mailing list
Web-based subscription at http://www.onelist.com/community/linux-on-portege
XF86Config Archive
A database of XF86Config files used by Linux and FreeBSD users. If you need an XF86Config file for your notebook or laptop, check out this site. (Some documents available in Japanese only.) http://www.yy.cs.keio.ac.jp/~sanpei/note-list.html
Linux on Laptops
http://www.cs.utexas.edu/users/kharker/linux-laptop/
Linux on the Toshiba Portege 3010CT / 3015CT
Derek Simkowiak describes his laptop's configuration in considerable detail.. While it's not the same model, many of his tips apply to mine (I'm especially grateful that he told me how to access the BIOS!). http://www.kd-dev.com/~dereks/toshiba/
Debian Installation documentation
On the first CD in
/dists/potato/main/disks-i386/current/doc/index.html
and on the web at
http://www.debian.org/releases/stable/i386/


Last modified Sunday, January 13, 2002 14:50:00 PM
Ted Ruegsegger
pikachu@tbr.mailshell.com