Skip to content

A simple bitmap editor that runs on the Intellivision, written in IntyBASIC.

License

Notifications You must be signed in to change notification settings

ppelleti/BitmapEditor

Repository files navigation

This IntyBASIC program is a simple bitmap editor, meant for designing Intellivision background cards.

Bitmap Editor running on jzIntv

You can run this program on a real Intellivision by using a flash cartridge such as LTO Flash!, or you can run it on a modern computer using an emulator such as jzIntv.

The bitmap editor lets you design two cards at once. Use the disc to move (on jzIntv, the arrow keys), and press any side button (such as Shift on jzIntv) to invert the pixel the cursor is on. You can hold down the side button while moving to draw lines.

To clear the screen, press CLEAR on the Intellivision keypad (or press '-' on jzIntv).

To save your bitmap, press 1. The bitmap is saved in the format of an IntyBASIC snippet, which can be incorporated into an IntyBASIC program.

Saving bitmaps with LTO Flash!

To save your bitmap on LTO Flash!, you need to have a USB cable connected between the LTO Flash! cartridge and a host computer. On the host computer, run a serial terminal program, set to 8-N-1, with a baud rate of 2000000. (Yes, that's two million baud.) This baud rate is a bit unusual, so not all programs support it. I recommend Decisive Tactics Serial on Mac OS X.

Or you can just use the program show-serial which is in this repository, which works on Mac OS X and Linux. show-serial takes one command-line argument, the name of the serial device. To find the name of the serial device, try ls /dev/cu.* on Mac OS X, or ls /dev/ttyUSB* on Linux.

If the LTO Flash! is on the title screen or menu, the serial terminal will periodically print "LOCUTUS". This is normal and harmless.

The bitmap editor will display a USB icon in the upper-right corner when the LTO Flash! is connected to a host computer.

Saving bitmaps with jzIntv

On the jzIntv emulator, pressing 1 will append the current bitmap to the file bitmap.bas. This only works if you specify the --file-io argument when running jzIntv. For example,

jzintv -z3 --file-io . editor.rom

will place bitmap.bas in the current directory.

The bitmap editor will display two letters (an abbreviation of the emulator name) in the upper right corner when running on a supported emulator. (Currently only jzIntv supports saving to a file.)

Building

A Makefile is provided. Do make to build both editor.rom and show-serial, or do make editor.rom to just build the ROM.

To build the ROM, the Makefile assumes intybasic and as1600 are in your PATH. It also requires that the variable INTY_LIB_PATH points to the directory where intybasic_prologue.asm and intybasic_epilogue.asm can be found. You can set this as an environment variable, or as a variable on the make command line, such as make editor.rom INTY_LIB_PATH=/some/directory/somewhere.

You can also type make run to build the ROM and run it in the jzIntv emulator. This assumes you have jzintv on your PATH, and the environment variable JZINTV_ROM_PATH points to a directory where exec.bin and grom.bin can be found. (The freely avaiable miniexec.bin and minigrom.bin work fine, if you rename them to exec.bin and grom.bin.)

License

The bitmap editor is licensed under the GNU General Public License, version 3, or (at your option) any later version.

The .mac files in this repository come from the jzIntv distribution.