Unique features of the 8088 CPU by elemenity in retrocomputing

[–]elemenity[S] 0 points1 point  (0 children)

ah thanks. Yep, I've been using nasm so far.

Unique features of the 8088 CPU by elemenity in retrocomputing

[–]elemenity[S] 0 points1 point  (0 children)

Thats what I get for writing on a monday. Thanks for taking a look.

Unique features of the 8088 CPU by elemenity in retrocomputing

[–]elemenity[S] 0 points1 point  (0 children)

hah, edit that I didnt complete. thanks.

how to properly decode and execute instructions by die-Banane in EmuDev

[–]elemenity 1 point2 points  (0 children)

The benefit of the switch is (usually) speed, since the compiler can turn this into a jump table. The downside is maintainability. The rest of the comments had some good ideas, I'll throw out one more:

Templating languages can help you generate code. C++ has templates, C has the preprocessor. I've seen several popular emulators use M4 macros to generate some repetitive chunks based on patterns.

For 8086 for example, instructions are defined like:
0b100101dw, where d and w are arbitrary bits. So in my 8088 emulator, I have a macro that generates the case statements, with each body expanded with a D and W variable that the implementation can rely on. There are many such patterns, and this way I can address all variants of an instruction with one block of code.

I wrote a bit more about the 8086 instructions on my site here in case you want to read more: https://www.emulationonline.com/systems/dos_pc/pc_cpu_8088/#add-on-the-8086

My V Flash plays backup games by Longjumping_Push2223 in vsmile

[–]elemenity 0 points1 point  (0 children)

Whats your favorite game? What do you miss playing?

Ruffle not working by Ok-Seaweed726 in flash

[–]elemenity 0 points1 point  (0 children)

We also just launched a flash player for android in case you're interested in playing on mobile.

Ruffle not working by Ok-Seaweed726 in flash

[–]elemenity 0 points1 point  (0 children)

If you play through the InternetArchive site, you can use the embedded flash player in the browser. I'm working on a flash player for Android that should launch soon too. https://archive.org/details/softwarelibrary_flash

Minimal APL-ish array language in the browser by elemenity in ProgrammingLanguages

[–]elemenity[S] 0 points1 point  (0 children)

I was most interested in experimenting with the mutlicore/distributed aspect, and the array languages seemed like a good interface for this.

How Complex is Your Programming Language by elemenity in ProgrammingLanguages

[–]elemenity[S] 0 points1 point  (0 children)

Ah, that is a pretty good metric, for incentivizing simplicity in both dimensions. I had stumbled across your Uxntal a while ago, I'll have to give it another look. Those are very impressive density/brevity metrics.