SteveF wrote:I just built the latest code from your repo and it works for me too. Thanks!
After fixing the SDL misunderstanding I discovered an error in attribute binding with my OpenGL code, specifically supplying the wrong string names to a function. I was just being very, very lucky on the Mac — it just so happens to assign slots in declaration order.
The monitor interlace effect is a bit disconcerting, but it's the realism that attracts me to this emulator and I suspect it will be less noticeable given time to get used to it. I really want to see the TV emulation TBH, that would probably give me the real "first proper computer" nostalgia hit I'm seeking.
Being pedantic, it's not so much an effect as it is my best attempt at deinterlacing, given that the Electron is now known to produce an interlaced image. I might be able to do better one day. I think all previous Electron emulators model it as a non-interlaced machine. My previous efforts certainly did.
More importantly: I've checked in a version that can comprehend command-line options, and picks more user-friendly default options. It's very uncommunicative about them at present though. But I needn't be. For the Electron:
- use --display=composite to connect your display to the Electron via composite video. Or --display=rgb for an RGB connection but that remains the default;
- use --quickload=yes or --quickload=no to enable or disable artificially-fast tape loading. But yes has now become the default.
Except... Mined Out doesn't load properly from tape.
It does load in Elkulator 1.0 (running under Wine), even if I select "normal" speed to make it a fair comparison. Clock Signal loads the title animation OK, but it seems to fail partway though loading the instructions (the little red window shows "Searching" instead of "Loading" and then it just starts showing the files on the tape without loading them).
Screenshot from 2017-11-17 22-15-49.png
I can obviously live without this, but I thought you might be interested. I've attached a copy of it for convenience if you want to take a look. As always, let me know if there's anything I can do to help...
I'm looking at it now. There are at least these three features away from calling this a first Linux release:
- being much more communicative on the command line (what arguments are available? If I haven't installed them, where should the ROMs be?);
- giving the window an appropriate name — the name of the file you're loading, not the placeholder software name; and
- joystick input generally. Which doesn't affect the Electron, but right now the Atari 2600 is entirely unusable.
... and it'd be nice to support drag and drop and being a paste target for text, both of which I think SDL allows easily.
So also checking out which error I've made in UEF handling isn't a big addition to the task list. You might or might not see better luck with fast loading — there's no special into-the-file inspection, it's still parsing the audio wave, but if it's something like an uninitialised variable then just using a slightly different code path might be enough.
EDIT: I'm also worried there might be a sound latency problem under SDL due to the mechanism I'm using. So I need to work on that.