EO v2.0 - planning stage

Emulator and emulator development specific topics
MikeW
Posts: 68
Joined: Tue May 29, 2012 10:56 pm

EO v2.0 - planning stage

Post 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
REX LIES IN WAIT
Lardo Boffin
Posts: 2160
Joined: Sat Nov 26, 2016 2:42 am

Re: EO v2.0 - planning stage

Post 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.
ZX80
ZX81 iss 1 (bugged ROM, kludge fix, normal, rebuilt)
TS 1000 iss 3, ZXPand AY and +, ZX8-CCB, ZX-KDLX & ChromaSCART
Tatung 81 + Wespi
TS 1500 & 2000
Spectrum 16k (iss 1 s/n 862)
Spectrum 48ks plus a DIVMMC future and SPECTRA
MikeW
Posts: 68
Joined: Tue May 29, 2012 10:56 pm

Re: EO v2.0 - planning stage

Post 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.
REX LIES IN WAIT
User avatar
mrtinb
Posts: 1906
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: EO v2.0 - planning stage

Post by mrtinb »

Or you could just make most of the code in a non-GUI library that is common, and platform specific front end.
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
MikeW
Posts: 68
Joined: Tue May 29, 2012 10:56 pm

Re: EO v2.0 - planning stage

Post 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.
REX LIES IN WAIT
User avatar
blittled
Posts: 229
Joined: Fri Dec 19, 2008 3:04 am
Location: Northwestern Pennsylvania, USA

Re: EO v2.0 - planning stage

Post by blittled »

Looking forward to EO v2.0. EO has always been my favorite emulator.
2X Timex Sinclair 1000, ZX81, ZX80Core, 5X 16K Ram Pack, ZXBlast, ZX P file to Ear Input Signal Converter, Elf II
nollkolltroll
Posts: 325
Joined: Sat Sep 27, 2014 8:02 pm
Location: Stockholm, Sweden

Re: EO v2.0 - planning stage

Post by nollkolltroll »

Sounds very interesting. Can't wait to try it out, hopefully a native Linux binary instead of Wine :)
/Adam
MikeW
Posts: 68
Joined: Tue May 29, 2012 10:56 pm

Re: EO v2.0 - planning stage

Post 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....
REX LIES IN WAIT
User avatar
TMD2003
Posts: 149
Joined: Sun Oct 11, 2020 5:39 pm

Re: EO v2.0 - planning stage

Post 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.
Spectribution: Dr. Jim's Sinclair computing pages.
Features my own programs, modified type-ins, RZXs, character sets & UDGs, and QL type-ins... so far!
User avatar
mrtinb
Posts: 1906
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: EO v2.0 - planning stage

Post by mrtinb »

Looking forward to a native Mac app. Please make sure it works with Apple Silicon M1. :-)
Martin
https://zx.rtin.be
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube
Post Reply