blueway.Softworks
blog.bluewaysw.de →Link to the official site · 5,172 chars · not written by Vinony
Status The status of the MEGA65 version of GEOS as present on the master branch is still considered early BETA and still under development. Please use with care! Learn more details about the GEOS MEGA65 implementation (soon) in the Technical Documentation section. We are on for more efficient collaboration. Please register at for MyGEOS and use the Slack section and receive access to our developer community. Welcome! The cc65 compiler suite allows writing GEOS applications in C or assembly. This is the reverse engineered source code of the KERNAL (plus disk and input drivers) of the English version of GEOS 2.0 for Commodore 64 and Commodore 128. The source has been heavily reorganized and modularized, nevertheless, a standard compile will generate binaries that are identical with the GEOS 64 2.0 and GEOS 128 2.0 distribution binaries. Optionally, the following features that were not part of the original GEOS 2.0 can be enabled for GEOS64: Run make to build the original "BSW" GEOS for C64. This will create the following files in directory build/bsw : If you have the cbmfiles.com GEOS64.D64 image in the current directory, the disk image will be based on that one, with the GEOS and GEOBOOT files deleted and the newly built kernel added. Otherwise, it will be a new disk image with the kernel, and, if you have a desktop.cvt file in the current directory, with DESK TOP added. bsw (default): Berkeley Softworks GEOS 64 2.0 variant cbmfiles : The cbmfiles.com version. It starts out with a different date, and has some variables in the kernel pre-filled. gateway : The patched KERNEL shipped by gateWay 2.51. It contains a slightly modified BSW font, has the Panic code replaced with code to swap the disk driver on a RESTORE press, and it loads GATEWAY instead of DESK TOP as the shell. wheels : The Wheels 64 variant. It is heavily patched, optimized for size and speed, and contains additional features. It requires a RAM extension. The current version compiles into the same binary, but won't actually run because of missing boot code. More work is needed here. bsw128 : Berkeley Softworks GEOS 128 2.0 variant, i.e. GEOS for C128 with 128 KB RAM and VDC 640px width support. This needs some more work to actually boot. custom : See below. By default, the KERNAL image will contain the Commodore 1541 disk driver ( drv1541 ) and the joystick input driver ( joydrv ). You can specify different drivers to be included like this: With RAM expansion support, GEOS will use the extra RAM for caching deskTop and for holding the swap area when running desk accessories. GEOS will show an error at startup and reset the system if support for a particular memory expansion is enabled but it is not available. Note that the changing settings and adding code may cause certain memory areas to overflow. In this case, you can try moving segments between the LOKERNAL and KERNAL areas. The file kernal.map in the build output will give you an idea about the sizes of segments. The custom variant starts out with about 550 bytes of usable memory in the KERNAL area. Makefile config.inc : kernel config options regress.sh : script that compares output with reference drv/ : disk drive driver source inc/ : include files: macros and symbols input/ : input driver source kernal/ : kernal source reference/ : original binaries from the cbmfiles.com version Great care was taken to split the KERNAL into small, independent components. This division does not necessarily match the layout of the original binary code, but with the help of .segments , the layout in the binary does not have to match the layout in source. One example of this is the file system and application/accessory loading code. In the original GEOS KERNAL binary, they were not separate, but here, the file system code is in filesys.s and the loading code is in load.s , with only two symbol dependencies. In case you want to adapt the source for other 6502-based systems, you will want to know which parts have C
Excerpt from the source-code README · 15,776 chars · not written by Vinony
via Wikidata · CC0
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).