Alan Cox [Tue, 5 Mar 2019 00:50:45 +0000 (00:50 +0000)]
pentagon: fix the bank numbers
We want 0-7 - the upper bit is accounted for by the 0x40
Alan Cox [Tue, 5 Mar 2019 00:50:27 +0000 (00:50 +0000)]
pentagon: remove pointless define
Alan Cox [Tue, 5 Mar 2019 00:49:56 +0000 (00:49 +0000)]
pentagon: set the bank size correctly
Alan Cox [Tue, 5 Mar 2019 00:49:36 +0000 (00:49 +0000)]
nemoide: optimize a silly code path
Alan Cox [Mon, 4 Mar 2019 01:28:21 +0000 (01:28 +0000)]
pentagon: IDE interface update
This gets us to the point that we parse the partition table and then fail to
load init.
Alan Cox [Sun, 3 Mar 2019 17:41:22 +0000 (17:41 +0000)]
pentagon: Fix banking changes
With these fixed we get to a bootdev: prompt and can look at disk drivers
Alan Cox [Sun, 3 Mar 2019 16:57:22 +0000 (16:57 +0000)]
z80: build trdify
Alan Cox [Sun, 3 Mar 2019 16:56:24 +0000 (16:56 +0000)]
pentagon: sort the loader out (sort of anyway)
With this done we load an image and seem to blow up on the first interrupt or
thereabouts whilst probing for disks.
Alan Cox [Sun, 3 Mar 2019 16:55:30 +0000 (16:55 +0000)]
Makefile: clean up bank files
Alan Cox [Sat, 2 Mar 2019 21:00:36 +0000 (21:00 +0000)]
CREDITS: this was fixed remove the FIXME
Alan Cox [Sat, 2 Mar 2019 20:26:43 +0000 (20:26 +0000)]
Makefile: update
Alan Cox [Sat, 2 Mar 2019 20:10:07 +0000 (20:10 +0000)]
sc108/sc114: merge the ports and use the ROM hooks
We can't use them as we'd like but we can use them with a bit of extra hackery.
Drop using the ROM for serial I/O - it's not really worth it or a good plan.
Alan Cox [Fri, 1 Mar 2019 22:21:52 +0000 (22:21 +0000)]
syscall_other: final (I hope) batch of uint8_t strict cleanup
Alan Cox [Fri, 1 Mar 2019 22:20:24 +0000 (22:20 +0000)]
syscalls: fix remaining char v uint8_t warnings
The kernel now handles everything it can unsigned so that we don't give the
compilers needless work to do on the processors like the 8080 and 6502 that
suck at sign extending.
Alan Cox [Fri, 1 Mar 2019 22:19:52 +0000 (22:19 +0000)]
v85: add 6850 ACIA speed/setting controls
They don't do anything but they are better example for real devices
Alan Cox [Fri, 1 Mar 2019 22:18:54 +0000 (22:18 +0000)]
cp: replace cp (and it can be used for mv ln) with a nice version
It's still under 20K, it does multiple jobs and it adds all the SUS expected
behaviours.
Alan Cox [Fri, 1 Mar 2019 22:12:43 +0000 (22:12 +0000)]
zxdiv48: minor Makefile tweakery
Still not had time to actually start getting this running
Alan Cox [Fri, 1 Mar 2019 22:12:17 +0000 (22:12 +0000)]
zxdiv: turn on ZX Uno features if present
Alan Cox [Fri, 1 Mar 2019 22:11:33 +0000 (22:11 +0000)]
zxuno: add some helpers for putting the ZX Uno into 14Mhz mode etc
From a Fuzix perspective we want to turn on all the features regardless
Alan Cox [Fri, 1 Mar 2019 19:25:48 +0000 (19:25 +0000)]
syscall_net: do the change so we keep the socket number in a sane place
Alan Cox [Fri, 1 Mar 2019 19:25:25 +0000 (19:25 +0000)]
opendir: correct const usage to match standard
Alan Cox [Fri, 1 Mar 2019 19:24:54 +0000 (19:24 +0000)]
getopt: correct const v non consts in prototype to match standard
Alan Cox [Fri, 1 Mar 2019 13:56:59 +0000 (13:56 +0000)]
visualize: really _CODE is bank 0 so report it as 0 not 1 in bank 0
Alan Cox [Fri, 1 Mar 2019 13:55:29 +0000 (13:55 +0000)]
visualize: add in more of the bank types
This allows it to work on stuff like the trs80m1
Alan Cox [Thu, 28 Feb 2019 23:33:55 +0000 (23:33 +0000)]
tools: add a maketap tool for spectrum .tap files
We don't yet use it in anything but it's handy to have.
Alan Cox [Thu, 28 Feb 2019 22:28:50 +0000 (22:28 +0000)]
linc80: update notes
Alan Cox [Thu, 28 Feb 2019 22:15:16 +0000 (22:15 +0000)]
flat: flat models have their own valaddr and it needs the new prototype
Alan Cox [Thu, 28 Feb 2019 21:40:02 +0000 (21:40 +0000)]
mntent: fix hasmntopt return for not found
Alan Cox [Thu, 28 Feb 2019 21:37:28 +0000 (21:37 +0000)]
cpuinfo: note that there's an even buggier R flags emulation to be wary of
Alan Cox [Thu, 28 Feb 2019 21:37:08 +0000 (21:37 +0000)]
zx+3: oops turn the floppy off when idle
Alan Cox [Thu, 28 Feb 2019 21:36:24 +0000 (21:36 +0000)]
kernel: kiss char * goodbye as much as possible, also fix pipe open
Also fix the pipe open semantics for named pipes (I hope).
Alan Cox [Thu, 28 Feb 2019 21:33:28 +0000 (21:33 +0000)]
v85: add floppy, ramdisc and rtc
Based on the emulations added to the emulator. This hopefully gives people some
more examples to work with when writing stuff.
Alan Cox [Thu, 28 Feb 2019 21:32:15 +0000 (21:32 +0000)]
trs80m1: remove debugging code
Alan Cox [Thu, 28 Feb 2019 21:31:55 +0000 (21:31 +0000)]
rc2014: clarify CTC card
Alan Cox [Thu, 28 Feb 2019 21:31:29 +0000 (21:31 +0000)]
amstradnc: typo fix
Alan Cox [Thu, 28 Feb 2019 21:30:47 +0000 (21:30 +0000)]
fdc765: fix off by one
Alan Cox [Sun, 24 Feb 2019 21:43:02 +0000 (21:43 +0000)]
yaz180: ppide changes
In theory this gets us a kernel that will work on a Yaz180.
Alan Cox [Sat, 23 Feb 2019 15:47:41 +0000 (15:47 +0000)]
v65c816:fix config
Alan Cox [Wed, 20 Feb 2019 23:05:38 +0000 (23:05 +0000)]
zxdiv48: Initial code for 48K ZX Spectrum with DivIDE plus or ZXCF
Queueing this up for weekend testing.
It seemed a shame that the classic squishy key machines were being left out
so there was only one thing left to do - fix it.
It's a curious combination of the 128K/DivIDE model and the single process
in memory model. The kernel is banked four ways in the low 16K using memory
from the DivIDE Plus or ZXCF card. The area between the screen and 0x8000 just
about fits enough data for a minimal system providing the disk buffers are
banked. From 0x800-0xFBFF is then used for the application space with FC00-FFFF
holding the stacks, udata and a 256 byte space we may yet need.
The rest of the 512/1024K of RAM on the interface is then used as swap.
Task switching is slow (two x 32K ldir) but that is no worse than the disk
load/save used by other single process in memory platforms.
The biggest problem is the limited amount of unbanked kernel RAM. With the
screen at 0x4000-0x5AFF we only have a shade over 8K for all our common,
our data, constants and bank switching stubs. To get it to fit we end up
limiting our user space to 31K (versus 31.5K on most other 32K switched bank
platforms).
Alan Cox [Wed, 20 Feb 2019 22:34:18 +0000 (22:34 +0000)]
visualize: allow visualisation of banked kernels
Alan Cox [Wed, 20 Feb 2019 22:33:56 +0000 (22:33 +0000)]
binmunge: support more banks, and fix hardcoded bank counts
Alan Cox [Wed, 20 Feb 2019 22:33:14 +0000 (22:33 +0000)]
z80: single process banked kernel
Alan Cox [Wed, 20 Feb 2019 22:32:59 +0000 (22:32 +0000)]
z80single: remove comment for work done
Alan Cox [Wed, 20 Feb 2019 22:32:09 +0000 (22:32 +0000)]
z80: add out16 for out's to a 16bit port, and in16 likewise
We need these for some of the systems that do I/O decoding on the cheap (like
the ZX spectrum). Not yet tested.
Alan Cox [Wed, 20 Feb 2019 22:30:48 +0000 (22:30 +0000)]
swap: allow offet 0 to be used for swap
Don't make it the default because some platforms use swap slot 0 for other things
Alan Cox [Wed, 20 Feb 2019 01:14:04 +0000 (01:14 +0000)]
kernel remove dead old z80 def file
Alan Cox [Wed, 20 Feb 2019 01:13:42 +0000 (01:13 +0000)]
v68: kill stale dead experimeting trees
Alan Cox [Wed, 20 Feb 2019 01:06:16 +0000 (01:06 +0000)]
spx302: Initial code sketch for the SPX302/MPU302 conversion
See https://www.retrobrewcomputers.org/doku.php?id=builderpages:plasmo:spx-mpu
for more information about this system.
This is just an initial set of buildable code. It needs a loader and debugging
before we can get further
Alan Cox [Wed, 20 Feb 2019 01:03:03 +0000 (01:03 +0000)]
make: fix make clean rules
Alan Cox [Wed, 20 Feb 2019 00:30:40 +0000 (00:30 +0000)]
v85: update for the latest v85 to allow reboot
Alan Cox [Wed, 20 Feb 2019 00:29:12 +0000 (00:29 +0000)]
z80/rabbit: The big rearrange of U_DATA to _udata offsets
The linker is good enough to work this out (except for the one z180.s case) so
move to letting the linker do the work. This eliminates a configuration item
for people to get wrong, and also will be needed to generate a relocatable
Fuzix kernel.
Alan Cox [Tue, 19 Feb 2019 14:46:13 +0000 (14:46 +0000)]
pentagon: fix I/O ports on sketch of loader code
It doesn't work yet at all, but since I noticed this in the first sketches I
wanted to fix it before I forget
Alan Cox [Tue, 19 Feb 2019 14:45:12 +0000 (14:45 +0000)]
configs: add direct I/O to various platforms that can use it just fine
Alan Cox [Tue, 19 Feb 2019 14:43:14 +0000 (14:43 +0000)]
amstradnc: use generic 16 banking code
Alan Cox [Tue, 19 Feb 2019 14:42:29 +0000 (14:42 +0000)]
z80: unified z80 4 x 16 bank tricks code
And apply it to rc2014 and zeta2
Alan Cox [Tue, 19 Feb 2019 14:35:14 +0000 (14:35 +0000)]
nc100: fix weird crash caused by _HOME segment
divulong was added by the compiler in _HOME. As we didn't list _HOME in crt0
it ended up being recycled
Alan Cox [Tue, 19 Feb 2019 00:23:24 +0000 (00:23 +0000)]
n8vem: fix missing newline
Alan Cox [Tue, 19 Feb 2019 00:22:58 +0000 (00:22 +0000)]
config: update so everyone has BOOTDEVICENAMES
Alan Cox [Tue, 19 Feb 2019 00:20:05 +0000 (00:20 +0000)]
filesys: not an optimization to look into
Alan Cox [Mon, 18 Feb 2019 00:06:06 +0000 (00:06 +0000)]
8080: small uzero optimization
Alan Cox [Mon, 18 Feb 2019 00:04:20 +0000 (00:04 +0000)]
v85: switch to vectored interrupts and use some 8085 optimizations
Alan Cox [Sun, 17 Feb 2019 23:56:11 +0000 (23:56 +0000)]
8080: add framework for 8085 vectored interrupts and 8214 interrupts
Alan Cox [Sat, 16 Feb 2019 22:12:09 +0000 (22:12 +0000)]
v85: intial merge of the port
Alan Cox [Sat, 16 Feb 2019 22:07:39 +0000 (22:07 +0000)]
start: move memory printing
Some platforms benefit from sizing memory later (or even stealing memory during
boot dynamically) so move the reporting.
Alan Cox [Sat, 16 Feb 2019 19:47:25 +0000 (19:47 +0000)]
tc2068: remove work done from README
Alan Cox [Sat, 16 Feb 2019 12:40:54 +0000 (12:40 +0000)]
README.md: update
Alan Cox [Sat, 16 Feb 2019 12:40:15 +0000 (12:40 +0000)]
v8080: remove rst.s and update documentation
The current rst.s is now a match for the compiler one and we need no differences
so just use the provided one.
Alan Cox [Sat, 16 Feb 2019 11:47:16 +0000 (11:47 +0000)]
cpuinfo: add 8080 support
Alan Cox [Sat, 16 Feb 2019 11:46:37 +0000 (11:46 +0000)]
8080: fix a bug in the cpu detection code
Still needs more checking
Alan Cox [Sat, 16 Feb 2019 02:46:02 +0000 (02:46 +0000)]
v8080: align with upstream rsts
Alan Cox [Sat, 16 Feb 2019 02:30:54 +0000 (02:30 +0000)]
sh: add string.h for strsignal()
Alan Cox [Sat, 16 Feb 2019 00:12:27 +0000 (00:12 +0000)]
df: update to match changes in includes and speed up
Whilst we are it we can treat mtab as official so we don't do lots of pointless
lookups for the generic case of 'df'.
Alan Cox [Fri, 15 Feb 2019 23:04:19 +0000 (23:04 +0000)]
v8080: update README
Alan Cox [Fri, 15 Feb 2019 23:03:44 +0000 (23:03 +0000)]
rabbit: htons/htonl
Alan Cox [Fri, 15 Feb 2019 23:02:17 +0000 (23:02 +0000)]
8080: fix low level signal delivery logic
Alan Cox [Fri, 15 Feb 2019 23:01:52 +0000 (23:01 +0000)]
8080: commit the crt0 files I forgot
Alan Cox [Fri, 15 Feb 2019 21:57:41 +0000 (21:57 +0000)]
8080: turn on interrupt support and pre-emption
Fix one small bug in the process
Alan Cox [Fri, 15 Feb 2019 21:42:17 +0000 (21:42 +0000)]
v8080: update README
Alan Cox [Fri, 15 Feb 2019 21:41:21 +0000 (21:41 +0000)]
v8080: use the 8080 checker we added
We don't want long signed divide/multiply or floats sneaking into the kernel
Alan Cox [Fri, 15 Feb 2019 21:40:59 +0000 (21:40 +0000)]
check8080: warn if we accidentally suck in stuff we don't save when switching
Alan Cox [Fri, 15 Feb 2019 21:40:28 +0000 (21:40 +0000)]
8080: fix strerror/perror - 8080 is little endian
Alan Cox [Fri, 15 Feb 2019 21:40:13 +0000 (21:40 +0000)]
sysconf: pagesize could be 64K
Alan Cox [Fri, 15 Feb 2019 21:39:45 +0000 (21:39 +0000)]
libc: correct for small change to mount struct
We need to revisit the syscall as well.
Alan Cox [Fri, 15 Feb 2019 21:39:11 +0000 (21:39 +0000)]
tail: use static buffer to keep cc65 happy
Alan Cox [Fri, 15 Feb 2019 21:38:53 +0000 (21:38 +0000)]
pagesize: use long types
Alan Cox [Fri, 15 Feb 2019 21:38:36 +0000 (21:38 +0000)]
man: keep stack usage down to keep cc65 happy
Alan Cox [Fri, 15 Feb 2019 21:37:47 +0000 (21:37 +0000)]
sh: msg array is surplus now the shell uses the libc table
Alan Cox [Fri, 15 Feb 2019 13:08:48 +0000 (13:08 +0000)]
sh: use proper signal names from the library
Alan Cox [Fri, 15 Feb 2019 01:04:57 +0000 (01:04 +0000)]
8080: fix uget return
This fixes the lseek bug and possibly others too
Alan Cox [Fri, 15 Feb 2019 00:32:56 +0000 (00:32 +0000)]
v8080: update for the rst changes
- Save BC
- Only install the vectors for kernel
- Use the rst routines from todays kernel
Alan Cox [Fri, 15 Feb 2019 00:32:42 +0000 (00:32 +0000)]
v8080: update README
Alan Cox [Fri, 15 Feb 2019 00:32:17 +0000 (00:32 +0000)]
8080: sketch out the irq saves needed
Alan Cox [Fri, 15 Feb 2019 00:32:03 +0000 (00:32 +0000)]
8080fixedbank: note some areas to look at for switching
Alan Cox [Tue, 12 Feb 2019 21:02:11 +0000 (21:02 +0000)]
8080fixedbank: fix switching bugs
Alan Cox [Mon, 11 Feb 2019 23:32:07 +0000 (23:32 +0000)]
library: add some build rules
Alan Cox [Mon, 11 Feb 2019 23:31:10 +0000 (23:31 +0000)]
8080: 'fast' fork copier: 24 clocks/byte
Don't read this code after a large lunch
Alan Cox [Mon, 11 Feb 2019 23:30:51 +0000 (23:30 +0000)]
v8080: update README
Alan Cox [Mon, 11 Feb 2019 23:30:27 +0000 (23:30 +0000)]
8080: cpu type detection
Alan Cox [Mon, 11 Feb 2019 23:30:13 +0000 (23:30 +0000)]
8080fixedbank: remove some debug
Alan Cox [Mon, 11 Feb 2019 18:53:07 +0000 (18:53 +0000)]
tools: Update tools and add library tool so we can do FZL1 files