#zen80 — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #zen80, aggregated by home.social.
-
With Zen80 guaranteed to run on Linux, the next logical step was to try out ZenZX and play some ZX Spectrum stuff. After a little fiddling with GL and Alsa libraries, it compiled right away and ran. Quite smoothly to my surprise!
-
Debugging my macros. The good thing is that after you have some well designed macros, most of the simple text user interface things behave almost like BASIC, or terminal printing in Pascal.
Also a good chance to dog food myself using the barely improved editor, and trying to make the zenas assembler work and assemble my non-trivial Z80-based text editor. Dog food is good food!
The only problem I found today was a regression in the vim-like command to jump to a line number. One other thing I noticed is that horizontal scroll doesn't work reliably when you have very long lines that extend beyond the right margin.That being said, It's a little miracle I have never seen it crash, not a single time, during actual development work.
The best of news is that there are not many news on that front!#bim #tbim #zenas #z80 #zen80 #zenzx #retrocomputing #ZXSpectrum #speccy #Spectrum
-
tbim, bim, zenas, zen80
Yes, of course all of these things can be done mixing and matching disparate tools in some other ways, but as a matter of access and code legibility you will be able to directly examine every single bit of the toolset and toolchain.
Every single bit traceable, nowhere left for bits to hide. That's something you can't do unless you're a highly sophisticated specialist today.
#bim #tbim #zenas #zen80 #zenzx #retrocomputing #golang #foss
-
zenas, zen80, bim and assorted tools
Things starting to fall into place like Tetris bricks!
I still can't glue the ZenZX emulator to the text mode editor, but when I decouple the text mode renderer from the editor logic (sometime next year), I should be able to render the editor and other tools using Deluxe UI in a GL-accelerated window, and I should be able to embed ZenZX in a bim pane.
But essentially everything you see in this screenshot, from tiling manager, to editor, to assembler, to emulator, is one single coherent and consistent codebase (with the sole exception of the Spectrum ROM!)
Lots of work ahead in 2026!
Longer term project beyond 2026 will be to get the language ual off the ground and port all these things to ual.
#bim #tbim #zenzx #zen80 #zenas #foss #golang #retrocomputing #z80
-
bim and tbim
- bim is the barely improved editor
- tbim is a tiling manager
The tile manager tbim almost works, and bim works save for a few missing functions. The basic Go interfaces for plugging in new viewers are in place, in code. That means that creating new viewers that run inside a pane is substantially easier, and it requires none of the unix tooling glue you typically have to patch together when using tmux with an assortment of other tools.
The only pane viewers available right now are Text View (with scrollbars! by popular demand!) and Terminal View.
What comes next is bim integration so that any pane can become a bim editor without launching external processes. This greatly helps resource management in constrained environments (like rpi, routers, phones, etc)For the time being, the screenshot shows the tbim tile manager displaying Text View panes, and one pane running a Terminal view with tileless bim running in a separate process on top of it. When tbim and bim are fully integrated, tbim and bim will become one single application and it won't need to launch an external process with a pty to run an external bim, it will all be done internally.
And the retrocomputing bit? Ah, yes, it can run a zen80-based Z80 for scripting 🙂
Any questions?
-
bim editor
I've just barely improved the barely improved editor to support Z80 assembler syntax. The automatic detector of assembly dialect doesn't always work right though, that's a task pending in the backlog.
Up next: running zen80 inside the editor.
-
So Wonderful Dizzy (a game for the ZX Spectrum 128k models) is running quite well in 128k mode on ZenZX. One caveat is that thae fast tape loading feature didn't work this time, more debugging is needed. I'm also going to have to compare the quality of music playback taking other emulators as parameters of reference. All in all, a more successful test than I anticipated.
#ZXSpectrum #Speccy #Spectrum #spectrum128 #Spectrum128k #ZXSpectrum128 #ZXSpectrum128k
#zenzx #emulator #golang #foss #zen80 #z80 #retrocomputing #retrogaming -
The emulator ZenZX has been up past one hour running a modern Speccy game continuously without memory leaks or crashes.
Go, BubbleBack, go!
#ZenZX #zen80 #z80 #Spectrum #Speccy #ZXSpectrum #emulator #retrogaming #retrocomputing
-
I may have taken certain artistic liberties.
-
Maybe the visuals won't improve .tap support by much. But... why not?
-
zenas Z80 assembler
Adding translation of UTF-8 string literals for international character sets of well known speccies, cpc, and msx.
Should probably add blocky characters and other non-alphanumeric glyphs. That will come later.
#z80 #retrocomputing #ZXSpectrum #tk90x #inves #speccy #spectrum #zenas #zen80 #didaktik #tk95 #cpc #msx
-
So... I've had this under wraps for months, whilst I've been adding features and ironing out bugs...
I've already been showing:
zen80: zexall-tested z80 emulator
https://github.com/ha1tch/zen80zenZX: ZX Spectrum emulator (WIP)
https://oldbytes.space/@haitchfive/115159221509967137
The next logical piece is:
- zenas: Z80 assembler (WIP)
zenas is a new Z80 assembler (work in progress) following a simpler design than my earlier attempt. This is designed to work together with zen80 and zenZX, to hot test and benchmark the code the assembler emits
I'm already seeing some promising results. I think it's a cool feature if your assembler can actually run the code it emits (using zen80) with the potential to verify your object code actually works, and every single cycle is accounted for. I can imagine in the future we can expect to have things like register colouring and other neat features.
If we consider the zenXX tools together with the tape handling tools, and with the floppy image tools, we're approaching the status of lovely toolset that could one day be quite useful.
#zen80 #zenzx #zenas #asm #z80 #golang #foss #assembler #retrocomputing
-
ZenZX tape loading
PageUp: Zoom In
(Increments zoom factor)PageDown: Zoom Out
(decrements zoom factor)Alt+B / Option+B: toggles visibility of the Spectrum "border"
(2/3)
#ZXSpectrum #Spectrum #Speccy #retrocomputing
#retrogaming #zen80 #zenzx
#emulator #golang #foss -
ZenZX
ZenZX is a ZX Spectrum Emulator based on the zen80 Z80 emulator, writen in Go
I'm Improving tape loading support, and demonstrating how screen control keyboard shortcuts still work during tape load. Probably not something that will blow your mind, but I kind of like it. (1/3)
#ZXSpectrum #Spectrum #Speccy #retrocomputing #retrogaming #zen80 #zenzx #emulator #golang #foss
-
ZenZX beeper audio
Not much to show, and it's not high quality audio but it's pitch perfect and speed perfect, which is hard to get right the first time!
It may look simple but the differences between the original physical beeper (controlled by a Z80!) and a modern audio synthesis system are so vast it's hard to believe this is even possible.
#ZenZX #Zen80 #z80 #Spectrum #Speccy #ZXSpectrum #emulation #golang #foss #retrocomputing #retrogaming
-
We've got stripes! All of them now!
I actually replicate the pattern until the border is filled vertically.
Tape loading still doesn't work well for 128k games, which in turn prevents me from hearing much music, which prevents me from improving AY-3-8912 audio playback. I will probably resort to transcribing some music to PLAY commands myself, and trying the old synthesis commands. I can work the fine detail of tape loading at a later time.#ZXSpectrum #Spectrum #Speccy #zenzx #zen80 #emulator #golang #foss #retrocomputing #retrogaming
-
Please suggest 128k games which aren't too strongly protected (so I can load from .tap) and have good music. If you have a link to download, all the better.
This will help me appreciate better what needs to be improved with AY chip audio generation.Thank you!
#retrocomputing #ZXSpectrum #Spectrum #speccy #zenzx #zen80 #emulator #golang #foss
-
We've got LOAD stripes! Not all of them stripes but at least we've got some! hahaha
#zenzx #zen80 #z80 #ZXSpectrum #Speccy #Spectrum #emulator #retrocomputing #retrogaming #golang #foss
-
Today is one of the less successful days of persistent debugging and little fruit.
#retrocomputing #zenzx #zen80 #z80 #Spectrum #ZXSpectrum #Speccy #golang #foss #emulator
-
Ahhhhh glorious!
God save Jon Ritman! (and Bernie Drummond, wherever he is)
#zenzx #zen80 #ZXSpectrum #Speccy #Spectrum #retrogaming #emulator #golang #foss #retrocomputing
-
This reminds me I've made no effort whatsoever to plug the beeper or the Yamaha chip.
#zenzx #zen80 #ZXSpectrum #Speccy #Spectrum #retrogaming
#emulator #golang #foss #retrocomputing -
Nanananananana Batman
The .tap I have for this one didn't work in fast mode, but it did work in "accurate" mode. I'm going to try to devise a middle ground mode that might work relatively fast and with reasonable accuracy. This is ongoing work. Anyway, not a big deal because you can always load the .tap file slowly and then save a snapshot. Snapshots always work.
#zenzx #zen80 #ZXSpectrum #Speccy #Spectrum #retrogaming #emulator #golang #foss #retrocomputing
-
$ ./zenzx -tape jetsetwilly.tap
#zenzx #zen80 #ZXSpectrum #Speccy #Spectrum #retrogaming #emulator #golang #foss
-
Bruce Lee RX running on a ZenZX emulator prototype, loaded from .sna file. Flawlessly.
#ZXSpectrum #Spectrum #speccy #retrogaming #retrocomputing #foss #golang #z80 #zenzx #zen80
-
Integer out of Spain.
#ZXSpectrum #Spectrum #Speccy #zen80 #zenzx #emulator #foss #golang #retrocomputing
-
ZX Spectrum: emulated
To be honest, I thought it was going to be a lot harder, and it would take a lot of debugging to get this done.
But ultimately, I only had to grab parts of the older Spectrum emulator I had started last year, remove the old spaghetti Z80 that didn't work well, and plug the new well-tested zen80.
I would call this a very successful weekend 🙂
#ZXSpectrum #Spectrum #Speccy #Z80 #emulator #golang #foss #zen80 #zenzx #retrogaming #retrocomputing