sep workshop logo sep
[fastpc] [ciaide] [geos] [linux] [projects] [software] [contact]

GEOS

Here you can find stuff concerning GEOS, which is not available ANYWHERE else.

NOTE: ftp.elysium.pl is temporarily down. Here is latest snapshot of GEOS2000
GEOS2000-20020329.tar.gz


GEOS Sources - source code of GEOS v2.0 for C64, 99% identical to original GEOS

GEOS Optimized - sources optimized, and with removed copy protection

You need registered TASS to assemble those.

Latest source snapshot - go there for latest source versions of GEOS 2000 and GEOS 128.

GEOS 2000 is optimized and modularized version of the above. The only difference is that is completely rehashed and mixed. It supports +60K and RamCart expansions. You are able to make the kernal just as you want - with proper input and disk drivers directly at start. No more GeoMakeBoots. Just load'n'run.

The only tool needed to make GEOS2000 is ACME, a GNU crossassembler It is portable and available in versions for MS-DOS, Linux and other.

Be warned that file generated from these sources replaces GEOS, GEOS BOOT and GEOS KERNAL files and you still need the rest of the system (like DeskTop and applications). You should get know what is the serial number of your current kernel, because otherwise your BSW applications (GeoWrite, GeoPublish) won't work at all, unless they are patched. You can also install them from backups of original disks. The serial number of GEOS kernal can be checked using tools like GeoNumber or GeoID, both available from GEOS section of ftp.elysium.pl.

GEOS 2000 is a fairly configurable thing and at the compile-time you can determine what disk driver will be available on boot (this enables you to boot from 1571 or 1581). Another feature is that it runs at ca. 1.3MHz on C128s. This is done by using 2MHz mode on the borders. This is done in a very safe way and I guarantee that there is no screen flickering which was seen in other patches to GEOS. GEOS2000 supports +60K and RamCart expansions. It means that DeskTop resides in memory all the time and is loaded only at boot time, and Desk Accessories are called faster. Currently there's no way to have simultaneous support for +60K, RamCart and REU. You have the choice one or another.

GEOS 2000 should work with DeskTop replacements (like QwikTop), but I can't guarantee that all of them will. It was up to the authors to write them obeying GEOS laws. Also it will not work with any GEOS patches that are changing the core of the system. Too many things have changed. Nothing is lost. You just need to know what does particular patch is doing and you can apply this on GEOS2000 sources.

Write to me if you will find any problems using GEOS2000 (this is the only supported by me version). Write also if you have any questions.

Be warned that you can download these materials only if you have legal GEOS copy. Anyway, you can't build and use system without DeskTop and other applications.


Here are three precompiled GEOS Kernals made using sources snapshot from 30-07-2001. All three are compiled with joystick and 1541, these have also 2MHz feature on C128 as described above.
GEOS 2000 for C64 with +60K expansion
GEOS 2000 for C64 with RamCart 64KB
GEOS 2000 for C64 with RamCart 128KB
To start the system just ungzip one of those files and copy them onto a bootdisk (only DESK TOP file is required to reside on this disk). Just load and run it.


Other GEOS programs:


IDE64-RTC - an auto-exec that will read date and time from RTC onboard IDE64 and set GEOS system date and time, comes with source code.
DS12C887-RTC - a GEOS auto-exec to read and set time and date from DS12C887 RTC at $d200, comes with source code.
MasterDiskRemover - for removing write protection on boot disk, whis is enabled during each boot.
GeoMakeDir 2.0 - for creating and maintaning subdirectories under GEOS, it works ONLY with 1541 and 1571, help is built in.
PC-Joy - input drivers, calibrating apps and a scheme of connecting an analog joystick to C64/128; versions 64/128 included; analog joystick is for me more comfortable even than PC/Amiga mice!
Configure 128 - patched version for using 186K disks in 1541 (+21K auto-exec doesn't work in GEOS128)
256K-patch - this is disk driver installer for 256K expanded C128s, it enables 122K RamDisk, there's also enhanced version which uses simultaneously RamCart and expansion for total pool of 246K RamDisk, but currently you will have to contact with me for binary versions.

Sources, Development and Crossdevelopment

Most of the time I spent coding GEOS was on the real machine C64 with two 1541s. When I finally had DeskTop on my RamCart things got some speed and soon I had a ramdisk on my RamCart. It was just enough to hold GeoWrite, MegaAssembler and needed include files. Then I expanded my C128 to 256K and I wanted to use the additional space. About that time my developing on real machines stopped and I moved to PC with tools. Currently I'm using only ACME crossassembler with Star Commander for developing and testing. Everything is at start tested under VICE emulator.


GEOSdevel-ACME - is a set of ACME macros and template header file for automagical creating of standard GEOS .cvt files, just download, read docs and you are able to develop sequential structure GEOS binary files which needs only to be unconverted (with Convert v2.5 or on-the-fly with StarCommander).
GEOSdevel-TASS - similar set for Taboo's TASS
LaserMatrix v2.1 - this is an example of using GEOSDevel - it's a smart interpolating printer driver, and the results are really excellent
RamDisk drivers - these are not independent, they need some magic from installer, but are provided here as examples for writting disk drivers under GEOS; included are driver for 256K C128, for 128K RamCart and combo driver for 256K C128 with 128K RamCart; these will be base for upcoming IDE disk driver
GEOSLib - is a cc65 wrapper for GEOS API, it is nearly finished and is now in state of debugging but still under heavy development, so don't be surprised if something won't work :). Currently GEOSLib is fully incorporated into cc65, so visit cc65 project homepage and download the latest version of cc65.


RamCart tools

These are working similar to GEOS2000 but without 2MHz feature. They enable DeskTop residing in RAM and faster Desk Accessories. These are regarding vendor RamCart filesystem and only free blocks are used as a swap space. This also means that you can keep some of your favourite programs along with GEOS on a battery backed up memory cartridge, and have access to them right after RESET or power on.
RC64K version
RC128K version

RamCart 128K can be used as a RamDrive with capacity of 122K.

sep