[ Main Page | Project Page | Download | Screenshots | FAQ | User's Guide | Developer's Guide | CVS ]

PortaBoom Notes

Overview

PortaBoom is a mini-Linux distribution that is designed with one thing in mind - being able to play the classic game Doom (tm) from the CD ROM drive of any Intel machine fast enough to run it (Probably P5 or better). PortaBoom will use CVS repositories for holding code, web server space for web pages, and download space for CD ISO images. The goal is to get a working system on a 3" CD-R blank (185 Megs), with enough room to spare for the end user to customize things by adding extra WAD files.

Dedication

For anyone who has ever said "You know what I remember, I remember playing <insert name of favorite game here>...  that game was just the best.  I wish I could play that game now."; this hopefully will be what you are looking for. For everyone who was involved with the creation of something that has directly or indirectly brought joy into other people's lives, and also to those who carry on with other's ideas, and with the sharing of their ideas and creations.

Possible main project names:

  • Linux Gaming System
  • Ultimate Game Machine
  • Ultimate Game System
  • Old School Game System (osgs.org)
  • LBox (as in XBox; see lawyers salivate :) )
  • PortaBoom
  • LoopBoom
  • Boom-to-go
  • frags-to-go
  • Classic Game System
  • Linux Home Entertainment Center/System (LHEC/LHES)
  • Linux Entertainment System (LES)
  • FleaLinux
  • AntLinux

Possible subproject names and links to source, toolchain links:

Links to rawwrite projects

Links to related projects

zisofs/isofs file size comparisons

[pantera][brian 566] ls -l /usr/local/src/*iso
-rw-r--r--    1 brian    staff    460980224 Nov 20 00:01 /usr/local/src/test-isofs.iso
-rw-r--r--    1 brian    staff    101056512 Nov 20 00:11 /usr/local/src/test-usr.iso
[pantera][brian 568] ls -l /var/tmp/*iso
-rw-r--r--    1 brian    brian    267157504 Nov 19 23:57 /var/tmp/test-zisofs.ziso
-rw-r--r--    1 brian    brian    41680896 Nov 20 00:08 /var/tmp/test-zusr_bin.ziso

Packages to add to a standard Woody Install

Tarballs to compile

Packages to Remove

(Maybe; if the PortaBoom File Database comes together, this will work out on it's own)

Packages to check for removal

ALSA ./configure lines

alsa-driver
./configure \ --prefix=/usr/local/src/alsa \
--exec-prefix=/usr/local/src/alsa \
--oldincludedir=/usr/local/src/alsa/include \ --with-moddir=/usr/local/src/alsa/modules \ --with-isapnp=yes
--with-sequencer=yes --with-oss=yes --with-cards=all
# --with-isapnp=auto

alsa-lib
./configure \
--prefix=/usr/local/src/alsa \
--exec-prefix=/usr/local/src/alsa \
--oldincludedir=/usr/local/src/alsa/include

alsa-utils
./configure \
--prefix=/usr/local/src/alsa \
--exec-prefix=/usr/local/src/alsa \
--oldincludedir=/usr/local/src/alsa/include \
--with-alsa-prefix=/usr/local/src/alsa \
--with-alsa-inc-prefix=/usr/local/src/alsa/include
 

Mounting the cloop image from the rescue CD:

Instructions for building a PortaBoom release

  1. Run the image in VMware.  Does it work?
  2. Have all of the documentation files been updated?
    1. Changelog
    2. README
    3. CREDITS
    4. TODO
  3. Change version number in the portabm.lss image
  4. change the version number in the mkisofs script
  5. create the iso image
  6. get the MD5sum of the iso image
  7. bzip the image
  8. get the MD5sum of the bzip'ped image
  9. update the webpage with the new filesizes, the release date, and the MD5sum's
  10. copy the image to the archives, and change the symlink
Instructions for building a tkBoom (or other module) release
  1. Test all of the functions.  Does it work?
  2. Have all of the documentation files been updated?
    1. Changelog
    2. README
    3. CREDITS
    4. TODO
  3. Package the package (tar up the files, excluding the CVS directories)
  4. Upload to uploads.sourceforge.net
  5. Release
  6. Submit a SourceForge news story
  7. Submit an Advogato Diary entry

Misc Notes

DGJPP .dsm listing

# DSM for djdev 2.03 binaries
# Written by Richard Dawe <richdawe@bigfoot.com>

dsm-file-version: 1.2
dsm-version: 0.5.1
dsm-name: djdev203

dsm-author: Richard Dawe
dsm-author-email: richdawe@bigfoot.com
dsm-author-web-site: http://www.bigfoot.com/~richdawe/

name: djdev
version: 2.03 patchlevel 2
type: binaries
sources-dsm: djlsr203
manifest: djdev203

short-description: DJGPP Development Kit and Runtime (6/2002 refresh)
author: DJ Delorie
author-email: dj@delorie.com
web-site: http://www.delorie.com/djgpp/
newsgroup: comp.os.msdos.djgpp
newsgroup-email-gateway: djgpp@delorie.com
simtelnet-path: v2/
zip: djdev203.zip

#builtin-post-install-script: echo Welcome to the world of DJGPP!

replaces: djdev < 2.03 patchlevel 2
requires: DPMI

# For reading docs
depends-on: info-reader

# Provides
provides: djgpp-dev-env

Debian .dsc file listing

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.0
Source: atari800
Version: 1.2.2-1
Binary: atari800
Maintainer: Dale Scheetz (Dwarf #1) <dwarf@polaris.net>
Architecture: any
Standards-Version: 3.1.1.1
Build-Depends: xlib6g-dev, libncurses-dev, svgalibg1-dev [i386], zlib1g-dev, deb
helper, sharutils
Files:
 17f40bab7f2cdf2968df46e37285dcd1 460211 atari800_1.2.2.orig.tar.gz
 90ca3e08253638e7ef6686e3b1029065 4758 atari800_1.2.2-1.diff.gz

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE8lBrqGpxLjvSYSuARAslQAJ9UBeTG0oBzn9UrRzP63bWl2RCEPQCg04Jq
Cc1iXIiZvIRPpzyAhjpwWA0=
=dRJs
-----END PGP SIGNATURE-----

Sample Debian Control File

Source: atari800
Section: contrib/otherosfs
Priority: optional
Maintainer: Dale Scheetz (Dwarf #1) <dwarf@polaris.net>
Build-Depends: xlib6g-dev, libncurses-dev, svgalibg1-dev [i386], zlib1g-dev, deb
helper, sharutils
Standards-Version: 3.1.1.1

Package: atari800
Architecture: any
Depends: ${shlibs:Depends}
Description: Atari emulator for svgalib/X/curses
 This is an Atari emulator that can use SVGALIB, X, or plain curses. It can
 emulate the Atari 800, 800XL, 130XE, and 5200 systems.
 .
 The Atari Operating System ROMs are not available with this package, due to
 copyright. You'll have to either make copies of them from an old Atari
 computer, or see README.Debian for other ways to obtain them.

cdrecord in Windows

In order to use cdrecord in Windows, you'll have to do some gymnastics to get it all running.  First, some links:
From the cdrecord site above, download the following files:
Un-compress the cdrtools tarball:
Next, run star on the archive to unpack it:
Now you should have a directory full of files that are associated with cdrecord.  Try cdrecord.exe and see if it can see your CD drive:
Proper operation of cdrecord should look something like this:
scsibus2:
        2,0,0   200) 'COMPAQPC' 'ATLAS 10K 9 WLS ' 'UCQ5' Disk
        2,1,0   201) *
        2,2,0   202) *
        2,3,0   203) *
        2,4,0   204) 'PLEXTOR ' 'CD-R   PX-W8220T' '1.01' Removable CD-ROM
        2,5,0   205) *
        2,6,0   206) *
        2,7,0   207) HOST ADAPTOR

If cdrecord complains about ASPI drivers, then you'll need to install aspi_me.exe program listed above.  aspi_me.exe installs working ASPI drivers for your system, which cdrecord may need to run correctly in Windows.  

WARNING - the below instructions can hose your Windows system.  If you don't feel comforatable with the instructions below, and the possibility of recovering your system from failure, DO NOT perform these instructions.

To install aspi_me.exe
  1. set your system clock to some time before 1999.  The aspi_me.exe program requires this.
  2. run aspi_me.exe, click on the Update Drivers button.
  3. click on the Restart System button once the drivers are updated.
  4. try and run cdrecord.exe -scanbus again, it should produce output similar to the above this time
The above worked for me on my test machine running Windows 2000 Advanced Server, I had to install the drivers from aspi_me.exe to get cdrecord to work correctly.

One last thing, you may want to disable Autorun, as Windows polls the CD drive periodically, which can screw up *ALL* CD writing software, including cdrecord.  Using regedit, set the following key to '0' (zero):

Links to possible SBC candidates

PortaBoom Sourceforge Project Statement

PortaBoom is a mini-Linux distribution that is designed with one thing in mind - being able to play one of the ports of the classic game Doom (tm) from the CD ROM drive of any Intel machine fast enough to run it (Probably P5 or better). Mini-Linux distribution in the model of the various Linuxcare-style bootable business card rescue CD projects that are floating around. (I'm using the Linuxcare BBC v2.0 as an example). My CD image is around 150M right now, but I've done absolutely -0- stripping of binaries, and cleaning of the filesystem in general. You put a CD into any Intel machine (most likely one running Windows, with no Linux installed whatsoever), boot off of the CD (or off of a floppy if the CD won't boot), and once the CD is loaded, you have a fully running Linux system, with enough tools in place to play a game of Doom (provided by the Doom port PrBoom for now, http://prboom.sourceforge.net). There will also be extras like ssh and (maybe) Mozilla, so you can use it as a X terminal server as well. The machine will be capable of sound (using ALSA), X (using framebuffer X), and network connectivity, all running from the CD ROM. I'm going to use one of my other projects, tkBoom (http://tkboom.sourceforge.net) to provide the interface in X, tkBoom will be acting as the window manager, or I may use tkBoom on top of blackbox ala Linuxcare BBC. I'm going to set it up so you'll be able to burn your own CD's with the official id Software WAD files, or 3rd party WAD files that you download from the net. The id Software shareware WAD is freely distributable, but most 3rd party WAD files will only work with a registered WAD, so people will most likely add their own WAD files and burn their own custom version of the CD. I'm also looking into doing a network bootable version, where one computer acts as the game play data server (prboom-game-server) and an NFS file server. The NFS part of the server would serve the compressed root loopback image that the clients that boot off of floppy would need to run. Clients would be able to download 3rd party WADS from the server as well. The prboom-game-server acts as a game server, relaying game data to/from clients playing the game. PortaBoom will use CVS repositories for holding code, web server space for web pages, and download space for CD ISO images. The goal is to get a working system on a 3" CD-R blank (185 Megs), with enough room to spare for the end user to customize things by adding extra WAD files.
 

[ Main Page | Project Page | Download | Screenshots | FAQ | User's Guide | Developer's Guide | CVS ]