You do not have permission to edit this page, for the following reason:
The action you have requested is limited to users in one of the groups: Users, Administrators.
Free text:
unxds is a port of the [https://wiki.xxiivv.com/site/uxn.html Unx virtual machine] to the NDS. Uxn is a portable 8-bit virtual computer inspired by [https://en.wikipedia.org/wiki/Forth_(programming_language) forth-machines], capable of running simple tools and games programmable in its own [https://wiki.xxiivv.com/site/uxntal.html 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 or /uxn/launcher.rom. It also supports reading files from within /uxn. '''Note:''' When using a real DS/DSi/[[uxnds 3DS|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=== * [https://itch.io/c/248074/uxn-roms Uxn Roms] ([https://git.sr.ht/~rabbits repo]) - Uxn roms by Rekka Bellum and Devine Lu Linvega. * [https://compudanzas.net/uxn_tutorial.html Unx tutorial] - Unx programming guide. ==Controls== L/R - Swap top and bottom screens Touchscreen - Mouse input ==Media== '''Noodle - Magic Brush''' ([https://www.youtube.com/watch?v=z8TieqFotXE Devine Lu Linvega]) <br> <youtube>z8TieqFotXE</youtube> ==Compatibility== Tested on iDeaS. ==Changelog== '''v0.5.2''' *[NDS] Updated to BlocksDS 1.3.1. '''v0.5.1''' *[3DS] Fix crash on start. '''v0.5.0''' * Ported the ARM assembly CPU core from [https://git.badd10de.dev/uxngba uxngba]. ** Speed benefits of +20-40% can be observed! ** Some CPU core bugs have also been fixed in the process, as tested with <code>opctest</code>. ** Relative to the core above, additional minor optimizations have been done for ARMv5/ARMv6 CPUs. * [NDS] The debug build of uxnds will now prompt before exiting. This allows more convenient execution of CLI applications. * [NDS] Updated to BlocksDS 1.3.0. * Note that the new CPU core is not guaranteed to be bug-free; feel free to revert to [https://github.com/asiekierka/uxnds/releases/tag/v0.4.10 0.4.10] if you run into any issues. '''v0.4.10''' * [NDS] Fix drawing sprites with negative coordinates. * [NDS] Update BlocksDS toolchain. * Add support for <code>system/expansion</code> commands 0x00 and 0x02. * Update <code>file</code> device implementation. * Update bundled programs. '''v0.4.9''' *Actually add support for placing the "uxn" folder alongside the .3dsx/.nds file. '''v0.4.8''' * NDS: Update to BlocksDS 0.11.3. * NDS: Add support for proper NitroFS filesystems; place "boot.rom" in the root of a NitroFS filesystem. * Add support for placing the "uxn" folder alongside the .3dsx/.nds file. '''v0.4.7''' * [NDS] Improvements to file I/O. * [NDS] Optimize 1-bit PPU drawing. * [NDS] Update to BlocksDS 0.11.0. * Implement division by zero and system device changes in the Uxn/Varvara specification. '''v0.4.6''' * [NDS] Improvements to file I/O and startup speed. * [NDS] Reduce binary size by 2%. * [NDS] Update to BlocksDS 0.9.1. * The 3DS port is unchanged from 0.4.5. '''v0.4.5''' * [NDS] Lower APU sample rate and minor APU optimizations to improve sound playback stability. * [NDS] Update to BlocksDS 0.8.1+git. * Implement audio detunes. * Implement full sprite flipping. '''v0.4.4''' * [NDS] Update to BlocksDS 0.8. * Implement breaking screen drawing behaviour change. '''v0.4.3''' * [3DS] Update to libctru 2.2.2. * [3DS] Optimize and fix bugs in the screen device implementation. * No changes to the NDS version. '''v0.4.2''' * [3DS] Major screen drawing optimizations. * [NDS] Fixed drawing vertically-flipped tiles on the bottom edge of the screen. * [NDS] Fixed palette changes not being queued until frame change. * Added key repeat emulation for physical button presses. * Vertical drawing synchronization is no longer applied if a frame took longer than 1 VBlank to process. '''v0.4.1a''' *Add support from loading <code>"boot.rom"</code> 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. [https://github.com/asiekierka/uxnds/releases Release notes.] ==External links== * GitHub - https://github.com/asiekierka/uxnds * Reddit - https://www.reddit.com/r/3dshacks/comments/nhj5xa/uxn_retrostyle_fantasy_computer_ported_to_ds
Advertising: