8-Bitsy
A downloadable game
8-Bitsy is a simple tool, built using the Honeylisp programming environment, to make simple Bitsy-like worlds that run on the Apple ][.
What's Honeylisp? Honeylisp is the lite text editor, running inside the love2d game engine, with a bunch of plugins and libraries that support creating Apple ][ software using fennel. It comprises a lispy 6502 assembler, a Forth-like direct-threaded code interpreter, tools integrated into the editor for creating graphics and maps, and tools to integrate with actual Apple II hardware (via serial or cassette port) or MAME (providing a Fennel nREPL as a MAME plugin). Prior to the jam, it was used to create Neu] [ower.
What's Bitsy? Bitsy is a very accessible web-based tool by Adam LeDoux that allows anyone to make little worlds filled with little pixel guys that you can talk to. It does not require any programming, but is very hackable, and has a vibrant community of cool people making cool stuff with it.
What work did you actually do for the Lisp Game Jam? All of the Neu] [ower-specific code was pulled out, to provide a simplified engine. The data format was reworked so that, instead of each editor working on independent files, there is now a single file containing all graphics, maps, and object data. New tiles created in the tile editor now immediately appear inside the map editor. Finally, the map editor was extended so that objects' behaviour could be programmed directly from inside the editor, without having to write any code. The old way of working - specifying object behaviour by typing in the name of a subroutine to run - is now hidden behind an "advanced" mode.
What is this .dsk file? The file you can download here is a sort of "demo game" - a tiny little world you can wander around in and explore. You can play it with your favourite Apple II emulator, or use ADT Pro to write it to a real floppy disk and play it on real hardware, if you have it.
How can I use 8-Bitsy to make my own Apple ][ games? Please note that neither Honeylisp nor 8-bitsy have been tested on any systems besides the author's, so you may run into problems. You require, at minimum, love2d installed.
- Download and unzip the latest source code directly from my repository - https://git.information-superhighway.net/SpindleyQ/honeylisp/archive/springlispjam2021.zip
- (I've also uploaded it to the itch page, to ensure I comply completely with the rules, but you should grab the latest version from my site just to be sure.)
- From inside the directory you unzipped it to, run "love ."
You should now see a text editor like this:
To run any of the special Honeylisp commands, press Ctrl-Shift-P to bring up the command menu, and start typing the name of the command you want to run. Some useful ones:
Honeylisp: Tile Editor | Tool for drawing 14x16 pixel tiles |
Honeylisp: Map Editor | Main tool for creating maps and specifying object behaviour |
Honeylisp: Portrait Editor | Tool for creating 28x32 pixel portrait images, used when displaying dialogue |
Honeylisp: Font Editor | Tool for modifying the font used in dialogue |
Honeylisp: Rebuild | Generates a new 8bitsy.dsk file |
Link: Switch to {Serial, Tape, Mame} | Determine which Apple ][ integration link should be active |
Link: Boot | Starts an Apple ][ in MAME with the Honeylisp integration plugin enabled |
Honeylisp: Upload | Uploads the game directly into memory and runs it |
Additionally, the following shortcut keys are often useful:
Ctrl-S | Save |
Alt-R | In Honeylisp editors, reverts the game to the previous version saved to disk. In Fennel editors, performs a hot-code-reload operation on the currently-open module; this allows custom editors to be built and improved without leaving the Honeylisp environment. |
Alt-L | When connected to MAME, rebuilds the project, and performs a hot-code-reload operation to load the latest version of the game into Apple ][ memory, without requiring a restart. |
What license is Honeylisp / 8-Bitsy / the demo game released under? Everything is hereby released under the GPLv3 license, with the exception of the bundled third-party components under the "vendor" directory, which are licensed according to their accompanying LICENSE files.
Leave a comment
Log in with itch.io to leave a comment.