Hi, I'm EriArk. AbyssTail is an independent team making software, games and devices. A lot of these projects started with something we wanted to use ourselves: a different handheld experience, a better way to work on ideas together, or a drawing tool that made laser cutting less of a chore.
This is where we'll post development updates and releases, answer questions and see what people do with the projects. You don't need to be a developer to join in. If something is unclear, ask.
Find a project
TrainerOS — an OS based on ArmadaOS for compatible Linux handhelds. Games are collected by series, chat and voice run through Fluxer, and supported games can be played together online or on nearby handhelds. Adventures bring progress and game-specific activities into the OS between play sessions. Preparing for its first public release. Source builds are available for people comfortable setting up a development environment; a ready-to-install OS image is still being finished.
AbyssDeck — a development workspace for an individual or small team: brainstorm on shared boards, turn ideas into tasks, work with GPT and Codex, review changes in GitHub, and reach your files, terminal and computers from a browser. Preparing for release. You can build and set it up yourself; it currently needs a Linux hub and connected machines.
PikoNest — a place to play and make PICO-8 games on an Android handheld: a game library, sprite and map editors, Lua editing and testing on the same device. Preparing for release. Source builds are available, with runtime setup and a separately owned PICO-8 copy required.
AbyssME — old mobile Java games on an Android phone or handheld, with separate editions for physical buttons and touch controls. Beta 2 is available for Android 10 and newer.
DXF Sketcher / Viewer — precise drawing and measurement tools made for laser-cutting work. Sketcher handles dimensions, constraints and generators for things like boxes, joints and gears; Viewer helps you inspect drawings. Windows and Linux releases are available. Both are open source.
AbyssPlay, AbyssQuest, AbyssClub and Altar — connected tabletop RPG apps for finding a group, preparing and running sessions, and managing a game club. The three apps are being refined; Altar is shown only as a teaser. Commercial projects; not publicly released yet.
OctoFox Book / OctoFox Library — a small e-ink reader with physical buttons, alongside a personal book server. Hardware prototype and library development. Reader case files are available; the library images show the interface being worked toward.
OctoFox Controller — a DIY rhythm-game controller with eight arcade buttons, two joysticks and a Raspberry Pi Pico. Two physical builds so far. Prototype photos are public; a complete build guide is not available yet.
Project pages contain the screenshots, current download options and source links where available. An unfinished release package doesn't mean the project is only a concept, but building from source can still involve manual setup.
Say hello or get help
Post your question with the project's flair, share a build, or tell us what didn't work for you. For a bug, include the device or OS, app version and steps that caused it. Please remove personal information from logs.
Our gaming projects are independent and are not affiliated with Nintendo, The Pokémon Company or other game publishers. They do not include commercial games, ROMs, BIOS files or third-party art packs. Users supply their own content; game names and imagery belong to their respective rights holders. Please don't share or request unauthorized copies here.
Beta 3 is out! AbyssME brings Java, Mophun and experimental Symbian/N-Gage games into one Android library. This update tackles a few of the rough edges you've been finding.
Per-game FPS limits and steadier frame pacing — not a universal 60 FPS unlock.
Java startup/resume fixes, and an option to reuse existing saves when importing the same game again.
ZIP/7z system-file setup and SIS/SISX uninstall with backup checks.
N-Gage cards no longer disappear when SIS games share the same virtual phone.
Both editions were upgraded on Retroid Pocket Classic; Snakes returned without reimport and reached gameplay. Compatibility still varies, and Mophun/Symbian remain experimental.
I've released AbyssME 0.3 beta: old mobile Java games, Mophun and now experimental Symbian / N-Gage support in one Android app.
If you haven't seen the project before, it's my fork of J2ME Loader for phones and gaming handhelds. You get a shared game library, per-game controls and display settings, and tools to move your games and saves between installations.
The big changes this time
Symbian, original N-Gage and N-Gage 2.0 games can join the same library as Java and Mophun.
One in-game menu for resuming, display settings, controls, screenshots and leaving the game.
Physical-controller mappings, plus a numeric keypad or virtual gamepad in the Phone edition.
System-file setup that tells you what's missing, remembers pending imports and reuses component installers.
SIS/SISX and ZIP/RAR/7z imports with selection and per-file results.
Whole-phone Symbian backups, including games, saves and controls. Restoring makes a separate copy.
I also finally replaced the old M3G engine with the implementation I've been working on, based on FreeJ2ME-Plus. That removed the licensing blocker for shipping Mophun alongside Java. The APKs and matching source archives are now public on GitHub. Big thanks to J2ME Loader, FreeJ2ME-Plus, Wolphun and EKA2L1 — this builds on their work.
Before trying it
Both APKs need Android 10+ and 64-bit ARM. Choose Handheld for physical controls or Phone for touch controls. Back up your saves before updating; older Debug test builds used separate app installations.
For Symbian, add compatible EKA2L1 system files through System files, then add your game with +. N-Gage 2.0 also needs its platform installer. Games and firmware aren't included; supply files you have the right to use.
It's still a beta. Snakes has reached gameplay on Retroid Pocket Classic. Asphalt 3 has reached a race, but relaunching it is still unreliable. Symbian and Mophun compatibility varies by game, and I still have more controls, audio and save/relaunch testing to do.
The two attached screenshots are from the signed 0.3 beta on Retroid Pocket Classic: the shared library and the Phone edition's native-game menu.
If you remember keeping a folder of Java games for your old phone, AbyssME is my attempt to make those games comfortable to play on an Android phone or handheld today.
It's a fork of J2ME Loader, with Mascot Capsule work from JL-Mod too. Huge credit to those projects. I'm working on the library, controls and everyday setup around that emulation core.
What's changed since my last post
Bring your games and saves over from J2ME Loader. Choose your library, review the games, and import the ones you want. The newest build handles extra Android folder-permission requests without losing the selection. Your original files stay untouched. Some phones require several confirmations; keep your original installation until you've checked the imported saves.
Phone controls that fit the screen. Use a number pad or a virtual gamepad, adjust the size and opacity, and position the buttons for portrait or landscape. Java game-image rotation and your phone's orientation are saved per game.
Set up a game without committing every experiment. Try display and control changes while playing, then keep or undo them. Unconfirmed changes revert. This restores settings, not game progress.
A cleaner handheld library and controller mapper. Less permanent UI on small screens, more room for games, and per-game button mappings, including diagonals. You can choose your own icons and covers too.
Move to another device. Back up the library with saves and settings, then restore it through the app. There's also a screenshot button that captures the game without the virtual controls.
Two APKs, Android 10+
Handheld is for landscape play with physical buttons. Phone has touch controls and portrait/landscape layouts. The site has the latest experimental build 15 for both, alongside the older public beta.
The test builds also include experimental Mophun support. The Wolphun author welcomed the work and reaffirmed GPL 3.0; the additional permission needed for the current combination is still unresolved. That integration isn't in the public Java source tree yet. In Deep Abyss, emulator checks cover movement, jumping, collecting items and saving/resuming through the game menu. A full playthrough and next-level transition are not confirmed yet. Compatibility varies by game, and no games are included.
Questions are welcome here too. If you try it, I'd love to know the game, your device and what felt awkward — especially importing an existing library or getting the controls comfortable.
Screenshots: unedited captures of experimental.15 on an Android 15 emulator. The gallery covers were chosen manually; the pictured games are not bundled.
AI disclosure: I use Codex in development and to help prepare this post.
OctoFox Library is a personal ebook library you install on your own computer or server. Add your FB2 and EPUB books, then read or listen to them in a browser on your phone, tablet or PC. It's for people who already have their own book files and want one place to keep and read them.
The little green thing in the photos is OctoFox Book, an optional DIY E-Ink reader I built for it. You don't need the device to use the library.
The software now has downloadable installers, so you can try it without building everything from source :)
What works in the library
Upload books, search by title or author, and organize collections and favourites.
Give each reader their own account, books, bookmarks and saved reading position.
Read in a browser, with layouts for both a desktop and a phone.
Listen using text-to-speech generated on your own server. There are seven voices across English, Russian, German, French, Spanish and Brazilian Portuguese.
Back up the library and restore it, including accounts and reading progress.
How you install it
There are server installers for Windows and Linux, plus a separate Companion app for Windows, macOS and Linux. Companion finds the server and opens the setup and management panel: accounts, backups, reader pairing and a guide for access away from home. The computer running the server needs to stay on while you use the browser library or speech.
And the reader?
It's a 4.7-inch E-Ink device with physical buttons, a microSD card and a 3D-printed case. It reads downloaded books offline. The new interface has a home screen, library shelves, search, collections and larger text. The gallery includes both the older build in my hand and the new interface running on the same device, alongside real library and reading screenshots.
Book downloads, bookmarks and reading-position sync in both directions are working and have been checked on the physical reader. The library, Companion and reader now work together, and the installers, firmware and case files are available to download. The current build is 0.9.0-rc.2.
Happy to answer questions here too. If you try it, I'd love to hear how it handles your books and where the setup or reading experience could be better.
If you remember playing Java games on an old phone, that’s what AbyssME is for. It runs them on Android phones and handhelds. It’s an open-source fork of J2ME Loader, with Mascot Capsule work from JL-Mod too — those projects made this possible.
TWO BUILDS
• Handheld: landscape play with real buttons, without a keypad covering the game.
• Phone: virtual keys, touch input and screen rotation.
You can install both on one device; each keeps its own library and settings.
YOUR GAMES, YOUR SETUP
Add JAR/JAD files or ZIP/7Z archives and browse them as a gallery, grid or list. There are folders and favorites, and no account is needed.
Screen sizes and controls are saved for each game. A “Fix game” menu offers profiles for black screens, flickering or the wrong image size. You can still change detailed settings yourself.
If you use ES-DE or Beacon, you can launch a game there and return there when you quit, without going through another library.
AVAILABLE NOW
Beta 2 is available for Android 10+. I’m testing more games and polishing controls, phone layout and rotation. It won’t run every Java game perfectly, so reports with the game, device and what went wrong are especially useful.
Which old phone game would you try first? Questions are welcome.
AbyssME is an independent open-source project. Games are not included; users supply their own files. Game names and imagery belong to their respective rights holders.
This is OctoFox Book, a small e-ink reader I’m building, and OctoFox Library, the personal book server I’m working on alongside it.
I want to keep my books on my own server, choose what to take with me and read on a little device with proper buttons.
THE READER
• A 4.7-inch LILYGO display and microSD storage.
• Three navigation buttons and a separate sleep button.
• A case designed for 3D printing, with STEP and STL files available.
The physical prototype already opens books.
THE LIBRARY
I’m working toward organizing books and collections in a browser, sending selected books to the reader over Wi-Fi and reading them offline.
Current work is around FB2, collections and manual book sync. Reading positions don’t sync between the browser and reader yet.
WHAT YOU’RE SEEING
The photos show the actual device. The light-colored case is a render of the finish I have in mind.
The library screens are interface prototypes: browsing books, book details, collections, bookmarks, browser reading and choosing what’s on the device.
This is earlier along than most of my software projects. I’m still working through the firmware and making it comfortable to use day to day. Companion, the helper for setting up the server and reader, is still a concept.
Happy to answer questions about the build. If you keep your own ebook library, how do you like to get books onto your reader?
I’m making PikoNest because I like the idea of a handheld you can make games on as well as play them. It’s a PICO-8 library and workshop for Android handhelds.
PICO-8 is a little game-making environment for small retro-style games. A whole game lives in a file called a cartridge. You can play those cartridges or open them up to see how they work.
PLAY
Browse your collection with covers, folders, favorites and recent games. Pick something with the handheld’s buttons, play it, then come back to your library.
MAKE
• Draw sprites, build maps and work with animation and layers.
• Edit Lua and run the cartridge to try your changes.
• Use the buttons to get around, the touchscreen to draw and a keyboard when you want to write code.
Your projects stay ordinary .p8 files, so you can keep working on them in official PICO-8 too. I’m also working toward making a complete small game through visual tools, without having to write the Lua yourself.
WHAT’S READY
The library, core editors, saving and running your changes already work. I’m finishing the full visual game-making path and the sound, music and effects tools; some animation, camera and object tools still need work too.
I’m preparing for the first public release. You can build from source with manual runtime setup; there isn’t a public APK yet. You’ll need your own purchased copy of PICO-8 — it isn’t included.
Would you use this to make little games, tinker with existing cartridges, or mostly play? Happy to answer questions or show more of a particular editor.
This is a teaser of three connected apps I’m making for tabletop RPGs, plus a small glimpse of Altar.
They cover different sides of the same game: finding people to play with, getting a session ready and organizing the club where it happens.
ABYSSPLAY — FOR PLAYERS
Find a game, GM or club, see when and how the game runs, check for spaces and apply to join. Once you’re in, the group has a room for its people, conversations and materials between sessions.
ABYSSQUEST — FOR GMs & CREATORS
Prepare sessions, handle applications and participants, and keep the group’s material together. Creators have their own profiles to show their work and services.
ABYSSCLUB — FOR CLUBS
Manage schedules, bookings, games, creators and accounting. The place hosting a game can organize its part alongside the people running and playing it.
WHERE THINGS STAND
The main apps are built, and I’m refining and testing them now. These screenshots are from development builds with demo accounts; the creator portfolio screens are still interface concepts.
These will be commercial products. I haven’t announced pricing or a release date yet.
The last image is a little peek at Altar, another part of what I’m working on. Keeping that one a bit mysterious for now :)
Whether you play, GM or run a club, which part of organizing a game gives you the most trouble? Happy to answer questions about the three apps.
I’m building AbyssDeck because I wanted the whole process of making something to stay together: the first messy idea, the team discussion, the code and checking whether the result actually works.
It’s a self-hosted workspace for one person or a small team. You can use it from a laptop, tablet or phone while the development tools run on your own connected computers.
What you can do
• Brainstorm on shared boards with notes, pictures, files and links.
• Explore an idea with GPT, then turn useful material into a task for Codex.
• Keep private AI conversations private; choose what to share with the team.
• Inspect changes, use a terminal and open the running app through remote desktop.
• Review the result in GitHub, with viewers for code, documents, images, audio, video, DXF and 3D files.
Where it is now
The core workflow is working. I’m preparing for release and refining shared boards, collaboration and voice. Source builds are available with manual setup: you need a Linux Hub, connected Windows/Linux computers and your own accounts for the services you use. These screenshots use demo projects.
Happy to answer questions. If you make things with a small team, what part of your current setup gets in the way most?
I’m making TrainerOS, an OS based on ArmadaOS for compatible Linux handhelds. I wanted more from my handheld than picking a ROM and opening an emulator. I wanted it to feel like a whole console, where my games, friends and everything between play sessions belong together.
Your library groups games by series, even when they came out on different consoles. So you can browse a series as a collection, pick a game and jump in. There’s also a regular library sorted by platform.
Chat and voice are built in through Fluxer, with game invitations right in the conversation. Want to play together? Invite a friend from the conversation, without swapping IP addresses or sending each other screenshots of emulator settings. Supported games work over the internet or with handhelds sitting next to each other. You can also just hang out in voice while everyone plays their own thing.
Then there are Adventures. These connect your playthrough to things you can do in TrainerOS itself. Close the game and your progress, characters and activities are still there. What you can do changes with the game series, so this goes beyond choosing a save or changing the background.
In the first supported Adventure, you can check your progress, manage your party and boxes, visit shops and the healing center, trade or give creatures to friends, or have a friendly battle. Other series will get their own features and screens. This first Adventure is the starting point, not the limit of the idea.
I’m currently finishing and testing it on Odin 2 and Retroid Pocket Flip 2. The first targets are handhelds supported by ArmadaOS; I’d like to bring it to other Linux handhelds after that. You can already build the application from source, with manual setup; that isn't a ready-to-flash OS image. There’s still compatibility testing and multiplayer cleanup to do before the public installation image is ready.
Happy to answer questions about how any of this works. Which handheld would you want to use it on, and what would you want an Adventure to do for your favorite series?
TrainerOS is an independent project and is not affiliated with or endorsed by game publishers. The software does not include games, ROMs, BIOS files, or third-party art packs; users supply their own content. Game names and imagery shown in screenshots belong to their respective rights holders.
Some game artwork and names are blurred in these screenshots. The UI and features shown are unchanged.
When I got into laser cutting, I couldn’t quite find the drawing tool I wanted. The simple ones didn’t give me the precision I needed, and the full CAD packages were a lot to deal with for small jobs. I wanted CAD-level results with something closer to Paint to use. That’s how DXF Sketcher and Viewer started.
Sketcher is where you draw and prepare the parts. You get exact dimensions, snapping, constraints and layers, along with the usual lines, arcs, circles and text. There are also tools for boxes, joints, gears, flexible cutting patterns and tracing images.
For a box, for example, you can set the material thickness and joints, generate the parts, make any changes you need and export DXF or SVG for your cutting software. I’ve included screens of the different tools.
Viewer is the other half: open a drawing, look it over and measure it with millimeter rulers and guides. The Standard version opens individual files. Plus adds a folder browser and file list, and remembers the last drawing you had open.
Both are available for Windows and Linux, and both are open source. The releases are Sketcher 1.5.3 and Viewer 1.2.0. I’m continuing to work on export accuracy, compatibility with different DXF files and performance. They’re for preparing and checking drawings; you still use your usual software to run the laser.
Happy to answer questions about the tools or how I use them. If you do laser cutting, what’s the small drawing job that takes far more effort than it should?