Email or username:

Password:

Forgot your password?
requiem 🏴

Thinking about the #pvm this morning and what other hardware I could port it to (so far it’s written in #golang out of convenience, so it shares the same targets as that language).

It’s all still wip of course and doesn’t do much yet but based on what’s done so far I think I could make it fit into an 8-bit AVR/Arduino, which is a fairly nice test for the low-end of the spectrum.

Ultimately I want to make possible to run on work on 8-bit micros like the Z80/6800/etc. but I don’t have a great toolchain for such hardware yet (all I have for my #rc2014 is the ROM assembler and no storage 🤣).

But cramming it into an arduino would be a good exercise and test to make sure I’m not leaning on Go features too much.

jasongullickson.com/personal-v

9 comments
Vertigo #$FF

@requiem I'm assuming you're rewriting the pvm interpreter in C?

Also, for the 8-bit targets, there are several options I think. For the 6502, there is cc65 or Calypsi, which @mos_8502 brought to my attention recently. For Z80, some traffic on the RC2014 mailing list indicates people have gotten the CP/M HiTech C compiler working. Its dialect predates C89 though, IIRC.

Studio 8502 :verified:

@vertigo @requiem z88dk has two more recent C compilers working for z80 CPUs.

requiem 🏴

@vertigo the current version is in #golang currently (only because that's the freshest language in my mind at the moment 😂 ).

Frustratingly the most time-consuming part has been simulating a graphics display (why is it so hard to just put a pixel on the screen in Linux?).

It will be more fun on hardware where it's easier to just write to the video buffer.

@mos_8502

requiem 🏴

@neauoire yeah for my pvm I’m skipping any text mode and going straight to bitmapped graphics, but I can never find a simple way to display that on Linux. It always involves OpenGL or some window manager stuff and I’m from the old days where if you wanted a pixel on the screen you just used a pointer to video ram 🤣

Devine Lu Linvega

@requiem I haven't found it to be too difficult. It just depends if you want it to be cross platform or not.

If it's your first time, I'd say go with a simple X11 pixel buffer and try to draw a rectangle in it.

You can find all the parts for this here: git.sr.ht/~rabbits/uxn11/tree/

requiem 🏴

@neauoire cooooool

Yes compatibility, dependencies, each time I’ve tried it I get hung-up on something, but I’ll take a look and give it another shot, thanks!

Devine Lu Linvega

@requiem your linux system shouuuld come with X11, otherwise try SDL2? It's not much more complicated, here's a super barest-of-bones examples for SDL2:

wiki.xxiivv.com/site/ansi_c.ht

Otherwise, this could be a good place to start too with sdl:

git.sr.ht/~rabbits/dotgrid

Go Up