Yasir's
Junkyard

SuperSmartCard kernel driver

 Junkyard
Index
 
 Translators
AmigaIcon
HsiRaw
Palm Album
 
 Kernel drivers
Optrex
W8378x
SuperSmartCard
 
 Utils
OptrexCPUMon
 
 Misc
Bake
 



Hosted by:
sourceforge.net

Description

Kernel driver for the SuperSmartCard (SSC) Gameboy flash card writer.
The SSC was made by SSL, but I have head that they went out of buisness around '95.

Installation / configuration

To install the driver, just run the install.sh file in the archive.

The driver presumes that you have hooked the write to a parallel port that uses io port 0x378, if this is not the case, you must edit/create the file /boot/home/config/settings/kernel/drivers/ssc and set the ioport option to the right port (on intel you can use the Preferences/Devices app to find the right port).
The scc file should look something like this:
ioport 0x378


If you switch between diffrent devices on you parallel port, you have to use the rescan program to let the ssc driver know that you have changed hardware, you run it from a Terminal, like this:
rescan ssc

Usage

The driver exports these devices in the /dev/misc/ssc directory:
DeviceDescription
flash/allall banks (boot+0+1+2+3) for a complete 512Kbytes card
flash/bootThe 64Kbytes boot area, used internaly for the small boot menu.
flash/0a 64Kbytes bank.
flash/1a 128Kbytes bank.
flash/2another 128Kbytes bank.
flash/3and yet a 128Kbytes bank.
flash/23bank 2 and 3 joined to a 256Kbytes bank.
ram/08Kbytes savegame bank for flash/0
ram/18Kbytes savegame bank for flash/1
ram/28Kbytes savegame bank for flash/2 or flash/23
ram/38Kbytes savegame bank for flash/3


So if you want to install MegaMan X's T2 demo (512K), you just copy it like this:
cp t2.gb /dev/misc/ssc/flash/all


You can also install more that one romimage at a time, this is how you install Anders Granlund's Big Scroll demo, Ian Jame's Bond, Harry Mulder's Kirby XXL and Jeff Frohwein's Basic into one cardridge:
cp Bc.gb /dev/misc/ssc/flash/0
cp bond.gb /dev/misc/ssc/flash/1
cp kirbyxxl.gb /dev/misc/ssc/flash/2
cp basic.gb /dev/misc/ssc/flash/3
The kerneldriver will append a small boot selector to the card, so that you may choose which program to run when you power up the gameboy.

To backup or restore the savegame ram (does not work with the black/transparent color gameboy card's):
cp /dev/misc/ssc/ram/0 savegame.backup
or
cp savegame.backup /dev/misc/ssc/ram/0 

Bugs / limitations

The boot selecter does not work with color programs, so if you want to see color demos, you have to upload them to either the boot or the all bank.

The memory controller in the flash card that comes with the SSC seems to have problems with dma's when the cpu is runnning in dobbelt speed, this means that a lot of demos just won't work :(

License

This software is released under the BSD License:

Copyright (c) 1999, Jesper Hansen. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.
3. Neither name of the company nor the names of its contributors may
   be used to endorse or promote products derived from this software
   without specific prior written permission. 

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Author

Jesper Hansen
jesper@funcom.com
The source and more informantion can be found here.


(c) '2000 Jesper Hansen