Skip to content

Releases: randrew/uxn32

Uxn32 2.0

22 Jan 04:45
Compare
Choose a tag to compare

> Download Uxn32 2.0 + Essentials ROM pack

Uxn32 2.0 running Turye

Uxn32 2.0 is here. Exactly one year since 1.0, and right on schedule.

Buckle up for the list of changes and improvements since 1.8:

  • Added support for command line arguments.
    • The first argument will be the name of the ROM file for the emulator to open. Any further arguments will be passed to the Uxn program in the ROM file for it to process.
    • Example: Uxn32.exe my_cool_rom.rom some_arg_to_pass "And this string also gets passed to the ROM program"
    • If you reload the ROM file -- for example, by pressing F4 -- the command line arguments will be resent to the ROM program.
  • Added support for command line options.
    • Before the name of the ROM file, you can specify an option like /hidemenu (or, alternatively, -hidemenu). More on that later.
  • Made the virtual console much faster. Like 200x faster.
  • Added a momentary highlight blink effect in the status bar of Beetbug when some actions occur.
    • This makes it easier to tell when the machine state changes from Paused to Running and that sort of thing. It will also blink-highlight the fault message area if a fault occurs.
  • Disabled the ability to delete directories with the Uxn file device.
    • Uxn's file device isn't specified to be able to create directories, and there was also no mention of deleting them. Uxn32 used to let you delete directories, but since there's no way to create them, it seems like more of a liability and an unnecessary way to make a mistake. So, now you can't.
  • Disabled the file device's ability to read or write files with the extensions .dll, .exe, and .com.
    • These are executable file formats on Windows. It's not possible for running executables to edit themselves, but it's possible that if the user ran a ROM in Uxn32 with the sandbox set to a directory where other .exe files are, a malicious Uxn ROM program could have messed around with stuff.
    • Now, they can't.
    • No, you can't fool it by using upper case letters for the file extension.
  • Added setting of window title name via System port 0x4 and 0x5, following new changes to the Varvara document.
  • If a ROM program requests quit and Beetbug isn't open, the emulator window will close.
    • This makes it more seamless if you aren't debugging or developing.
    • Actually, the emulator will still stay open if the console is open. This way, if you run a program that prints some stuff to the console and then immediately quits, you can still read the stuff in the console without it closing in your face.
  • Added .rom.sym symbol loading and displaying in Beetbug.
    • If there's a file with the .rom.sym extension that has the same name as the ROM file that's loaded, Beetbug will load it and display the symbolic names of the addresses in the disassembly view.
    • The .rom.sym file will be reloaded whenever the main .rom file is reloaded: the "Open File" dialog, dragging & dropping a ROM file, and pressing F4 to reload the file.
  • Replaced the Uxn CPU emulator core with a shiny new one.
    • It's about 40% faster. And it implements the new call instructions from the newest version of the Uxn design document.
    • And it's fully backwards compatible.
  • To go with that, the mnemonics for the new Uxn CPU instructions have been added to Beetbug.
  • Added support for the system device fault handler from the new changes to the Varvara design document.
  • Added the ability to hide and show the menu bar.
    • Choose it from the menu with View -> Show Menu Bar, or toggle it with F10.
    • Or, launch Uxn32.exe with the menu bar already hidden by passing /hidemenu as an option from the command line.
  • Added filtering out of the .. entry when using the file device to list the files in a directory.
    • You couldn't do anything with it, anyway.
  • When trying to load a ROM file but it couldn't be found, Uxn32 used to show a black screen. Now, it will show a cute animation with a confused animal wondering why you are having trouble with your files.
Name: Uxn32.exe
Size: 81920 bytes (80 KiB)
SHA256: 3679ebdd5a75676fdd9600b02725de08701f29af356b971b75d132b4952c0e2c

1.9a7

15 Jan 03:18
Compare
Choose a tag to compare
1.9a7 Pre-release
Pre-release
Name: Uxn32.exe
Size: 81920 bytes (80 KiB)
SHA256: 9a96bf688f90c101aa6c6e35132348829775ad4aa36b19e3c39aef6f4fa69e88

1.9a6

13 Jan 20:08
Compare
Choose a tag to compare
1.9a6 Pre-release
Pre-release

New since 1.8:

  • Added support for command line arguments. (New in Preview 1)
  • Made the virtual console much faster. (New in Preview 2)
  • Added a highlighting effect in the status bar of Beetbug when some actions occur. (New in Preview 3)
  • Disabled the ability to delete directories. (New in Preview 3)
  • Added setting of window title name via System port 0x4 and 0x5. (New in Preview 3)
  • If a ROM program requests quit and Beetbug isn't open, the emulator window will close. (New in Preview 3)
  • Added .rom.sym symbol loading and displaying in Beetbug. (New in Preview 3)
  • Added re-sending of command line arguments when reloading a ROM file. (New in Preview 4)
  • New emulator core with new call instructions. (New in Preview 5)
  • Added support for the system device fault handler. (New in Preview 5)
  • Fixed bug added in Preview 3: Beetbug mnemonic entry index being wrong when pressing return to initiate edit (some Win32 flaw)
  • Added support for the new mnemonics to Beetbug. (New in Preview 6)
Name: Uxn32.exe
Size: 81920 bytes (80 KiB)
SHA256: 72f97c2f74f2d6460192c258683358b5c4683af0c0f5563b0d3a3430a6450e7d

Uxn32 1.9 Preview 5

13 Jan 04:18
Compare
Choose a tag to compare
Uxn32 1.9 Preview 5 Pre-release
Pre-release

New since 1.8:

  • Added support for command line arguments. (New in Preview 1)
  • Made the virtual console much faster. (New in Preview 2)
  • Added a highlighting effect in the status bar of Beetbug when some actions occur. (New in Preview 3)
  • Disabled the ability to delete directories. (New in Preview 3)
  • Added setting of window title name via System port 0x4 and 0x5. (New in Preview 3)
  • If a ROM program requests quit and Beetbug isn't open, the emulator window will close. (New in Preview 3)
  • Added .rom.sym symbol loading and displaying in Beetbug. (New in Preview 3)
  • Added re-sending of command line arguments when reloading a ROM file. (New in Preview 4)
  • New emulator core with new call instructions. (New in Preview 5)
  • Added support for the system device fault handler. (New in Preview 5)
Name: Uxn32.exe
Size: 81920 bytes (80 KiB)
SHA256: df34e1c2325f644bad2117920dc3de33adf29f5ff6074ddd525d4eae084abb27

Uxn32 1.9 Preview 4

12 Jan 06:01
Compare
Choose a tag to compare
Uxn32 1.9 Preview 4 Pre-release
Pre-release

New since 1.8:

  • Added support for command line arguments. (New in Preview 1)
  • Made the virtual console much faster. (New in Preview 2)
  • Added a highlighting effect in the status bar of Beetbug when some actions occur. (New in Preview 3)
  • Disabled the ability to delete directories. (New in Preview 3)
  • Added setting of window title name via System port 0x4 and 0x5. (New in Preview 3)
  • If a ROM program requests quit and Beetbug isn't open, the emulator window will close. (New in Preview 3)
  • Added .rom.sym symbol loading and displaying in Beetbug. (New in Preview 3)
  • Added re-sending of command line arguments when reloading a ROM file. (New in Preview 4)
Name: Uxn32.exe
Size: 73728 bytes (72 KiB)
SHA256: ac1fbaf7123e1708fe489d7ccb3753d99b80a5da8c27896bc8a70fd3503a4755

Uxn 1.9 Preview 3

12 Jan 02:42
Compare
Choose a tag to compare
Uxn 1.9 Preview 3 Pre-release
Pre-release

New since 1.8:

  • Added support for command line arguments. (New in Preview 1)
  • Made the virtual console much faster. (New in Preview 2)
  • Added a highlighting effect in the status bar of Beetbug when some actions occur. (New in Preview 3)
  • Disabled the ability to delete directories. (New in Preview 3)
  • Added setting of window title name via System port 0x4 and 0x5. (New in Preview 3)
  • If a ROM program requests quit and Beetbug isn't open, the emulator window will close. (New in Preview 3)
  • Added .rom.sym symbol loading and displaying in Beetbug. (New in Preview 3)
Name: Uxn32.exe
Size: 73728 bytes (72 KiB)
SHA256: 2f60d6591dbaa1559ee6bbacc6cfd2316ec7ba26f43e794b43b894cbe24481a9

Uxn (Core V2 test)

12 Jan 20:16
Compare
Choose a tag to compare
Uxn (Core V2 test) Pre-release
Pre-release
Name: Uxn32.exe
Size: 81920 bytes (80 KiB)
SHA256: f3254a5845fe1403a42d3f1c80b3ee9028fd14a87058c6b86fadab096803f543

Uxn 1.9 Preview 2

31 Dec 10:27
Compare
Choose a tag to compare
Uxn 1.9 Preview 2 Pre-release
Pre-release

New since 1.8:

  • Added support for command line arguments. (New in Preview 1)
  • Made the virtual console much faster. (New in Preview 2)
Name: Uxn32.exe
Size: 69632 bytes (68 KiB)
SHA256: e49ad4c667001f0e87387ddd263b76623c2ce518c4abbf0252a2d0fc1f0a14d0

Uxn32 1.9 Preview 1

30 Dec 17:48
Compare
Choose a tag to compare
Uxn32 1.9 Preview 1 Pre-release
Pre-release

Now with support for command line arguments!

Uxn32 1.8

27 Dec 04:04
Compare
Choose a tag to compare

> Download Uxn32 1.8 + Essentials ROM pack

It's time for a new release. A few small bug fixes, a few small behavior changes, and a fresh pack of ROMs.

  • Updated the bundled ROMs to freshly baked versions.
  • Uxn32 windows will now have a minimum size, so that you can't accidentally resize a window too small and cut off some of the virtual screen area.
  • The virtual screen in Uxn32 windows will now scale to 3x and beyond, if the window is large enough.
    • Toggling zoom with F1 will still only cycle between window sizes to match 1x and 2x, though.
  • Fixed the PC (program counter) being set to 0 in a duplicated window.
    • This was noticeable if you duplicated a window while the program was frozen mid-execution with Beetbug. And now it's fixed.
  • Fixed Beetbug swapping the mnemonics for OVR and DUP opcodes.
    • Oops. This mistake was added back when the opcode values were shuffled earlier in 2022.
  • Added special-casing to Beetbug so that instruction 0x00 displays as BRK, and LITk displays as the less-noisy (but equivalent) LIT.
    • You can also enter these mnemonics as input in the Beetbug memory editor.
  • Changed 16-bit PEEKs and POKEs operating at address 0xFFFF to not wrap the higher byte back down to address 0x0000.
    • Instead, there's now a secret padding byte after 0xFFFF that will absorb the extra byte. Shhh, don't tell anyone.
    • This was done to match the behavior of uxnsdl.
  • Added handling of the .System/state (0x0F port)
    • When a Uxn program writes a byte to it, Beetbug will open and say that the program requested exit.
    • Because it's not normal for Windows GUI programs that are emulating some other system to vanish without the user closing it, I chose this behavior instead.
    • This might be a bad idea, so it might be changed in the future.
Name: Uxn32.exe
Size: 69632 bytes (68 KiB)
SHA256: f117484637804030e5218be66a3d427c517ad0db110a574456b81fabf5cac409

(Edit - Uxn32.exe was accidentally named Uxn.exe. Fixed, and updated the .zip as well. Sorry about that!)

This is a small program with no dependencies built with an old compiler, and it's not downloaded by thousands of people, so don't be surprised if it is flagged by anti-virus software.