beeanyew [Sat, 1 May 2021 17:43:26 +0000 (19:43 +0200)]
[MEGA-WIP] Raylib-based RTG output
NOTE: A working keyboard must be attached to the Raspberry Pi while testing this, otherwise it's impossible to actually quit the emulator.
raylib takes possession of the SSH keyboard for some reason, which makes it so you can't Ctrl+C out of the emulator over SSH, you must Ctrl+C or press Q on the Pi keyboard.
A mostly working RTG implementation using raylib instead of SDL2.0
Greatly decreases the rendering overhead for 8bpp modes and gets rid of the need for hardware ARGB888 texture format support.
RTG will be initialized using the resolution of the Raspberry Pi, and onbly the 320x200/320x240 modes are currently scaled to the full vertical area of the screen.
Andrew Hutchings [Tue, 27 Apr 2021 07:09:37 +0000 (08:09 +0100)]
A whole bunch of GUI changes
* Buttons and boxes height reduced
* Almost everything moved around a bit to make space
* Added shutdown button
* Added kickstart switch gadgets
* Switched from AutoRequest to rtEZRequest for most things (apart from
the error where we couldn't load reqtools)
* Text fixes
Andrew Hutchings [Sun, 25 Apr 2021 07:05:31 +0000 (08:05 +0100)]
Initial alpha of the PiStorm GUI tool
It can only change the config file and enable/disable RTG right now, but
it a framework for adding more things in the future.
Some of the CLI tool code was slightly modified for VBCC compatibility,
most importantly, some macros that didn't work were expanded and some
includes were changed.
Andrew Hutchings [Sat, 24 Apr 2021 14:48:20 +0000 (15:48 +0100)]
Add ROM identification code
Ported over my ROM identification code, mostly to identify when you are
using a ROM that won't boot and log it. But also cool to log which ROM
is booting if we need to help a user.
Managed to forget to stage one line of code for the last commit...
Also fixes the Z3 Autoconf memory range staying active after being configured, prevents some rare memory wraparounds.
Mapped memory ranges should always be given preference, since they can't actually cause a bus error or affect any read/write operations over the 68k bus.
just nine [Wed, 14 Apr 2021 21:33:13 +0000 (22:33 +0100)]
support emulation quit (see long msg for more)
please note that if loopcycles = 0 then the emulation thread may never
notice the quit request. needs replacing with some form of thread signal
eventually, but that will require a signal handler.
just nine [Wed, 14 Apr 2021 21:29:41 +0000 (22:29 +0100)]
support stealing the keyboard from the input layer
this change uses an ioctl to disconnect the keyboard event device from
the input layer, meaning input no longer affects the pi and will
entirely be consumed by the pistorm emulator process.
beeanyew [Mon, 22 Mar 2021 13:58:44 +0000 (14:58 +0100)]
Minor updates
Add openocd CPLD flashing script for the old version (10.0-5) of openocd, rework interrupt handling a bit so that more software works, update buptest to work with the proto3 bitstream.
beeanyew [Wed, 10 Feb 2021 07:33:52 +0000 (08:33 +0100)]
[WIP] Pile of stuff
PiSCSI Boot ROM progress, various fixes and enhancements, TD64 support
Added updated open source RTL and bit stream by Niklas Ekström (https://github.com/niklasekstrom)
beeanyew [Fri, 15 Jan 2021 03:30:52 +0000 (04:30 +0100)]
IDE updates, fix mouse hook hotkey
Added support for headerless (RDSK) HDD images, and fixed the IDE controller emulation to not keep separate LBA1-4 values for each hard drive.
This may look strange at first glance, but the Amiga would regularly write the CHS values for drive access ahead of actually switching to the drive it wanted, so I assume this is how it's actually supposed to work.
The second drive still doesn't mount automatically on boot, but I believe that some currently unsupported register write or read is causing this.