Monday, 27 August 2007

Installing Slackware 12 on Compaq Presario 1500US

Installing Slackware 12 on Compaq Presario 1500US


Last updated: August 27, 2007


General Hardware Specifications of Compaq Presario 1500US

Hardware Components
Status under Linux
Notes
Pentium IV Processor, 2.4 GHzWorksTo make CPU Frequency Scaling see the instructions below
15.4 SXGA+ TFT DisplayWorksSee instructions below
ATI Mobility Radeon 7500 (M7) - 32MB VideoWorksSee instructions below
512MB, DDR SDRAM, 2DIMMsWorksNo special procedure required during installation
TOSHIBA MK4018GAP (40 GB, 4200 RPM, Ultra-ATA/100) Hard DriveWorksNo special procedure required during installation
Internal Floppy DriveWorksNo special procedure required during installation
Integrated Network Card - Intel(R) PRO/100 VEWorksYou must run the command network during setup
Internal 56k Modem - SoftV92 - Harmonics (Conexant) HSF 56k HSFi ModemNot work yet!I'm trying to make it work using the proprietary HSF driver from Linuxant.
TOSHIBA DVD-ROM SD-R2102 (DVD:8x, CD:8x/8x/24x DVD-ROM/CD-RW)WorksNo special procedure required during installation
SoundMAX
Integrated Digital Audio - Intel 82801CA ICH3-S - AC'97 Audio Controller
WorksAfter installation you must run the commands - alsaconf, alsamixer, alsactl store
Lithium-Ion BatteryWorksNo special procedure required during installation

This laptop is now operating under Kernel version 2.6.21.5-smp


Basic Installation of Slackware 12 :

  • Why use Slackware :
    Because it was the first distribution I used. I installed in 1995 the Slackware 2.10 that came in a cd in the magazine "Solo Programadores"
  • Obtaining Slackware 12 :
    You can download it from the site :
    Get Slack!
    Select your nearest country and then browse in the ftp site for the directory "Slackware 12.0"
    Then download the 3 install cds
    slackware-12.0-install-d1.iso
    slackware-12.0-install-d2.iso
    slackware-12.0-install-d3.iso

    or the DVD

    slackware-12.0-install-dvd.iso

    Afterwards burn the cds/dvd, insert it in the cdrom and reboot the notebook.
  • Installing :
    After the computer reboots you will see a console with the message :

    This prompt is just for entering extra parameters. If you don't need to enter any parameters, hit ENTER to boot the default

    kernel "hugesmp.s" or press [F2] for a listing of more kernel choices.
    boot :

    Press Enter

    -------------------------------------
    Then you will see a message :
    "If you are not using a US keyboard...
    To continue using the US map, just hit enter.
    Enter 1 to select a keyboard map : "

    Press "Enter"

    Then when you get the prompt type the command :
    pcmcia

    "The PCMCIA/CardBus subsystem is now installed.... then press [enter] to continue."

    Press Enter.

    Then type the command :
    network

    "Press [enter] to automatically probe for all network cards, or switch to a different console and use 'modprobe'...

    SUCCESS: found card using eepro100 protocol -- modules loaded."


    If needed you must reconfigure your hard disk partitions with the fdisk command.
    (please don't play with that command because you can destroy all your hard disk information)
    This isn't a dummy guide, is just a guide to share my experience configuring slack12 for my laptop.

    Here the information about my hard disk :

    fdisk /dev/hda

    Command (m for help) : p

    Disk /dev/hda: 40.0 GB, 40007761920 bytes
    255 heads, 63 sectors/track, 4864 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot Start End Blocks Id System
    /dev/hda1 1 3215 25817368+ 7 HPFS/NTFS
    /dev/hda2 4278 4788 4095096+ 83 Linux
    /dev/hda3 3215 3749 4294080 a5 FreeBSD
    /dev/hda4 * 3749 4278 4248720 bf Solaris

    Partition table entries are not in disk order


    Afterward type the command :
    setup

    Then you will see the following screen :


    Then select TARGET and choose your partition table (in my case was /dev/hda2 and after that I selected Format).
    Then I selected ext3 Journaling Filesystem.
    After that it detected the NTFS partition and was added to /etc/fstab

    Then select
    1 - Install from Slackware CD or DVD
    Then "auto" Scan for the CD or DVD drive (recommended)

    Then a screen with the Package Series Selection
    * A - Base Linux System
    * AP - Various Applications that do not need X
    * D - Program Development (C, C++, Lisp, Perl, etc.)
    * E - GNU Emacs
    * F - FAQ lists, HOWTO documentacion
    * K - Linux kernel source
    * KDE - Qt and the K Desktop Environment for X
    - KDE - International language support for KDE
    * L - System Libraries (needed by KDE, GNOME, X, and more)
    * N - Networking (TCP/IP, UUCP, Mail, News)
    - T - TeX typesetting software
    * TCL - Tcl/Tk script languages
    * X - X Window System
    * XAP - X Applications
    - Y - Games

    Then "Select Prompting Mode"
    full - Install everything (4,5+ GB of software, RECOMMENDED!)
    menu - Choose individual packages from interactive menus
    expert - This is actually the same as the "menu" option
    newbie - Use verbose prompting (the X series takes one year)
    custom - Use custom tagfiles in the package directories
    tagpath - Use tagfiles in the subdirectories of a custom path
    help - Read the prompt mode help file

    If you have enough space please choose "Full"!!! otherway choose "expert" and be very carefull because if you don't install a required package the system will not boot or work fine.
    Many package aren't marked as REQUIERED but in fact they are.


    After the installer copies the files to the hard disk the Lilo configuration begans
    Y selected "expert" - Use expert lilo.conf setup menu.
    Then inside the "Expert lilo installation"
    Begin - Start LILO configuration with a new LILO header

    I selected 1024x768x256 Frame buffer console, 1024x768x256
    then 5 seconds timeout
    Then
    Linux - Add a Linux partition to the LILO config
    /dev/hda2
    Windows - Add a Windows FAT or NTFS partition to the LILO config
    /dev/hda1
    With the name M$ Windows XP

    then I selected to Install LILO in the first sector of the Slackware root partition.
    Because I had to preserve the Solaris Grub in the MBR. Because LILO can't boot the solaris partition slice.

    Afterward select your mouse configuration (I choose ps/2 mouse).
    Then enter your hostname, domain name, DHCP or static IP, DHCP server name (is applicable), and confirm the network setup.

    Then the startup services, custom screen fonts, hardware clock set to UTC, timezone configuration.
    Afterward the default window manager. I selected KDE (you can choose XFCE or TWM too).

    Then configure your root password.

    After reboot I can't be able to boot from the hard disk. I got the error :
    No filesystem could mount root. tried :
    kernel_panic not syncing :
    VFS: Unable to mount root fs on unknow_block (3,2)

    I realized that the problem is that the kernel doesn't support the EXT3 filesystem.

    I inserted the slackware 12 install Cd 1, and in the boot option I entered :
    boot: hugesmp.s root=/dev/hda2 rdinit= ro
    After logged I use the command :
    mkinitrd -c -k 2.6.21.5-smp -m ext3 -f ext3 -r /dev/hda2
    Then I edited the lilo.conf and added
    initrd=/boot/initrd.gz
    after the line : image=/boot/vmlinuz

    then I rebooted without problem.


    Configuring the video display
    After a lot of tests my best configuration for the ATI mobility Radeon 7500 is the following.

    Open the file /etc/X11/xorg.conf and paste the following lines.

    ----------------

    # File generated by xf86config.

    #
    # Copyright (c) 1999 by The XFree86 Project, Inc.
    #
    # Permission is hereby granted, free of charge, to any person obtaining a
    # copy of this software and associated documentation files (the "Software"),
    # to deal in the Software without restriction, including without limitation
    # the rights to use, copy, modify, merge, publish, distribute, sublicense,
    # and/or sell copies of the Software, and to permit persons to whom the
    # Software is furnished to do so, subject to the following conditions:
    #
    # The above copyright notice and this permission notice shall be included in
    # all copies or substantial portions of the Software.
    #
    # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
    # THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
    # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
    # OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
    # SOFTWARE.
    #
    # Except as contained in this notice, the name of the XFree86 Project shall
    # not be used in advertising or otherwise to promote the sale, use or other
    # dealings in this Software without prior written authorization from the
    # XFree86 Project.
    #

    # **********************************************************************
    # Refer to the XF86Config(4/5) man page for details about the format of
    # this file.
    # **********************************************************************

    # NOTE: This is a NEW IMPROVED version of XF86Config-fbdev that uses the vesa
    # driver instead of the fbdev driver. Thanks to Kenneth Fanyo who pointed
    # this out to me. :)

    # This XF86Config file is designed for use with the VESA framebuffer.
    # This generic interface should work with nearly all video cards
    # (although not every card will support every resolution).

    # With the new driver, it should no longer be required to have frame buffer
    # support in the kernel, or to run it on the console.
    #
    # Enjoy! :)
    # -- volkerdi@slackware.com
    #

    # **********************************************************************
    # Module section -- this section is used to specify
    # which dynamically loadable modules to load.
    # **********************************************************************
    #
    Section "Module"

    # This loads the DBE extension module.

    # Load "dbe" # Double buffer extension

    # This loads the miscellaneous extensions module, and disables
    # initialisation of the XFree86-DGA extension within that module.
    SubSection "extmod"
    Option "omit xfree86-dga" # don't initialise the DGA extension
    EndSubSection

    # This loads the font modules
    Load "type1"
    Load "freetype"
    #Load "speedo"

    # This loads the GLX module
    Load "glx"
    Load "ddc"
    Load "vbe"
    Load "dri"
    EndSection

    # **********************************************************************
    # Files section. This allows default font and rgb paths to be set
    # **********************************************************************

    Section "Files"

    # The location of the RGB database. Note, this is the name of the
    # file minus the extension (like ".txt" or ".db"). There is normally
    # no need to change the default.

    RgbPath "/usr/share/X11/rgb"

    # Multiple FontPath entries are allowed (which are concatenated together),
    # as well as specifying multiple comma-separated entries in one FontPath
    # command (or a combination of both methods)
    #
    # If you don't have a floating point coprocessor and emacs, Mosaic or other
    # programs take long to start up, try moving the Type1 and Speedo directory
    # to the end of this list (or comment them out).
    #


    # ModulePath can be used to set a search path for the X server modules.
    # The default path is shown here.

    # ModulePath "/usr/lib/xorg/modules"

    FontPath "/usr/share/fonts/misc"
    FontPath "/usr/share/fonts/OTF"
    FontPath "/usr/share/fonts/TTF"
    FontPath "/usr/share/fonts/Type1"
    FontPath "/usr/share/fonts/Speedo"
    FontPath "/usr/share/fonts/75dpi:unscaled"
    FontPath "/usr/share/fonts/100dpi:unscaled"
    FontPath "/usr/share/fonts/cyrillic"
    FontPath "/usr/local/share/fonts"
    EndSection

    # **********************************************************************
    # Server flags section.
    # **********************************************************************

    Section "ServerFlags"

    # Uncomment this to cause a core dump at the spot where a signal is
    # received. This may leave the console in an unusable state, but may
    # provide a better stack trace in the core dump to aid in debugging

    # Option "NoTrapSignals"

    # Uncomment this to disable the VT switch sequence
    # (where n is 1 through 12). This allows clients to receive these key
    # events.

    # Option "DontVTSwitch"

    # Uncomment this to disable the server abort sequence
    # This allows clients to receive this key event.

    # Option "DontZap"

    # Uncomment this to disable the / mode switching
    # sequences. This allows clients to receive these key events.

    # Option "DontZoom"

    # Uncomment this to disable tuning with the xvidtune client. With
    # it the client can still run and fetch card and monitor attributes,
    # but it will not be allowed to change them. If it tries it will
    # receive a protocol error.

    # Option "DisableVidModeExtension"

    # Uncomment this to enable the use of a non-local xvidtune client.

    # Option "AllowNonLocalXvidtune"

    # Uncomment this to disable dynamically modifying the input device
    # (mouse and keyboard) settings.

    # Option "DisableModInDev"

    # Uncomment this to enable the use of a non-local client to
    # change the keyboard or mouse settings (currently only xset).

    # Option "AllowNonLocalModInDev"

    # Set the basic blanking screen saver timeout.

    # Option "blank time" "10" # 10 minutes

    # Set the DPMS timeouts. These are set here because they are global
    # rather than screen-specific. These settings alone don't enable DPMS.
    # It is enabled per-screen (or per-monitor), and even then only when
    # the driver supports it.

    # Option "standby time" "20"
    # Option "suspend time" "30"
    # Option "off time" "60"

    # On some platform the server needs to estimate the sizes of PCI
    # memory and pio ranges. This is done by assuming that PCI ranges
    # don't overlap. Some broken BIOSes tend to set ranges of inactive
    # devices wrong. Here one can adjust how aggressive the assumptions
    # should be. Default is 0.

    # Option "EstimateSizesAggresively" "0"

    EndSection

    # **********************************************************************
    # Input devices
    # **********************************************************************

    # **********************************************************************
    # Core keyboard's InputDevice section
    # **********************************************************************

    Section "InputDevice"

    Identifier "Keyboard1"
    Driver "kbd"
    # For most OSs the protocol can be omitted (it defaults to "Standard").
    # When using XQUEUE (only for SVR3 and SVR4, but not Solaris),
    # uncomment the following line.

    # Option "Protocol" "Xqueue"

    # Set the keyboard auto repeat parameters. Not all platforms implement
    # this.

    # Option "AutoRepeat" "500 5"

    # Specifiy which keyboard LEDs can be user-controlled (eg, with xset(1)).

    # Option "Xleds" "1 2 3"

    # To disable the XKEYBOARD extension, uncomment XkbDisable.

    # Option "XkbDisable"

    # To customise the XKB settings to suit your keyboard, modify the
    # lines below (which are the defaults). For example, for a European
    # keyboard, you will probably want to use one of:
    #
    # Option "XkbModel" "pc102"
    # Option "XkbModel" "pc105"
    #
    # If you have a Microsoft Natural keyboard, you can use:
    #
    # Option "XkbModel" "microsoft"
    #
    # If you have a US "windows" keyboard you will want:
    #
    # Option "XkbModel" "pc104"
    #
    # Then to change the language, change the Layout setting.
    # For example, a german layout can be obtained with:
    #
    # Option "XkbLayout" "de"
    #
    # or:
    #
    # Option "XkbLayout" "de"
    # Option "XkbVariant" "nodeadkeys"
    #
    # If you'd like to switch the positions of your capslock and
    # control keys, use:
    #
    # Option "XkbOptions" "ctrl:swapcaps"


    # These are the default XKB settings for X.Org
    #
    # Option "XkbRules" "xorg"
    # Option "XkbModel" "pc105"
    # Option "XkbLayout" "us"
    # Option "XkbVariant" ""
    # Option "XkbOptions" ""

    EndSection


    # **********************************************************************
    # Core Pointer's InputDevice section
    # **********************************************************************

    Section "InputDevice"

    # Identifier and driver

    Identifier "Mouse1"
    Driver "mouse"

    # On platforms where PnP mouse detection is supported the following
    # protocol setting can be used when using a newer PnP mouse:

    # Option "Protocol" "Auto"

    # The available mouse protocols types that you can set below are:
    # Auto BusMouse GlidePoint GlidePointPS/2 IntelliMouse IMPS/2
    # Logitech Microsoft MMHitTab MMSeries Mouseman MouseManPlusPS/2
    # MouseSystems NetMousePS/2 NetScrollPS/2 OSMouse PS/2 SysMouse
    # ThinkingMouse ThinkingMousePS/2 Xqueue
    Option "Protocol" "PS/2"

    # The mouse device. The device is normally set to /dev/mouse,
    # which is usually a symbolic link to the real device.

    Option "Device" "/dev/mouse"
    # Option "Device" "/dev/psaux"
    # Option "Device" "/dev/ttyS0"
    # Option "Device" "/dev/ttyS1"

    # When using XQUEUE, comment out the above two lines, and uncomment
    # the following line.

    # Option "Protocol" "Xqueue"

    # Baudrate and SampleRate are only for some Logitech mice. In
    # almost every case these lines should be omitted.

    # Option "BaudRate" "9600"
    # Option "SampleRate" "150"

    # Emulate3Buttons is an option for 2-button Microsoft mice
    # Emulate3Timeout is the timeout in milliseconds (default is 50ms)

    # Option "Emulate3Buttons"
    # Option "Emulate3Timeout" "50"

    # ChordMiddle is an option for some 3-button Logitech mice

    # Option "ChordMiddle"

    EndSection

    # Some examples of extended input devices

    # Section "InputDevice"
    # Identifier "spaceball"
    # Driver "magellan"
    # Option "Device" "/dev/cua0"
    # EndSection
    #
    # Section "InputDevice"
    # Identifier "spaceball2"
    # Driver "spaceorb"
    # Option "Device" "/dev/cua0"
    # EndSection
    #
    # Section "InputDevice"
    # Identifier "touchscreen0"
    # Driver "microtouch"
    # Option "Device" "/dev/ttyS0"
    # Option "MinX" "1412"
    # Option "MaxX" "15184"
    # Option "MinY" "15372"
    # Option "MaxY" "1230"
    # Option "ScreenNumber" "0"
    # Option "ReportingMode" "Scaled"
    # Option "ButtonNumber" "1"
    # Option "SendCoreEvents"
    # EndSection
    #
    # Section "InputDevice"
    # Identifier "touchscreen1"
    # Driver "elo2300"
    # Option "Device" "/dev/ttyS0"
    # Option "MinX" "231"
    # Option "MaxX" "3868"
    # Option "MinY" "3858"
    # Option "MaxY" "272"
    # Option "ScreenNumber" "0"
    # Option "ReportingMode" "Scaled"
    # Option "ButtonThreshold" "17"
    # Option "ButtonNumber" "1"
    # Option "SendCoreEvents"
    # EndSection

    # **********************************************************************
    # Monitor section
    # **********************************************************************

    # Any number of monitor sections may be present

    Section "Monitor"

    Identifier "My Monitor"

    # HorizSync is in kHz unless units are specified.
    # HorizSync may be a comma separated list of discrete values, or a
    # comma separated list of ranges of values.
    # NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
    # USER MANUAL FOR THE CORRECT NUMBERS.

    HorizSync 31.5 - 50.0

    # HorizSync 30-64 # multisync
    # HorizSync 31.5, 35.2 # multiple fixed sync frequencies
    # HorizSync 15-25, 30-50 # multiple ranges of sync frequencies

    # VertRefresh is in Hz unless units are specified.
    # VertRefresh may be a comma separated list of discrete values, or a
    # comma separated list of ranges of values.
    # NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
    # USER MANUAL FOR THE CORRECT NUMBERS.

    VertRefresh 40-90

    EndSection


    # **********************************************************************
    # Graphics device section
    # **********************************************************************

    # Any number of graphics device sections may be present

    Section "Device"
    Identifier "ATI RADEON 7500"
    Driver "radeon"
    VideoRam 32768
    BusID "PCI:1:0:0"
    VideoRam 32768
    Option "AGPMode" "4"
    Option "AGPSize" "32"
    Option "XAANoOffscreenPixmaps"
    Option "DRI" "true"
    Option "AGPFastWrite" "true"
    Option "EnablePageFlip" "true"
    EndSection

    # **********************************************************************
    # Screen sections
    # **********************************************************************

    # Any number of screen sections may be present. Each describes
    # the configuration of a single screen. A single specific screen section
    # may be specified from the X server command line with the "-screen"
    # option.
    Section "Screen"
    Identifier "Screen 1"
    Device "ATI RADEON 7500"
    Monitor "My Monitor"
    # Option "UseFBDev" "true"
    # Option "AddARGBVisuals" "True"
    # Option "AddARGBGLXVisuals" "True"

    # If your card can handle it, a higher default color depth (like 24 or 32)
    # is highly recommended.

    # DefaultDepth 8
    DefaultDepth 16
    # DefaultDepth 24
    # DefaultDepth 32

    # "1024x768" is also a conservative usable default resolution. If you
    # have a better monitor, feel free to try resolutions such as
    # "1152x864", "1280x1024", "1600x1200", and "1800x1400" (or whatever your
    # card/monitor can produce)

    Subsection "Display"
    Depth 8
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection
    Subsection "Display"
    Depth 16
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection
    Subsection "Display"
    Depth 24
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection
    Subsection "Display"
    Depth 32
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection

    EndSection

    Section "DRI"
    Mode 0666
    EndSection

    Section "Extensions"
    Option "Composite" "Enable"
    EndSection



    # **********************************************************************
    # ServerLayout sections.
    # **********************************************************************

    # Any number of ServerLayout sections may be present. Each describes
    # the way multiple screens are organised. A specific ServerLayout
    # section may be specified from the X server command line with the
    # "-layout" option. In the absence of this, the first section is used.
    # When now ServerLayout section is present, the first Screen section
    # is used alone.

    Section "ServerLayout"

    # The Identifier line must be present
    Identifier "Simple Layout"

    # Each Screen line specifies a Screen section name, and optionally
    # the relative position of other screens. The four names after
    # primary screen name are the screens to the top, bottom, left and right
    # of the primary screen. In this example, screen 2 is located to the
    # right of screen 1.

    Screen "Screen 1"

    # Each InputDevice line specifies an InputDevice section name and
    # optionally some options to specify the way the device is to be
    # used. Those options include "CorePointer", "CoreKeyboard" and
    # "SendCoreEvents".

    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"

    EndSection



    Then you can start the KDE with the startx command.
    With these settings you will have a 1000 fps according to the glxgears command.

    The first time I tried to activate compiz I got the error :
    GLX_EXT_Texture_from_pixmap is missing
    Failed to manage screen : 0
    No manageable screens found on display : 0.0

    Here a picture :

    I fixed the problem usign the prefix LIBGL_ALWAYS_INDIRECT=true before the compiz command.

    So if you want to activate compiz use the following command :

    LIBGL_ALWAYS_INDIRECT=true compiz --replace --indirect-rendering decoration wobbly fade minimize cube move place resize rotate scale switcher water zoom &

    Then :
    kde-window-decorator &

    Then you can press the ctrl+alt+left arrow or the ctrl+alt+Button1 mouse and the cube should work!!!


    Ramdonly I got the error : The application KWD (kde-window-decorator) crashed and caused the signal 11 (SIGSEGV).
    See the picture :


    If you got that error you can relaunch the KWD with the command : kde-window-decorator &

    If you want that compiz starts automatically with KDE, just create a file :
    /root/.kde/Autostart/compiz.sh
    And type the following :
    LIBGL_ALWAYS_INDIRECT=true compiz --replace --indirect-rendering decoration wobbly fade minimize cube move place resize rotate scale switcher water zoom &
    sleep 6
    kde-window-decorator &

    Then save and add the execute permisions :
    chmod +x compiz.sh


Setting up additional features for Slackware 12


  • Making CPU Frequency Scaling work for you

    You must edit the file /etc/rc.d/rc.modules-2.6.21.5-smp
    and delete the simbol "#" of the line /sbin/modprobe p4-clockmod

    # Intel Pentium4/Xeon clock modulation
    /sbin/modprobe p4-clockmod

    and delete the simbol "#" of the line /sbin/modprobe cpufreq_ondemand

    # Set the frequency on demand. What you want is what you get
    /sbin/modprobe cpufreq_ondemand


    Then I installed kpowersave version 07.1

    you can download the package from :
    kpowersave
    Here the download link :
    Download kpowersave

    and installed with pkgtool.

    Later you can run the kpowersave with the command

    /opt/kde/bin/kpowersave
    (I added these command to the compiz.sh script)

    Afterward you can show the Cpufreq in the panel with the package kcpufreq-0.3

    Main site
    Download - kcpufreq-0.3.tar.gz

    You can install it using the commands
    gunzip kcpufreq-0.3.tar.gz
    tar xvf kcpufreq-0.3.tar
    cd kcpufreq-0.3
    ./configure
    make
    make install


    Then right click in the panel and select "Add Applet to Panel" and select kcpufreq.

  • Installing lm-sensors to monitor CPU temperature
    First you must install the lm-sensors package that is included in the distribution.
    Then you must download the script "unhide_ICH_SMBus" that show the chip/sensor :
    Here the link :
    unhide_ICH_SMBus

    Remember to make the file executable using the chmod +x
    Then run the script :
    ./unhide_ICH_SMBus

    Enabling SMBus PCI device ...
    Rescanning the bus ...
    Loading i2c-i801 ...
    00:1f.3 SMBus: Intel Corporation 82801CA/CAM SMBus Controller (rev 02)
    Done!

    After that you must execute :
    sensors-detect
    Then the program will show you the following lines :

    Now follows a summary of the probes I have just done.
    Just press ENTER to continue:

    Driver `adm1031' (should be inserted):
    Detects correctly:
    * Bus `SMBus I801 adapter at 1200'
    Busdriver `i2c-i801', I2C address 0x2c
    Chip `Analog Devices ADM1031' (confidence: 7)

    Driver `eeprom' (should be inserted):
    Detects correctly:
    * Bus `SMBus I801 adapter at 1200'
    Busdriver `i2c-i801', I2C address 0x50
    Chip `SPD EEPROM' (confidence: 8)
    * Bus `SMBus I801 adapter at 1200'
    Busdriver `i2c-i801', I2C address 0x51
    Chip `SPD EEPROM' (confidence: 8)

    EEPROMs are *NOT* sensors! They are data storage chips commonly
    found on memory modules (SPD), in monitors (EDID), or in some
    laptops, for example.

    I will now generate the commands needed to load the required modules.
    Just press ENTER to continue:

    To make the sensors modules behave correctly, add these lines to
    /etc/modules.conf:

    #----cut here----
    # I2C module options
    alias char-major-89 i2c-dev
    #----cut here----

    To load everything that is needed, add this to some /etc/rc* file:

    #----cut here----
    # I2C adapter drivers
    modprobe i2c-i801
    # Chip drivers
    modprobe adm1031
    modprobe eeprom
    # sleep 2 # optional
    /usr/bin/sensors -s # recommended
    #----cut here----

    If you have some drivers built into your kernel, the list above will
    contain too many modules. Skip the appropriate ones! You really
    should try these commands right now to make sure everything is
    working properly. Monitoring programs won't work until the needed
    modules are loaded.

    Do you want to generate /etc/sysconfig/lm_sensors? (yes/NO): YES
    Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors
    for initialization at boot time.


    You must edit the file /etc/rc.d/rc.local and add the folowing lines :

    #----cut here----
    # I2C adapter drivers
    modprobe i2c-i801
    # Chip drivers
    modprobe adm1031
    modprobe eeprom
    # sleep 2 # optional
    /root/unhide_ICH_SMBus
    /usr/bin/sensors -s # recommended
    #----cut here----

    Then you can download a monitoring applet. I'm using kima. You can download it from :

    Kima - kde-apps.org

    Be carefull to download the tarball (source) because the slackware package is for version 11 and is not working under slackware 12.
    So install it with the classics commands (gunzip,tar, ./configure, make , make install)
    Then right click in the panel and select "Add Applet to Panel" and select kima.


    Here a picture with cpufreq and kima running :




  • Resolving Automount problems
    When you insert a CD or a pen drive you will see an error message :
    "A security policy in place precents this sender from sending this message to this recipient, see message bus configuration file (rejected message had interface "org.freedesktop.Hal.Device.Volume" member "Mount" error name "(unset)" destination "org.freedesktop.Hal")
    So you must add you current user to the group plugdev




  • Audio

    You must run the commands
    alsaconf
    then
    alsamixer
    raise the volume and run the command :
    alsactl store

  • Startup to a GUI
    If you want to start KDE automatically after boot you can modify the file : /etc/inittab and edit the line :
    id:3:initdefault:
    and change "3" for "4".
    id:4:initdefault:


Unsolved issues


  • Make the modem driver works!!!

  • Test the S-Video Output function

  • Fix the random signal 11 (SIGSEGV) on KWD (kde-window-decorator)


Configuration Files

  • /etc/X11/xorg.conf

    # File generated by xf86config.

    #
    # Copyright (c) 1999 by The XFree86 Project, Inc.
    #
    # Permission is hereby granted, free of charge, to any person obtaining a
    # copy of this software and associated documentation files (the "Software"),
    # to deal in the Software without restriction, including without limitation
    # the rights to use, copy, modify, merge, publish, distribute, sublicense,
    # and/or sell copies of the Software, and to permit persons to whom the
    # Software is furnished to do so, subject to the following conditions:
    #
    # The above copyright notice and this permission notice shall be included in
    # all copies or substantial portions of the Software.
    #
    # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
    # THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
    # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
    # OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
    # SOFTWARE.
    #
    # Except as contained in this notice, the name of the XFree86 Project shall
    # not be used in advertising or otherwise to promote the sale, use or other
    # dealings in this Software without prior written authorization from the
    # XFree86 Project.
    #

    # **********************************************************************
    # Refer to the XF86Config(4/5) man page for details about the format of
    # this file.
    # **********************************************************************

    # NOTE: This is a NEW IMPROVED version of XF86Config-fbdev that uses the vesa
    # driver instead of the fbdev driver. Thanks to Kenneth Fanyo who pointed
    # this out to me. :)

    # This XF86Config file is designed for use with the VESA framebuffer.
    # This generic interface should work with nearly all video cards
    # (although not every card will support every resolution).

    # With the new driver, it should no longer be required to have frame buffer
    # support in the kernel, or to run it on the console.
    #
    # Enjoy! :)
    # -- volkerdi@slackware.com
    #

    # **********************************************************************
    # Module section -- this section is used to specify
    # which dynamically loadable modules to load.
    # **********************************************************************
    #
    Section "Module"

    # This loads the DBE extension module.

    # Load "dbe" # Double buffer extension

    # This loads the miscellaneous extensions module, and disables
    # initialisation of the XFree86-DGA extension within that module.
    SubSection "extmod"
    Option "omit xfree86-dga" # don't initialise the DGA extension
    EndSubSection

    # This loads the font modules
    Load "type1"
    Load "freetype"
    #Load "speedo"

    # This loads the GLX module
    Load "glx"
    Load "ddc"
    Load "vbe"
    Load "dri"
    EndSection

    # **********************************************************************
    # Files section. This allows default font and rgb paths to be set
    # **********************************************************************

    Section "Files"

    # The location of the RGB database. Note, this is the name of the
    # file minus the extension (like ".txt" or ".db"). There is normally
    # no need to change the default.

    RgbPath "/usr/share/X11/rgb"

    # Multiple FontPath entries are allowed (which are concatenated together),
    # as well as specifying multiple comma-separated entries in one FontPath
    # command (or a combination of both methods)
    #
    # If you don't have a floating point coprocessor and emacs, Mosaic or other
    # programs take long to start up, try moving the Type1 and Speedo directory
    # to the end of this list (or comment them out).
    #


    # ModulePath can be used to set a search path for the X server modules.
    # The default path is shown here.

    # ModulePath "/usr/lib/xorg/modules"

    FontPath "/usr/share/fonts/misc"
    FontPath "/usr/share/fonts/OTF"
    FontPath "/usr/share/fonts/TTF"
    FontPath "/usr/share/fonts/Type1"
    FontPath "/usr/share/fonts/Speedo"
    FontPath "/usr/share/fonts/75dpi:unscaled"
    FontPath "/usr/share/fonts/100dpi:unscaled"
    FontPath "/usr/share/fonts/cyrillic"
    FontPath "/usr/local/share/fonts"
    EndSection

    # **********************************************************************
    # Server flags section.
    # **********************************************************************

    Section "ServerFlags"

    # Uncomment this to cause a core dump at the spot where a signal is
    # received. This may leave the console in an unusable state, but may
    # provide a better stack trace in the core dump to aid in debugging

    # Option "NoTrapSignals"

    # Uncomment this to disable the VT switch sequence
    # (where n is 1 through 12). This allows clients to receive these key
    # events.

    # Option "DontVTSwitch"

    # Uncomment this to disable the server abort sequence
    # This allows clients to receive this key event.

    # Option "DontZap"

    # Uncomment this to disable the / mode switching
    # sequences. This allows clients to receive these key events.

    # Option "DontZoom"

    # Uncomment this to disable tuning with the xvidtune client. With
    # it the client can still run and fetch card and monitor attributes,
    # but it will not be allowed to change them. If it tries it will
    # receive a protocol error.

    # Option "DisableVidModeExtension"

    # Uncomment this to enable the use of a non-local xvidtune client.

    # Option "AllowNonLocalXvidtune"

    # Uncomment this to disable dynamically modifying the input device
    # (mouse and keyboard) settings.

    # Option "DisableModInDev"

    # Uncomment this to enable the use of a non-local client to
    # change the keyboard or mouse settings (currently only xset).

    # Option "AllowNonLocalModInDev"

    # Set the basic blanking screen saver timeout.

    # Option "blank time" "10" # 10 minutes

    # Set the DPMS timeouts. These are set here because they are global
    # rather than screen-specific. These settings alone don't enable DPMS.
    # It is enabled per-screen (or per-monitor), and even then only when
    # the driver supports it.

    # Option "standby time" "20"
    # Option "suspend time" "30"
    # Option "off time" "60"

    # On some platform the server needs to estimate the sizes of PCI
    # memory and pio ranges. This is done by assuming that PCI ranges
    # don't overlap. Some broken BIOSes tend to set ranges of inactive
    # devices wrong. Here one can adjust how aggressive the assumptions
    # should be. Default is 0.

    # Option "EstimateSizesAggresively" "0"

    EndSection

    # **********************************************************************
    # Input devices
    # **********************************************************************

    # **********************************************************************
    # Core keyboard's InputDevice section
    # **********************************************************************

    Section "InputDevice"

    Identifier "Keyboard1"
    Driver "kbd"
    # For most OSs the protocol can be omitted (it defaults to "Standard").
    # When using XQUEUE (only for SVR3 and SVR4, but not Solaris),
    # uncomment the following line.

    # Option "Protocol" "Xqueue"

    # Set the keyboard auto repeat parameters. Not all platforms implement
    # this.

    # Option "AutoRepeat" "500 5"

    # Specifiy which keyboard LEDs can be user-controlled (eg, with xset(1)).

    # Option "Xleds" "1 2 3"

    # To disable the XKEYBOARD extension, uncomment XkbDisable.

    # Option "XkbDisable"

    # To customise the XKB settings to suit your keyboard, modify the
    # lines below (which are the defaults). For example, for a European
    # keyboard, you will probably want to use one of:
    #
    # Option "XkbModel" "pc102"
    # Option "XkbModel" "pc105"
    #
    # If you have a Microsoft Natural keyboard, you can use:
    #
    # Option "XkbModel" "microsoft"
    #
    # If you have a US "windows" keyboard you will want:
    #
    # Option "XkbModel" "pc104"
    #
    # Then to change the language, change the Layout setting.
    # For example, a german layout can be obtained with:
    #
    # Option "XkbLayout" "de"
    #
    # or:
    #
    # Option "XkbLayout" "de"
    # Option "XkbVariant" "nodeadkeys"
    #
    # If you'd like to switch the positions of your capslock and
    # control keys, use:
    #
    # Option "XkbOptions" "ctrl:swapcaps"


    # These are the default XKB settings for X.Org
    #
    # Option "XkbRules" "xorg"
    # Option "XkbModel" "pc105"
    # Option "XkbLayout" "us"
    # Option "XkbVariant" ""
    # Option "XkbOptions" ""

    EndSection


    # **********************************************************************
    # Core Pointer's InputDevice section
    # **********************************************************************

    Section "InputDevice"

    # Identifier and driver

    Identifier "Mouse1"
    Driver "mouse"

    # On platforms where PnP mouse detection is supported the following
    # protocol setting can be used when using a newer PnP mouse:

    # Option "Protocol" "Auto"

    # The available mouse protocols types that you can set below are:
    # Auto BusMouse GlidePoint GlidePointPS/2 IntelliMouse IMPS/2
    # Logitech Microsoft MMHitTab MMSeries Mouseman MouseManPlusPS/2
    # MouseSystems NetMousePS/2 NetScrollPS/2 OSMouse PS/2 SysMouse
    # ThinkingMouse ThinkingMousePS/2 Xqueue
    Option "Protocol" "PS/2"

    # The mouse device. The device is normally set to /dev/mouse,
    # which is usually a symbolic link to the real device.

    Option "Device" "/dev/mouse"
    # Option "Device" "/dev/psaux"
    # Option "Device" "/dev/ttyS0"
    # Option "Device" "/dev/ttyS1"

    # When using XQUEUE, comment out the above two lines, and uncomment
    # the following line.

    # Option "Protocol" "Xqueue"

    # Baudrate and SampleRate are only for some Logitech mice. In
    # almost every case these lines should be omitted.

    # Option "BaudRate" "9600"
    # Option "SampleRate" "150"

    # Emulate3Buttons is an option for 2-button Microsoft mice
    # Emulate3Timeout is the timeout in milliseconds (default is 50ms)

    # Option "Emulate3Buttons"
    # Option "Emulate3Timeout" "50"

    # ChordMiddle is an option for some 3-button Logitech mice

    # Option "ChordMiddle"

    EndSection

    # Some examples of extended input devices

    # Section "InputDevice"
    # Identifier "spaceball"
    # Driver "magellan"
    # Option "Device" "/dev/cua0"
    # EndSection
    #
    # Section "InputDevice"
    # Identifier "spaceball2"
    # Driver "spaceorb"
    # Option "Device" "/dev/cua0"
    # EndSection
    #
    # Section "InputDevice"
    # Identifier "touchscreen0"
    # Driver "microtouch"
    # Option "Device" "/dev/ttyS0"
    # Option "MinX" "1412"
    # Option "MaxX" "15184"
    # Option "MinY" "15372"
    # Option "MaxY" "1230"
    # Option "ScreenNumber" "0"
    # Option "ReportingMode" "Scaled"
    # Option "ButtonNumber" "1"
    # Option "SendCoreEvents"
    # EndSection
    #
    # Section "InputDevice"
    # Identifier "touchscreen1"
    # Driver "elo2300"
    # Option "Device" "/dev/ttyS0"
    # Option "MinX" "231"
    # Option "MaxX" "3868"
    # Option "MinY" "3858"
    # Option "MaxY" "272"
    # Option "ScreenNumber" "0"
    # Option "ReportingMode" "Scaled"
    # Option "ButtonThreshold" "17"
    # Option "ButtonNumber" "1"
    # Option "SendCoreEvents"
    # EndSection

    # **********************************************************************
    # Monitor section
    # **********************************************************************

    # Any number of monitor sections may be present

    Section "Monitor"

    Identifier "My Monitor"

    # HorizSync is in kHz unless units are specified.
    # HorizSync may be a comma separated list of discrete values, or a
    # comma separated list of ranges of values.
    # NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
    # USER MANUAL FOR THE CORRECT NUMBERS.

    HorizSync 31.5 - 50.0

    # HorizSync 30-64 # multisync
    # HorizSync 31.5, 35.2 # multiple fixed sync frequencies
    # HorizSync 15-25, 30-50 # multiple ranges of sync frequencies

    # VertRefresh is in Hz unless units are specified.
    # VertRefresh may be a comma separated list of discrete values, or a
    # comma separated list of ranges of values.
    # NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S
    # USER MANUAL FOR THE CORRECT NUMBERS.

    VertRefresh 40-90

    EndSection


    # **********************************************************************
    # Graphics device section
    # **********************************************************************

    # Any number of graphics device sections may be present

    Section "Device"
    Identifier "ATI RADEON 7500"
    Driver "radeon"
    VideoRam 32768
    BusID "PCI:1:0:0"
    VideoRam 32768
    Option "AGPMode" "4"
    Option "AGPSize" "32"
    Option "XAANoOffscreenPixmaps"
    Option "DRI" "true"
    Option "AGPFastWrite" "true"
    Option "EnablePageFlip" "true"
    EndSection

    # **********************************************************************
    # Screen sections
    # **********************************************************************

    # Any number of screen sections may be present. Each describes
    # the configuration of a single screen. A single specific screen section
    # may be specified from the X server command line with the "-screen"
    # option.
    Section "Screen"
    Identifier "Screen 1"
    Device "ATI RADEON 7500"
    Monitor "My Monitor"
    # Option "UseFBDev" "true"
    # Option "AddARGBVisuals" "True"
    # Option "AddARGBGLXVisuals" "True"

    # If your card can handle it, a higher default color depth (like 24 or 32)
    # is highly recommended.

    # DefaultDepth 8
    DefaultDepth 16
    # DefaultDepth 24
    # DefaultDepth 32

    # "1024x768" is also a conservative usable default resolution. If you
    # have a better monitor, feel free to try resolutions such as
    # "1152x864", "1280x1024", "1600x1200", and "1800x1400" (or whatever your
    # card/monitor can produce)

    Subsection "Display"
    Depth 8
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection
    Subsection "Display"
    Depth 16
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection
    Subsection "Display"
    Depth 24
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection
    Subsection "Display"
    Depth 32
    Modes "1400x1050" "1024x768" "800x600" "640x480"
    EndSubsection

    EndSection

    Section "DRI"
    Mode 0666
    EndSection

    Section "Extensions"
    Option "Composite" "Enable"
    EndSection



    # **********************************************************************
    # ServerLayout sections.
    # **********************************************************************

    # Any number of ServerLayout sections may be present. Each describes
    # the way multiple screens are organised. A specific ServerLayout
    # section may be specified from the X server command line with the
    # "-layout" option. In the absence of this, the first section is used.
    # When now ServerLayout section is present, the first Screen section
    # is used alone.

    Section "ServerLayout"

    # The Identifier line must be present
    Identifier "Simple Layout"

    # Each Screen line specifies a Screen section name, and optionally
    # the relative position of other screens. The four names after
    # primary screen name are the screens to the top, bottom, left and right
    # of the primary screen. In this example, screen 2 is located to the
    # right of screen 1.

    Screen "Screen 1"

    # Each InputDevice line specifies an InputDevice section name and
    # optionally some options to specify the way the device is to be
    # used. Those options include "CorePointer", "CoreKeyboard" and
    # "SendCoreEvents".

    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"

    EndSection


  • /etc/rc.d/rc.local

    #!/bin/sh
    #
    # /etc/rc.d/rc.local: Local system initialization script.
    #
    # Put any local startup commands in here. Also, if you have
    # anything that needs to be run at shutdown time you can
    # make an /etc/rc.d/rc.local_shutdown script and put those
    # commands in there.
    #----cut here----
    # I2C adapter drivers
    modprobe i2c-i801
    # Chip drivers
    modprobe adm1031
    modprobe eeprom
    # sleep 2 # optional
    /root/unhide_ICH_SMBus
    /usr/bin/sensors -s # recommended
    #----cut here----


  • /etc/sysconfig/lm_sensors

    # /etc/sysconfig/lm_sensors - Defines modules loaded by
    # /etc/init.d/lm_sensors
    # Copyright (c) 1998 - 2001 Frodo Looijaard
    #
    # This program is free software; you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
    #
    #
    # See also the lm_sensors homepage at:
    # http://www.lm-sensors.org/
    #
    # This file is used by /etc/init.d/lm_sensors and defines the modules to
    # be loaded/unloaded. This file is sourced into /etc/init.d/lm_sensors.
    #
    # The format of this file is a shell script that simply defines the modules
    # in order as normal variables with the special names:
    # MODULE_0, MODULE_1, MODULE_2, etc.
    #
    # List the modules that are to be loaded for your system
    #
    # Generated by sensors-detect on Tue Jul 31 22:03:48 2007
    MODULE_0=i2c-i801
    MODULE_1=adm1031
    MODULE_2=eeprom



More Specific Information
  • lspci

    bash-3.1# lspci
    00:00.0 Host bridge: Intel Corporation 82845 845 [Brookdale] Chipset Host Bridge (rev 04)
    00:01.0 PCI bridge: Intel Corporation 82845 845 [Brookdale] Chipset AGP Bridge (rev 04)
    00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 42)
    00:1f.0 ISA bridge: Intel Corporation 82801CAM ISA Bridge (LPC) (rev 02)
    00:1f.1 IDE interface: Intel Corporation 82801CAM IDE U100 Controller (rev 02)
    00:1f.3 SMBus: Intel Corporation 82801CA/CAM SMBus Controller (rev 02)
    00:1f.5 Multimedia audio controller: Intel Corporation 82801CA/CAM AC'97 Audio Controller (rev 02)
    01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
    02:04.0 Communication controller: Conexant HSF 56k HSFi Modem (rev 01)
    02:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
    02:06.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller (rev 02)
    02:08.0 Ethernet controller: Intel Corporation 82801CAM (ICH3) PRO/100 VE (LOM) Ethernet Controller (rev 42)
    02:0e.0 USB Controller: NEC Corporation USB (rev 41)
    02:0e.1 USB Controller: NEC Corporation USB (rev 41)
    02:0e.2 USB Controller: NEC Corporation USB 2.0 (rev 02)
    03:00.0 USB Controller: NEC Corporation USB (rev 43)
    03:00.1 USB Controller: NEC Corporation USB (rev 43)
    03:00.2 USB Controller: NEC Corporation USB 2.0 (rev 04)
    bash-3.1#


Links:

This laptop works very well. I have been using it for four years with many operating systems without hardware problems.
The only problem is its tendency to overheat. So you have to clean it with compressed air every 6 months.