Page 1 of 4

EO v2.0 - planning stage

Posted: Wed Jul 28, 2021 8:47 pm
by MikeW
Well, I've been thinking about what i'm doing, updating an 18 year old program using a 20 year old development environment to run a 40 year old system.

And my conclusion?

Times have moved on in the past 18 years. Targeting purely Windows isn't what it used to be (He says, typing this on a Mac). So, I started having ideas for EO 2.0. Cross-platform compatibility is top of the list, but my personal preference is that apps should look native to the system they're running on.

So, I've been browsing cross platform GUI libraries and the only thing I've found that appears to match what i'm looking for is wxWidgets. Has anyone ever coded with it or have an opinion on the subject?

Mike

Re: EO v2.0 - planning stage

Posted: Wed Jul 28, 2021 8:50 pm
by Lardo Boffin
The only cross platform stuff I have done is using Microsoft .Net Core and a command line app. It great that it runs on Windows and Mac but does mean twice the testing and dealing with stuff like different file path dividers.

Re: EO v2.0 - planning stage

Posted: Wed Jul 28, 2021 10:48 pm
by MikeW
It great that it runs on Windows and Mac but does mean twice the testing and dealing with stuff like different file path dividers.
That kind of stuff doesn't really bother me, What I really want is to be able to design Dialog boxes and the like once and they appear as native on the target machine. GTK sounds OK, but whenever I think GTK, Gimp goes through my mind - All app I use from time to time and despise the UI... I've also looked at Qt - while apps look nice, they don't seem to fit into the appearance of the rest of the system.

Maybe I'm just too fussy.

Re: EO v2.0 - planning stage

Posted: Thu Jul 29, 2021 4:33 pm
by mrtinb
Or you could just make most of the code in a non-GUI library that is common, and platform specific front end.

Re: EO v2.0 - planning stage

Posted: Fri Aug 06, 2021 1:10 pm
by MikeW
Well after a week of playing around, I've come up with a build environment based on MSYS2/GCC/WxWidgets/Code Blocks. It seems strange using the latest version of all the software...

I have a skeleton emulator running which should be pretty portable, and it looks almost identical to the current EO - changes come later.

Re: EO v2.0 - planning stage

Posted: Fri Aug 06, 2021 2:25 pm
by blittled
Looking forward to EO v2.0. EO has always been my favorite emulator.

Re: EO v2.0 - planning stage

Posted: Mon Aug 09, 2021 9:42 pm
by nollkolltroll
Sounds very interesting. Can't wait to try it out, hopefully a native Linux binary instead of Wine :)

Re: EO v2.0 - planning stage

Posted: Fri Aug 13, 2021 9:59 pm
by MikeW
Well I have a Spectrum core working. Today I created a whole bunch of keyboard scanning code. I even went so far as to emulate key presses, timing them to sum frame accuracy - So instead of feeling the keyboard stat back to the emulated machine every frame, it would tell the emulator exactly at what point in the frame the key was pressed.

I was feeling really chufffed with myself, but then spent the whole day debugging it. I've targeted a spectrum 48 for the time being (It doesn't need accurate timing to produce a picture, or even port 0xfe emulation to get to the (c) screen)., but no matter what I did, it wouldn't detect any key presses. I looked at the keyboard code but couldn't see anything wrong. I looked at the windows event handler to make sure t was receiving key presses - again nothing wrong. I got so far as to start looking whether my z80 core was handling IN opcodes properly, or if I had a dodgy ROM image.. Then after hours of staring at a (c) prompt it came to be that i wasn't sending an interupt to Z80.

Silly me....

Re: EO v2.0 - planning stage

Posted: Mon Aug 16, 2021 4:12 pm
by TMD2003
I've been using EightyOne for a while now - I think I finally settled on it as my ZX81/80 emulator of choice round about version 1.16 - and something that's always bugged me about it is how sluggishly the menus appear when I'm running it from a hard drive that isn't designated as C: - and it matters little whether it's on my 14-year-old laptop or on my current PC which isn't the be-all-and-end-all but also is no slouch.

Because I'm running a temporary installation from the desktop - which is on a SSD designated as C: rather than a 4 TB hard drive designated as E: - it's working fine at the moment. However, I do intend to get that hard drive fixed and run all my emulators from it, and I will assume that EightyOne will go back to having a second or so's delay loading the icons on every menu page, followed by more delay every time I select something.

Why would that be the case, anyway? No other emulator, of any machine, does this.

Whatever happens I will carry on using EightyOne v1 for CSSCGC judging purposes this year (I'm using 1.23 at the moment) - and if v2 is available by, say, October, then I'll switch to it for writing any of my future entries.

Re: EO v2.0 - planning stage

Posted: Wed Aug 18, 2021 9:47 am
by mrtinb
Looking forward to a native Mac app. Please make sure it works with Apple Silicon M1. :-)