Alan Cox [Sat, 8 Dec 2018 01:19:02 +0000 (01:19 +0000)]
tc2068: tune for new parent first single model
Alan Cox [Sat, 8 Dec 2018 01:18:43 +0000 (01:18 +0000)]
multicomp09: use new makeproc
Alan Cox [Sat, 8 Dec 2018 01:18:09 +0000 (01:18 +0000)]
rc2014-tiny: use new single parent first model and add map_buffers
Alan Cox [Sat, 8 Dec 2018 01:17:39 +0000 (01:17 +0000)]
dragon-nx32: use makeproc
Alan Cox [Sat, 8 Dec 2018 01:17:28 +0000 (01:17 +0000)]
coco2: use makeproc
Alan Cox [Sat, 8 Dec 2018 01:17:07 +0000 (01:17 +0000)]
zxdiv: use slower switch rate due to expensive task switch
Alan Cox [Sat, 8 Dec 2018 01:16:51 +0000 (01:16 +0000)]
zeta-v2: switch to using makeproc
Alan Cox [Sat, 8 Dec 2018 01:16:30 +0000 (01:16 +0000)]
zeta: provide needed map_buffers
As we don't have a buffer bank it's just map_kernel
Alan Cox [Sat, 8 Dec 2018 01:16:14 +0000 (01:16 +0000)]
rc2014: use makeproc
Alan Cox [Sat, 8 Dec 2018 01:15:59 +0000 (01:15 +0000)]
msx2: use makeproc
Alan Cox [Sat, 8 Dec 2018 01:15:40 +0000 (01:15 +0000)]
msx1: switch to parent first and new style single process
Alan Cox [Sat, 8 Dec 2018 01:15:21 +0000 (01:15 +0000)]
coco2cart: use makeproc
Alan Cox [Sat, 8 Dec 2018 01:15:14 +0000 (01:15 +0000)]
coco2cart: fix tty build
Alan Cox [Sat, 8 Dec 2018 01:15:01 +0000 (01:15 +0000)]
amstradnc: use makeproc
Alan Cox [Sat, 8 Dec 2018 01:14:38 +0000 (01:14 +0000)]
65c816: update to use makeproc
Alan Cox [Sat, 8 Dec 2018 01:14:25 +0000 (01:14 +0000)]
z180: update to use makeproc
Alan Cox [Sat, 8 Dec 2018 00:09:28 +0000 (00:09 +0000)]
kernel: Major rework of the single process in memory model
- Support 'parent runs first' in fork. We will also need this for flat memory
models like 68000 to work nicely. In our case we write the child to swap but
for flat models we'd duplicate the update and write a short stub stack to
the child
- Introduce a makeproc to replace newproc. Different arguments so deliberately
break all the old code
- Fix some interestingly bad scheduling corner cases where we have a process
running for a long time with nothing else that then causes fork to thrash
- Make tmpfree always a function. Useful for debug and also avoids icky asm
dependencies
- Fix the Z80 single process model to use the new features
- Fix the Z80 banked process model to pass the new arguments
- Also adjust the switching rate on the Plus 3 as our test platform for the
single process in memory tunings
Takes our boot time down about 33% !
Alan Cox [Sat, 8 Dec 2018 00:07:26 +0000 (00:07 +0000)]
fsck: shortcut the usual case of fsck -a of a volume that is marked clean
Cheating slightly but saves time
Alan Cox [Mon, 3 Dec 2018 23:24:45 +0000 (23:24 +0000)]
mount: avoid null pointer deref
Alan Cox [Mon, 3 Dec 2018 15:00:15 +0000 (15:00 +0000)]
Makefile: update and add +3
Alan Cox [Mon, 3 Dec 2018 14:59:09 +0000 (14:59 +0000)]
graphics.h: Add Amstrad interleaved modes
Alan Cox [Mon, 3 Dec 2018 14:58:22 +0000 (14:58 +0000)]
reboot: print command name too
Alan Cox [Mon, 3 Dec 2018 14:57:19 +0000 (14:57 +0000)]
fdc765, zx+3: Now working on the +3
- Fix assorted bugs
- Add drive B support
- Hack for single sided media for now (need to address properly with disk
ioctls)
Alan Cox [Sun, 2 Dec 2018 23:47:26 +0000 (23:47 +0000)]
zx+3: update README
Alan Cox [Sun, 2 Dec 2018 23:47:13 +0000 (23:47 +0000)]
trs80m1: fix keyboard repeat
Alan Cox [Sun, 2 Dec 2018 23:46:40 +0000 (23:46 +0000)]
tc2068: update docs, Makefile
Alan Cox [Sun, 2 Dec 2018 23:46:00 +0000 (23:46 +0000)]
fdc765: fix reporting
Alan Cox [Sun, 2 Dec 2018 23:45:08 +0000 (23:45 +0000)]
swap: set inswap flag on swapping out
Alan Cox [Sun, 2 Dec 2018 23:16:05 +0000 (23:16 +0000)]
zxdiv: Spectrum 128K + DivIDE or DivMMC ESXDOS boot support
Build a suitable image to load via ESXDOS 0.8.6 on DivMMC or DivIDE (same
image for both)
Alan Cox [Sat, 1 Dec 2018 21:32:25 +0000 (21:32 +0000)]
zxkeyboard: set default repeat values
Alan Cox [Sat, 1 Dec 2018 15:12:31 +0000 (15:12 +0000)]
zx+3: more FDC work - not quite there yet but close
Alan Cox [Sat, 1 Dec 2018 11:49:25 +0000 (11:49 +0000)]
games: Fix startrek install
Alan Cox [Fri, 30 Nov 2018 22:38:59 +0000 (22:38 +0000)]
plus3,fdc765: don't do a motor wait if the motor is running
Alan Cox [Fri, 30 Nov 2018 22:38:47 +0000 (22:38 +0000)]
zxdiv: we now handle 2 SD cards so fix config
Alan Cox [Fri, 30 Nov 2018 22:38:30 +0000 (22:38 +0000)]
amstradnc: fix bug in devfd reporting
Alan Cox [Fri, 30 Nov 2018 22:33:28 +0000 (22:33 +0000)]
zx+3: Quic pass over the code to fix the obvious bugs
With that done we boot to a shell but the floppy driver doesn't appear to want
to be friends yet.
Alan Cox [Fri, 30 Nov 2018 22:31:22 +0000 (22:31 +0000)]
raw2dsk: make a raw image into a 40 track Amstrad / Spectrum image
Alan Cox [Fri, 30 Nov 2018 22:30:50 +0000 (22:30 +0000)]
zxvideo: for the unbanked version also support video map/unmap
Alan Cox [Fri, 30 Nov 2018 22:28:33 +0000 (22:28 +0000)]
zxmmc: much like the divmmc but different ports
Alan Cox [Fri, 30 Nov 2018 22:28:13 +0000 (22:28 +0000)]
divmmc: fix silly bug
Alan Cox [Fri, 30 Nov 2018 00:36:59 +0000 (00:36 +0000)]
zx+3: ZX spectrum plus 3 port based on the TC2068 and 128K work
Not yet working
Alan Cox [Fri, 30 Nov 2018 00:36:45 +0000 (00:36 +0000)]
plus3: remove old dead plus3 port work
Alan Cox [Fri, 30 Nov 2018 00:31:21 +0000 (00:31 +0000)]
devfdc765: extract core of NC200 driver for general use
Alan Cox [Fri, 30 Nov 2018 00:30:38 +0000 (00:30 +0000)]
tc2068: commit video support
Alan Cox [Fri, 30 Nov 2018 00:29:54 +0000 (00:29 +0000)]
plus3boot: simple tool to checksum a plus3 boot block and make it bootable
Alan Cox [Wed, 28 Nov 2018 22:35:22 +0000 (22:35 +0000)]
zxdiv: split video.s into video and video-banked
The existing one is banked, but we will want an unbanked variant of it for
some platforms.
Alan Cox [Wed, 28 Nov 2018 22:31:43 +0000 (22:31 +0000)]
Makefile: add more ports to the general list
Alan Cox [Wed, 28 Nov 2018 22:27:18 +0000 (22:27 +0000)]
zxkeyboard: Fix autorepeat broken by previous optimization
Alan Cox [Wed, 28 Nov 2018 22:25:50 +0000 (22:25 +0000)]
tc2068: turn on dynamic buffers
We might need to tweak this a bit - we don't really need anything like the
number we have room for.
Alan Cox [Wed, 28 Nov 2018 22:25:29 +0000 (22:25 +0000)]
adv/myst: fix build error
Alan Cox [Wed, 28 Nov 2018 14:13:28 +0000 (14:13 +0000)]
kernel: add an 4 pixel wide 8 pixel high font
Like 4x6 it's got the bytes doubled for easy rendering.
Alan Cox [Tue, 27 Nov 2018 20:53:17 +0000 (20:53 +0000)]
tc2068: use 64 column mode
Alan Cox [Tue, 27 Nov 2018 20:52:21 +0000 (20:52 +0000)]
kenrel: add a new graphics type
Alan Cox [Tue, 27 Nov 2018 20:51:27 +0000 (20:51 +0000)]
library: add a graphics format number
Alan Cox [Tue, 27 Nov 2018 20:51:12 +0000 (20:51 +0000)]
startrek: page correctly
Alan Cox [Tue, 27 Nov 2018 20:51:03 +0000 (20:51 +0000)]
ttt: fix missing fflush
Alan Cox [Tue, 27 Nov 2018 20:50:27 +0000 (20:50 +0000)]
adventures: add missing termios include to fix tty sizing bug
Alan Cox [Tue, 27 Nov 2018 18:57:33 +0000 (18:57 +0000)]
tc2068: README update
Alan Cox [Tue, 27 Nov 2018 12:52:38 +0000 (12:52 +0000)]
cpuinfo: add a TODO
Alan Cox [Tue, 27 Nov 2018 12:51:23 +0000 (12:51 +0000)]
tc2068: initial upload of the TC2068 support
This is just an initial cut - it's got lots that needs fixing (like Timex
video mode support) and it currently has some memory corruption bugs that need
nailing.
Alan Cox [Tue, 27 Nov 2018 12:49:36 +0000 (12:49 +0000)]
z80: build makedck
Alan Cox [Tue, 27 Nov 2018 12:49:04 +0000 (12:49 +0000)]
makedck: Make a Timex cartridge dock for the kernel image
Alan Cox [Tue, 27 Nov 2018 12:48:33 +0000 (12:48 +0000)]
zxdiv: move more stuff around a bit
Alan Cox [Tue, 27 Nov 2018 12:48:03 +0000 (12:48 +0000)]
zxdiv: devinput into dev/zx
Alan Cox [Mon, 26 Nov 2018 13:55:03 +0000 (13:55 +0000)]
zxdiv: split more stuff out into dev/zx/
Share all the video and tricks code we can
Alan Cox [Mon, 26 Nov 2018 13:45:56 +0000 (13:45 +0000)]
zxdiv: move devinput into dev/zx
Again these devices are shared across the clones
Alan Cox [Mon, 26 Nov 2018 13:39:53 +0000 (13:39 +0000)]
zxdiv: add forgotten devinput files, add discard hooks for setting input
Alan Cox [Mon, 26 Nov 2018 13:22:41 +0000 (13:22 +0000)]
zxdiv: split out keyboard driver into dev/zx/
The clones mostly use the same keyboard mechanics so make it available to
any other future ports
Alan Cox [Mon, 26 Nov 2018 12:33:19 +0000 (12:33 +0000)]
zxdiv: add underline to tty flags
Alan Cox [Mon, 26 Nov 2018 12:32:53 +0000 (12:32 +0000)]
zxvideo: clean up character printing a bit
Alan Cox [Mon, 26 Nov 2018 12:19:47 +0000 (12:19 +0000)]
zxdiv: align font so we can optimize the print routines
Alan Cox [Mon, 26 Nov 2018 12:13:22 +0000 (12:13 +0000)]
zxdiv,tty: optimize interrupt path
This saves us a lot of clocks of pointless processing if no keyboard line
changed state.
Alan Cox [Mon, 26 Nov 2018 12:13:13 +0000 (12:13 +0000)]
zxdiv: update README
Alan Cox [Mon, 26 Nov 2018 12:02:54 +0000 (12:02 +0000)]
zxdiv: move the MMC and IDE drivers into dev/zx
We can share a lot of ZX variant stuff so plan accordingly
Alan Cox [Mon, 26 Nov 2018 11:53:36 +0000 (11:53 +0000)]
divmmc: add swap device, second port support and stripy I/O
Alan Cox [Mon, 26 Nov 2018 11:47:05 +0000 (11:47 +0000)]
zxdiv: enable ability to set border colour in DivIDE
Alan Cox [Sun, 25 Nov 2018 22:07:37 +0000 (22:07 +0000)]
zxdiv: colour attribute support
How to handle the border - interesting question
Alan Cox [Sun, 25 Nov 2018 22:07:11 +0000 (22:07 +0000)]
divide: do pretty stripes for I/O activity
It is a spectrum after all
Alan Cox [Sun, 25 Nov 2018 21:12:56 +0000 (21:12 +0000)]
zxdiv: fix control (both shift) mode
Alan Cox [Sun, 25 Nov 2018 21:11:52 +0000 (21:11 +0000)]
zxvideo: remove broken and somewhat pointless beep routine
Alan Cox [Sun, 25 Nov 2018 20:37:20 +0000 (20:37 +0000)]
zxdiv: Clean up memory arrangement a bit
Alan Cox [Sun, 25 Nov 2018 20:07:19 +0000 (20:07 +0000)]
zxdiv: turn on input layer and joystick/mouse logic
Alan Cox [Sun, 25 Nov 2018 20:06:40 +0000 (20:06 +0000)]
input: add wheel mice
Yes there really are wheel capable adapters for 8bit micros
Alan Cox [Sun, 25 Nov 2018 18:42:33 +0000 (18:42 +0000)]
syscall_proc: remove surplus semi-colon
Alan Cox [Sun, 25 Nov 2018 18:41:33 +0000 (18:41 +0000)]
zxdiv: Add graphic ioctls and fix swapmap_add misuse
Alan Cox [Sun, 25 Nov 2018 18:41:03 +0000 (18:41 +0000)]
sc108: another swapmap_add abuser
Alan Cox [Sun, 25 Nov 2018 18:40:47 +0000 (18:40 +0000)]
swap: and some more mis-users
Alan Cox [Sun, 25 Nov 2018 18:40:10 +0000 (18:40 +0000)]
swap: Fix ports using swapmap_add where swapmap_init should be used
Fixes 'free' command reporting
Alan Cox [Sun, 25 Nov 2018 17:23:57 +0000 (17:23 +0000)]
zxdiv: move CODE3 down now the screen has moved
Alan Cox [Sun, 25 Nov 2018 17:23:38 +0000 (17:23 +0000)]
zxdiv: Update README
Alan Cox [Sun, 25 Nov 2018 17:17:44 +0000 (17:17 +0000)]
zxdiv: re-arrange video memory to 0x4000
We now have the video memory mappable.
Extract the bank bits from hardcoding so we can later share code better
between related ZX ports
Alan Cox [Sun, 25 Nov 2018 16:10:59 +0000 (16:10 +0000)]
zx128: Move buffers to 0x6000 and dynamically reclaim space
This gets us dynamic buffers as we want and also frees up the space between
0x4000 and 0x5FFF so that we can use the ZX Spectrum classic screen mapping
and leaves a bit of space in case we need to use any ROM hooks that want to
use system variables and BASIC hooks.
We are a bit tight between 0x2000 and 0x3FFF but have enough space for now.
Freeing up the space means we can next move the screen down. That makes the
screen potentially directly addressible from user space which is a huge win.
It also means we'll have a load of free space in CODE3 which is what we want
as well as probably room to migrate the font about a bit
Alan Cox [Sun, 25 Nov 2018 15:33:23 +0000 (15:33 +0000)]
zxdiv: update README
Alan Cox [Sun, 25 Nov 2018 15:33:06 +0000 (15:33 +0000)]
cpuinfo: add a test for broken emulation
Alan Cox [Sun, 25 Nov 2018 15:24:30 +0000 (15:24 +0000)]
zxdiv: workaround for what appears to be a bug in Fuse
The fuse emulator unpages the DivIDE ROM if you execute an instruction at
0x700. That appears to be wrong. The Interface 1 does this but there is no
evidence that any variant of the DivIDE does.
Anyway we can work around it easily enough - we just stuff data and constants
over that address range.
Alan Cox [Sun, 25 Nov 2018 15:23:48 +0000 (15:23 +0000)]
zxdiv: update the bank switching code to save the kernel bank
Otherwise we end up returning to the right address but with the wrong kernel
page mapped.
Alan Cox [Sun, 25 Nov 2018 02:25:17 +0000 (02:25 +0000)]
zxdiv: update README
Alan Cox [Sun, 25 Nov 2018 01:59:22 +0000 (01:59 +0000)]
zxdiv: turn on direct I/O
Alan Cox [Sun, 25 Nov 2018 01:59:10 +0000 (01:59 +0000)]
zxdiv: halt on idle
Alan Cox [Sun, 25 Nov 2018 01:46:37 +0000 (01:46 +0000)]
zxdiv: add a missing ifdef DEBUG