Skip to content

Releases: picocomputer/rp6502

Version 0.30

Choose a tag to compare

@github-actions github-actions released this 10 Jul 23:43

Picocomputer 6502 release

Flash rp6502_ria_w.uf2 and rp6502_vga.uf2 to the two Pi Pico 2 boards
(see README.txt in the zip).

macOS rp6502-emu.app is unsigned/un-notarized. First launch is blocked by
Gatekeeper — right-click → Open once, or run
xattr -dr com.apple.quarantine rp6502-emu.app.

Linux rp6502-emu-x86_64 / rp6502-emu-aarch64 are built on Ubuntu 24.04 and
need a recent glibc plus GL/X11/ALSA runtime libraries installed.

Web itch.io.zip is the ready-to-publish itch.io sample (serve over HTTP).

What's Changed

Full Changelog: v0.29...v0.30

Version 0.29

Choose a tag to compare

@rumbledethumps rumbledethumps released this 24 Jun 04:19
  • DISK tool added. HELP DISK and HELP DISK FORMAT etc. for more info
  • All localization is now in the src/ria/def folder
  • Mode 2 now allows any dimension tiles up to 16x16
  • Raw midi (sans SMF timing) added
  • Simple SSID scan added to HELP SET SSID and AT+SSID!
  • Various fixes and TinyUSB update

Version 0.28

Choose a tag to compare

@rumbledethumps rumbledethumps released this 13 Jun 02:11
9ec2ef9
  • All new time API. The RP6502-OS can do all the time conversion operations normally done with the C library. Monotonic 31-bit timers are available in 1 sec, 1/10, 1/100, and 1/1000 variants from the attribute system.
  • LLVM-MOS and CC65 should be at feature parity now. The time system was the only thing missing previously. Some effort was made to ensure no gaps in standard calls.
  • Terminal enhanced with custom palettes and underline color.
  • RLN_SUPPRESS_NL added for using cooked input on last terminal line without scrolling.
  • Locale setting and Polish translation. See HELP SET LOC. It is recommended to SET CP 0 on upgraded systems to change to the new default.
  • Multiple keyboard layouts can be selected. See HELP SET KB. This allows you to cycle between them with Super+Space (Win+Space).
  • Wi-Fi RSSI shown on status
  • Tenet now uses NAWS for terminal sizing which feeds into rln for better terminal size detection.
  • USB MIDI added.

Version 0.27

Choose a tag to compare

@rumbledethumps rumbledethumps released this 24 May 23:56
28dfce6

This release includes a massive improvement to the terminal and read line system (cooked input). There's so much improved that it deserves its own documentation page: https://picocomputer.github.io/term.html

The terminal adds (partial list): blink, dec line graphics, strikethrough, overline, underline, double underline, italic, scroll region, cursors, and an alternate screen buffer.

The read line (rln.c) system now detects terminal size. All monitor help and status is word wrapped and paginated to the detected size. MS-BASIC uses the read line system to paginate program listings. Multi-line input now works on all terminals (not just VGA).

For a tour of new read line features, run ansi.c and form.c from the examples. Make sure you have our latest cc65.

SIGINT was moved to the IRQ register. VSYNC was moved to bit 7 (nobody was using).

CP720 added, all monitor messages are utf-8 internally, help system made fully ready for localization. https://github.com/picocomputer/rp6502/blob/main/src/ria/str/str_locale.def#L7-L11

We're also looking for keyboard layouts. https://github.com/picocomputer/rp6502/blob/main/src/ria/hid/kbd.h#L17-L29

We have plenty of room for translations and keyboard layouts since they live in ROM.

Version 0.26

Choose a tag to compare

@rumbledethumps rumbledethumps released this 29 Apr 21:03
  • Fix SIGINT not working from USB keyboard. This fixes CTRL-C in MS-BASIC.
  • Add simple COPY and MOVE commands to monitor. No glob or recursion.

Version 0.25

Choose a tag to compare

@rumbledethumps rumbledethumps released this 28 Apr 01:33
afff93a

Version 0.25 has the complete feature set for an upcoming 1.0 release.
Please report even small bugs, typos, and annoyances.

  • The more prompt in the console will now adjust for telnet and serial
    terminals. Note that if you have both a serial and telnet terminal
    attached, both will reply to the query and you'll get undefined behavior.
  • All ?Verify error bugs should now be gone. Multiple things can cause
    this. It should happen only with true hardware errors now.
  • A couple dozen unreported bugs were fixed in a Claude.ai code review.
    All minor issues not worth listing.
  • FLASH command added to monitor. The Picocomputer 6502 can update itself
    from .uf2 files on a flash drive.
  • Microsoft BASIC was ported with new features added to enable 6502
    applications to enhance the stdin line editor. You can see this in action
    by typing a line number and pressing TAB. The same powerful editor the
    console uses can now be enhanced with tab completion, history, and whatever
    else you can think up.

Version 0.24

Choose a tag to compare

@rumbledethumps rumbledethumps released this 18 Apr 04:26
1f924cf
  • Telnet console. Reach the monitor and running 6502 from a remote
    telnet client. See help set port and help set key.

  • Hayes modem. Dial out, answer incoming calls, over raw TCP or
    telnet. Ten persistent profiles with phonebooks, up to four modems
    open at once. Open as AT: or AT0:AT9:; see the docs for the
    AT command set.

  • Dev tools updated. Update your project tools and delete .rp6502
    from your project root to pick up the new telnet settings.

Version 0.23

Choose a tag to compare

@rumbledethumps rumbledethumps released this 12 Apr 02:25
  • New sprite mode 5, see Docs
  • Rewrote the scanvideo library. Our custom fork allows for instant canvas switching without an HDMI/TMDS resync. The only time resync will happen is when you are switching in and out of HD widescreen mode (SET VGA 1 only). You will never see a resync if you have a 4:3 or 5:4 display.
  • ALT-F4 close-to-launcher shortcut added. Use CTRL-ALT-DEL for system maintenance. Use ALT-F4 for normal forced shutdown of a ROM. ALT-F4 won't exit a launcher, so you'll never drop to the monitor from a launcher.
  • Small performance improvement to read_xram().

Version 0.22

Choose a tag to compare

@rumbledethumps rumbledethumps released this 05 Apr 05:24
cf77224
  • Mass storage is 8X faster. Floppy drives ~15 KB/sec. Flash drives ~512 KB/sec.
  • NFC tool (nfc.rp6502) added to examples. Read/write tags from 6502.
  • Improved BLE compatibility.
  • Replaced bugged HID parser.

Version 0.21

Choose a tag to compare

@rumbledethumps rumbledethumps released this 29 Mar 19:50
0b70227

We're nearing 1.0 so please report bugs no matter how small. Read the updated docs for more info about these new features. Update your project's tools and compiler to use the new launching features. Compiler updates have been submitted, use our fork until it makes it upstream.

  • The amount of RP6502-OS calls that manipulate a single integer was increasing. These have been moved to ria_get_attr / ria_set_attr.
  • The 6502 clock can be changed while running with RIA_ATTR_PHI2_KHZ. It will return to the stored setting when the ROM stops.
  • ROMs can register to receive argc/argv into main(). ROMs can launch other ROMs with ria_execv() and ria_execl().
  • A ROM may register as a "launcher" with the bool RIA_ATTR_LAUNCHER. If it launches a ROM with ria_exec* the registered launcher will be re-loaded when the ROM exits.
  • NFC cards can be used to launch programs using a USB PN532 reader.
  • Special devices CON: and TTY: made available for native OS developers.
  • The console now has a BEL. Applications can disable with RIA_ATTR_BEL.