Skip to content

Releases: micahcowan/bobbin

v0.4.2 - bobbin on the shebang line

27 Jul 05:40
Compare
Choose a tag to compare
Pre-release

New features:

  • More accurate CPU speed, and character-flashing rate.
  • --run-basic command to support bobbin on the shebang line, to use AppleSoft as a Unix scripting language.
  • --watch now works on any platform, not Linux-specific (no longer relies on inotify).
  • --debug-on-brk to enter the debugger when a BRK or an unsupported operator is encountered.
  • Monitor-style memory writes in the debugger.

Bug fixes:

  • Fixed the bell always sounding on AppleSoft's INPUT command, in --interface tty.
  • Fix --detokenize, which appears to have been broken since bobbin v0.4.
  • Properly deactivate the 80-column card when --ram 64k is set.
  • Fix --watch so it doesn't fail an assert.
  • Fix breakout mode in --interface tty, to not fail a sporadic assert.
  • Avoid some annoying gcc/clang warnings.

To build bobbin, we recommend using the *.tar.gz and *.zip files that are not named "Source Code"—the latter are automatically generated by GitHub, while the former include the pregenerated ./configure script and associated helpers, needed to build bobbin. It is also highly recommended that you have a developer package (header files and library symlinks) for curses installed when you configure and build bobbin.

As always, see README.md for much, much more information.

v0.4.1 - fixed missing apple2e.rom

09 Sep 18:49
Compare
Choose a tag to compare
Pre-release

This 0.4.1 patch release fixes a ROM file missing from the distribution tarball and zipfile.

Many, many improvements, including:

  • Added disk drive/controller emulation! Supported file formats: .dsk, .do, .po, .nib
  • Added support for Apple IIe (unenhanced/6502), with an 80-column card.
  • ^C^C in the tty interface now opens a command interface, instead of quitting
  • --tokenize: take AppleSoft program code as input, emit tokenized AppleSoft to output
  • Many improvements to bobbin’s built-in debugger (only available in --simple interface)

To build bobbin, we recommend using the *.tar.gz and *.zip files that are not named "Source Code"—the latter are automatically generated by GitHub, while the former include the pregenerated ./configure script and associated helpers, needed to build bobbin. It is also highly recommended that you have a developer package (header files and library symlinks) for curses installed when you configure and build bobbin.

As always, see README.md for much, much more information.

v0.4 - disk drives, unenhanced Apple IIe

09 Sep 05:44
Compare
Choose a tag to compare

The distribution files for this release are missing a file needed for Apple IIe emulation - go get v0.4.1 instead!

v0.3 - screen emulation via --tty, responsive restarts with --watch

30 Jul 22:48
Compare
Choose a tag to compare

Many added features and improvements in this version—too many to mention. But the biggest additions is the new --tty interface to provide emulation of the Apple ][ screen in your terminal; and the ability to load binary files into emulator RAM, and reboot with new versions whenever the binary file is written to.

The options involved with the latter feature are: --load, --load-at, --start-at, --delay-until, and --watch.

To build bobbin, we recommend using the *.tar.gz and *.zip files that are not named "Source Code"—the latter are automatically generated by GitHub, while the former include the pregenerated ./configure script and associated helpers, needed to build bobbin. It is also highly recommended that you have a developer package (header files and library symlinks) for curses installed when you configure and build bobbin.

As always, see README.md for much, much more information.

v0.2 - BCD Now Works

23 Jul 00:53
Compare
Choose a tag to compare
v0.2 - BCD Now Works Pre-release
Pre-release

BCD arithmetic operations have been fixed and tested. ROM files are now verified against an expected checksum, a basic --help message provided, and you can limit how much RAM is available with --ram. See the README.md.

v0.1.0 - Simple-Mode Overhaul

20 Jul 10:22
6ca2a00
Compare
Choose a tag to compare
Pre-release

There are too many changes to describe them all here—be sure to check the README for detailed instructions!

In order to match the behavior of the video, bobbin must now be invoked like: ./bobbin -m plus --simple --simple-input canonical. Try it also without the --simple-input canonical, to see how that differs.

The input system for the current --simple interface has been completely overhauled, and is much more robust in how it handles input requests from Apple ][ programs (the "two-day hack" version would hang forever on a GET A$, and couldn't work with Integer BASIC firmware).

A script has been added to automatically fetch the appropriate rom files that can be used with bobbin. It won't work unless you have wget and sha256sum installed. The script mentions how you can change the FTP URLs into a popular mirror's HTTPS URL, suitable for popping the URLs into your browser for download, if you don't have a command-line downloading tool.

Two days of development work (super-alpha)

18 Jul 06:42
10540c1
Compare
Choose a tag to compare

This is the bobbin Apple ][ emulator, after a weekend of work on it. Can pipe (or type) AppleSoft BASIC into it. Works by hijacking GETLN (INPUT) and COUT1; any other form of keyboard read will just hang (AppleSoft GET, I'm looking at you). Documented 6502 op codes have all been thoroughly tested, except decimal-mode stuff which is probably severely broken.

You must have a 12kb Apple ][+ rom firmware named apple2.rom (not provided) in your current directory, or bobbin won't be able to run.

There are no dependencies to build it, beyond a standard (modern) Unix dev environment (cc,, make). Only tested on Ubuntu Linux and Darwin (Mac OS) so far.