mathstodon.xyz is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance for maths people. We have LaTeX rendering in the web interface!

Server stats:

3K
active users

#cpm80

0 posts0 participants0 posts today

After much testing and code comparison, the new Feb 2025 Release of #Vezza - my #z80 high speed #zmachine is ready! Took way longer than expected to synchronize across all of the code bases, particularly making sure that all optimizations made it across all platforms - TRS-80 model 1, TRS-80 model 3, TRS-80 model 4, the CP/M versions (~18 platforms), the embedded versions (Spectrum tape, TEC-1G), and slowly pushing into the Agon Light version (which has even more updates still in progress). Lots of individual tweaks, and some major rethinks and rewrites have come together to accelerate game play.

The hardest part of rewriting in this update involved rewriting the dictionary search code. I ended up going back to the original jzip interpreter, written in C for Unix waaay back when. Jzip provided much of the logic that went into ZXZVM, which provided the base for #M4ZVM #M3ZVM and #Vezza. Going back to Jzip made sense as Jzip has an even longer history; and is highly tested and stable and still maintained. This research gave me the confidence that the streamlining and changes I was making to such a fundamental part of the game would work, making all inputted dictionary searching more efficient.

To work around how CP/M stores executable files I spent a lot of time re-organising the memory map to make the executable smaller. This involved rearranging where the initialization code was stored inside the increasingly complex layout. Support across multiple versions means I needed to break up variable sized code and strings to sit inside variable sized gaps, while still compiling all the CP/M versions from the same interconnected set of source files. It needed quite a few manual checks to ensure that it all worked.

What this all means is that your favourite #infocom #punyinform and other text adventures will all play on your favourite z80 #retrocomputing platforms even faster than before!

More details in the devlog and downloads can be found at:
#TRS80 versions sijnstra.itch.io/m4zvm
#CPM #CPM80 versions sijnstra.itch.io/vezza

Update on #dxbbs which now allows the user to enter multiple lines of text until enter is pressed on an empty line.

The text is stored in a temporary ASCII file, line by line. This will later allow for additional line editing before saving - at least that is what I plan to do.

The final message is appened to the message base file and a new index record is written as can be seen in the screenshots.

#forth
#dxforth
#retrocoding
#rc2014
#cpm80
#bbs

Random memory: Some 45-50 years ago, my dad sold and serviced #CPM machines, specifically #GeminiMicrocomputers from the #UK. His customers seemed to be primarily people connected to printing and the press. One guy represented a printing house, which I believe also doubled as a #Buddhist #monastery, and visited my dad's shop quite frequently.

The thing that triggered this memory, was that apart from #Buddhism and printing, my dad's customer - friend if I'm not mistaken - also did a bit of recreational programming. He was in fact the author of a Danish #Pacman clone called "Gufferen" which translates to something along the lines of "the muncher". At the time, it was a breath taking action game in 80x25 character resolution, and I'm absolutely gutted that I will probably never see it again.

Good times.

Replied in thread

@amoroso That's worthy of celebration. Think the only one I have around at present is an Amstrad CPC-664 emulator. I should try CP/M-86 in qemu. I suppose Atari TOS is, in part, CP/M-68k with a filesystem from CDOS (DOSPLUS?), if that counts. #cpm80