More actions
No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
|description=Emulator of a retro-style virtual machine/fantasy computer Unx. | |description=Emulator of a retro-style virtual machine/fantasy computer Unx. | ||
|author=asiekierka | |author=asiekierka | ||
|lastupdated=2023/ | |lastupdated=2023/05/03 | ||
|type=Computer | |type=Computer | ||
|version=0. | |version=0.4.1a | ||
|license=MIT | |license=MIT | ||
|download=https://dlhb.gamebrew.org/dshomebrew/uxnds.7z | |download=https://dlhb.gamebrew.org/dshomebrew/uxnds.7z | ||
Line 46: | Line 46: | ||
==Changelog== | ==Changelog== | ||
'''v0.4.1a''' | |||
*Add support from loading "boot.rom" from a relative path. | |||
*Fix controller device implementation to more closely match uxn/Varvara. | |||
*[NDS] Minor audio fixes. | |||
'''v0.4.0''' | |||
*New features: | |||
**[3DS] Native 3DS port! Unlike the old uxn3ds, this one should have feature parity with the NDS port, in particular including a touch keyboard. As with uxn3ds, a 320x240 resolution screen is provided over 256x192, and the 3D slider can be used to observe the background and foreground layers separately. | |||
**[NDS] New keyboard implementation - providing all keys exposed by the official Varvara implementation, as well as improving modifier support. | |||
*Improvements/Bug fixes: | |||
**Fix "datetime" device implementation. | |||
**[NDS] Minor optimizations to screen "fill mode". | |||
**Moved the "reset" button to use a touch button instead. | |||
'''v0.3.7''' | '''v0.3.7''' | ||
* screen: initial implementation of "fill mode" | * screen: initial implementation of "fill mode" |
Revision as of 02:35, 3 Mayıs 2023
uxnds | |
---|---|
General | |
Author | asiekierka |
Type | Computer |
Version | 0.4.1a |
License | MIT License |
Last Updated | 2023/05/03 |
Links | |
Download | |
Website | |
Source | |
unxds is a port of the Unx virtual machine to the NDS. Uxn is a portable 8-bit virtual computer inspired by forth-machines, capable of running simple tools and games programmable in its own assembly language.
This emulator allows you run to your uxn projects on the DS, also ideal for developers who want to learn how to program little 8-bit things, such as text editors, music trackers, illustration programs and games.
Installation
There are three binaries provided:
- uxnds.nds - faster, but best used only with known-good software,
- uxnds_debug.nds - slower, but provides debugging information, profiling information and performs CPU stack bounds checks.
- uxnds_profile.nds - almost as fast as uxnds.nds - with debugging/profiling information, no CPU stack bounds checks.
By default, uxnds will run /uxn/boot.rom. It also supports reading files from within /uxn.
Note: When using a real DS/DSi/3DS console, it is recommended to launch this program via nds-hb-menu - though, as it currently doesn't use argc/argv, it doesn't really change much.
User guide
On start, a keyboard is presented on the bottom screen, and the uxn display is on the top screen.
Resources
- Uxn Roms (repo) - Uxn roms by Rekka Bellum and Devine Lu Linvega.
- Unx tutorial - Unx programming guide.
Controls
L/R - Swap top and bottom screens
Touchscreen - Mouse input
Media
Noodle - Magic Brush (Devine Lu Linvega)
Compatibility
Tested on iDeaS.
Changelog
v0.4.1a
- Add support from loading "boot.rom" from a relative path.
- Fix controller device implementation to more closely match uxn/Varvara.
- [NDS] Minor audio fixes.
v0.4.0
- New features:
- [3DS] Native 3DS port! Unlike the old uxn3ds, this one should have feature parity with the NDS port, in particular including a touch keyboard. As with uxn3ds, a 320x240 resolution screen is provided over 256x192, and the 3D slider can be used to observe the background and foreground layers separately.
- [NDS] New keyboard implementation - providing all keys exposed by the official Varvara implementation, as well as improving modifier support.
- Improvements/Bug fixes:
- Fix "datetime" device implementation.
- [NDS] Minor optimizations to screen "fill mode".
- Moved the "reset" button to use a touch button instead.
v0.3.7
- screen: initial implementation of "fill mode"
- toolchain: migrate to BlocksDS (~80KB smaller .nds files)
- packaging: update bundled ROMs
v0.3.6
- uxn VM updates:
- implemented JCI/JMI/JSI opcodes
- updated datetime, file and system devices to (mostly) match mainline
- now with MMU support!
- properly implemented "quit" option
- bundled the correct-for-this-release version of uxn "essentials"
- other minor improvements
v0.3.5
- uxn VM updates:
- implemented opcode table order changes
- implemented new two-device file I/O
- implemented new changes to screen I/O
- uxnds will now look for "launcher.rom" if "boot.rom" is not present
v0.3.4
- Add directory reading support. (contributed by DeltaF1)
- Add reset key combo (START+SELECT), with confirmation prompt. (with contributions from DeltaF1)
- Fix inaccurate mouse device implementation. (contributed by Hoolean)
- Minor fixes/toolchain updates.
v0.3.3
- Update to match latest mainline changes.
v0.3.2
- Update PPU logic to match latest spec changes.
v0.3.1
- Updates to the "console" device to bring it in line with latest uxnemu (somewhat).
- Fixed only the first APU channel working.
v0.3.0
- Updated CPU core to be compatible with the latest uxn specification changes. (SFT2)
- Minor performance improvements (3-5%), thanks alderwick.
- Reduced the .nds size by ~4-25KB, depending on build.