Alan Cox [Sat, 16 Mar 2019 22:13:31 +0000 (22:13 +0000)]
atarist: get the timers and console working
No device drivers so you can't yet mount a file system
Alan Cox [Sat, 16 Mar 2019 16:26:19 +0000 (16:26 +0000)]
atari-st: this gets us to the point the mono console kind of works-ish
Sufficient to print useful messages. We still need to debug this further and
sort out non mono displays.
Alan Cox [Sat, 16 Mar 2019 16:24:40 +0000 (16:24 +0000)]
68000: add Atari ST bootblock checksumming tool
Alan Cox [Sat, 16 Mar 2019 00:22:26 +0000 (00:22 +0000)]
rc2014: fix up the banking code and update the bootloader
At this point the banked kernel appears to work. Needs a bit more testing and
to be tested on the actual board.
Alan Cox [Sat, 16 Mar 2019 00:21:51 +0000 (00:21 +0000)]
devide: make the generic devide correct for banked and other cases
Only map kernel back if we map something else
Alan Cox [Fri, 15 Mar 2019 22:03:37 +0000 (22:03 +0000)]
rc2014: lay groundwork to make rc2014 run a banked kernel.
RC2014 has so many toys they do not all fit any more and there is still sound,
PIO and TMS9918A support to add!
This breaks everything. The loader needs a rewrite and the code debugging so
if you are doing a build go back before this commit
Alan Cox [Fri, 15 Mar 2019 22:01:47 +0000 (22:01 +0000)]
ds1302: unify all the code and banked versions too
Alan Cox [Fri, 15 Mar 2019 22:01:30 +0000 (22:01 +0000)]
devfd_hw: add a banked version
Alan Cox [Fri, 15 Mar 2019 20:02:35 +0000 (20:02 +0000)]
trs80m1: fix banking to cover CODE4
Alan Cox [Fri, 15 Mar 2019 19:21:40 +0000 (19:21 +0000)]
more type alignments
None of these really matter as uint8_t == uint_fast8_t for Z80 but it's good
to get it and the signed/unsigned clashes tidied up.
Alan Cox [Fri, 15 Mar 2019 19:21:19 +0000 (19:21 +0000)]
dev: sync more types
Alan Cox [Thu, 14 Mar 2019 14:34:10 +0000 (14:34 +0000)]
rc2014-tiny: align types
Alan Cox [Thu, 14 Mar 2019 14:09:50 +0000 (14:09 +0000)]
rc2014-sbc64: align types and fix a Makefile ordering bug
We need boot to be built to generate loader.inc, not to depend on boot.s
Alan Cox [Thu, 14 Mar 2019 14:00:35 +0000 (14:00 +0000)]
rc2014: align types
Alan Cox [Thu, 14 Mar 2019 13:38:36 +0000 (13:38 +0000)]
p112: align types
Alan Cox [Thu, 14 Mar 2019 13:38:22 +0000 (13:38 +0000)]
devscsi: align types
Alan Cox [Wed, 13 Mar 2019 23:42:07 +0000 (23:42 +0000)]
dev: more device type alignment
Alan Cox [Wed, 13 Mar 2019 23:41:48 +0000 (23:41 +0000)]
n8vem-mark4: align types
Alan Cox [Wed, 13 Mar 2019 23:05:49 +0000 (23:05 +0000)]
multicomp09: align types
Alan Cox [Wed, 13 Mar 2019 23:01:35 +0000 (23:01 +0000)]
mtx: align with type changes and update TODO list
Time to move this onto real hardware with CF card support etc
Alan Cox [Wed, 13 Mar 2019 22:50:22 +0000 (22:50 +0000)]
msx2: align types
Alan Cox [Wed, 13 Mar 2019 22:34:50 +0000 (22:34 +0000)]
tty: fix some of the kputchar sign breakages
Alan Cox [Wed, 13 Mar 2019 22:32:36 +0000 (22:32 +0000)]
dragon-nx32: initial type resync
Alan Cox [Wed, 13 Mar 2019 22:27:02 +0000 (22:27 +0000)]
vt: align with type changes
We ought to fix up the internal type usages but a lot of these lead into asm
code so some review is called for.
Alan Cox [Wed, 13 Mar 2019 22:26:03 +0000 (22:26 +0000)]
coco3: initial alignment of type changes
More to do eventually
Alan Cox [Wed, 13 Mar 2019 22:25:50 +0000 (22:25 +0000)]
coco2cart: align with type changes
Alan Cox [Wed, 13 Mar 2019 22:25:37 +0000 (22:25 +0000)]
devsd:fix breakage from type conversions
Alan Cox [Wed, 13 Mar 2019 22:20:10 +0000 (22:20 +0000)]
amstradnc: align with uint_fast8_t and tty unsigned changes
Alan Cox [Wed, 13 Mar 2019 20:52:46 +0000 (20:52 +0000)]
v68: fix the devtty type changes that matter
Alan Cox [Wed, 13 Mar 2019 20:52:28 +0000 (20:52 +0000)]
v85: align with the _fast8_t changes
Alan Cox [Wed, 13 Mar 2019 20:52:15 +0000 (20:52 +0000)]
v8080: align with the _fast8_t changes
Alan Cox [Wed, 13 Mar 2019 20:51:32 +0000 (20:51 +0000)]
dev: bring some of the core devices we need in line with uint_fast8_t
We can defer a lot because only 8080/8085 at this point have it differing
from uint8_t
Alan Cox [Wed, 13 Mar 2019 20:50:34 +0000 (20:50 +0000)]
kernel: core changes to get uint_fast8_t into the drivr layer
This whole set of work saves us a mindboggling 2.2K on 8080/8085 !
Alan Cox [Wed, 13 Mar 2019 20:48:55 +0000 (20:48 +0000)]
usermem: Fix accidentally 16bitisms
In some 32bit cases we use the generic valaddr(). Thus we shouldn't cast things
to 16bit or hardcode 0xFFFF. Fix these.
Alan Cox [Wed, 13 Mar 2019 20:47:57 +0000 (20:47 +0000)]
syscall_exec32: using unsigned for names
Alan Cox [Wed, 13 Mar 2019 18:53:29 +0000 (18:53 +0000)]
msm5832: sync to new prototypes
Alan Cox [Wed, 13 Mar 2019 18:52:40 +0000 (18:52 +0000)]
v8080: sync tty to new prototypes
Alan Cox [Wed, 13 Mar 2019 18:52:17 +0000 (18:52 +0000)]
ide: optimise internal logic for uint_fast8_t
Alan Cox [Wed, 13 Mar 2019 18:51:43 +0000 (18:51 +0000)]
v8080: change to match new prototypes
Alan Cox [Wed, 13 Mar 2019 18:44:19 +0000 (18:44 +0000)]
tty: use _fast8_t types
This affects the core and the platform code but as only 8080 and 8085 currently
have a non char fast type we don't have to fix it all up at once
Alan Cox [Wed, 13 Mar 2019 18:31:47 +0000 (18:31 +0000)]
v8080: add the floppy driver I forgot to commit originally
Alan Cox [Wed, 13 Mar 2019 18:30:26 +0000 (18:30 +0000)]
v8080: low hanging fruit for _fast8_t
Alan Cox [Wed, 13 Mar 2019 18:27:06 +0000 (18:27 +0000)]
v85: use _fast8_t types
Alan Cox [Wed, 13 Mar 2019 18:26:32 +0000 (18:26 +0000)]
kernel: use _fast8_t types
Alan Cox [Wed, 13 Mar 2019 18:25:34 +0000 (18:25 +0000)]
devide_discard: tidy up some particularly horrible code gen
Alan Cox [Wed, 13 Mar 2019 18:24:05 +0000 (18:24 +0000)]
cpu: introduce _fast8_t types
The 8080 compiler is much happier using 16bits for working values
Alan Cox [Tue, 12 Mar 2019 23:21:02 +0000 (23:21 +0000)]
crt0_nostdio-z80: remove bogus ;
Alan Cox [Tue, 12 Mar 2019 23:20:43 +0000 (23:20 +0000)]
ps: adopt new p_time meaning and tidy output further
Alan Cox [Tue, 12 Mar 2019 22:58:05 +0000 (22:58 +0000)]
kernel: change p_time (the start time)
We really want to know this in ticks not time otherwise it gets nonsensical
when you set the clock. In particular init is almost certainly created with a
bogus time of day.
It's then easy enough to fix ps to instead ask for the tick counter and do
the maths relative to current time to work out what is going on.
Also conveniently fixes the 2038 issue
Alan Cox [Tue, 12 Mar 2019 22:57:41 +0000 (22:57 +0000)]
timer: actually we have until a bit after 2100 to fix this
Alan Cox [Tue, 12 Mar 2019 22:50:34 +0000 (22:50 +0000)]
ps: note something to revisit
Alan Cox [Tue, 12 Mar 2019 22:48:06 +0000 (22:48 +0000)]
inode: fix the pipe deadlock
I think this will do the trick. It could do with more review and testing.
Alan Cox [Tue, 12 Mar 2019 22:02:08 +0000 (22:02 +0000)]
v85: don't keep temporaries
We are no longer debugging the discard tool
Alan Cox [Tue, 12 Mar 2019 22:01:38 +0000 (22:01 +0000)]
ps: fix formatting messes
Alan Cox [Tue, 12 Mar 2019 22:01:10 +0000 (22:01 +0000)]
v85: add discard segment
We don't yet reclaim it for buffers
Alan Cox [Tue, 12 Mar 2019 21:59:35 +0000 (21:59 +0000)]
discard85: make this work
Alan Cox [Tue, 12 Mar 2019 21:59:18 +0000 (21:59 +0000)]
ack2kernel: don't core dump if code goes over the end of RAM
Alan Cox [Tue, 12 Mar 2019 21:58:24 +0000 (21:58 +0000)]
cpu-8080: clean up header a bit
Alan Cox [Tue, 12 Mar 2019 16:51:10 +0000 (16:51 +0000)]
syscall_fs: remove dead function
Alan Cox [Tue, 12 Mar 2019 16:45:53 +0000 (16:45 +0000)]
syscall_fs3: remove some temporaries that make code generation worse
Alan Cox [Tue, 12 Mar 2019 00:18:51 +0000 (00:18 +0000)]
v85: use 8085 optimized tricks.s
Alan Cox [Tue, 12 Mar 2019 00:18:33 +0000 (00:18 +0000)]
8085: minimal optimizations for fixed bank
Alan Cox [Tue, 12 Mar 2019 00:15:22 +0000 (00:15 +0000)]
usermem_std-8085: and with uput it's easy to do uget
Alan Cox [Tue, 12 Mar 2019 00:11:52 +0000 (00:11 +0000)]
usermem_std-8085: add optimized uput
Alan Cox [Tue, 12 Mar 2019 00:07:33 +0000 (00:07 +0000)]
v85: use 8085 optimization work
Alan Cox [Tue, 12 Mar 2019 00:07:14 +0000 (00:07 +0000)]
8085: some basic 8085 optimizing work
Alan Cox [Tue, 12 Mar 2019 00:06:44 +0000 (00:06 +0000)]
cpu-8080: remove a fixed fixme
Alan Cox [Mon, 11 Mar 2019 20:04:40 +0000 (20:04 +0000)]
68000: dw Makefile
Alan Cox [Mon, 11 Mar 2019 20:04:00 +0000 (20:04 +0000)]
8080: commit games Makefile
We don't build most games due a compiler problem
Alan Cox [Mon, 11 Mar 2019 14:17:57 +0000 (14:17 +0000)]
usermem: fix warning caused by missing cast
Alan Cox [Sun, 10 Mar 2019 23:33:54 +0000 (23:33 +0000)]
easy-z80: arrange memory map correctly for alignments
And with this it seems to actually work
Alan Cox [Sun, 10 Mar 2019 01:05:59 +0000 (01:05 +0000)]
easyz80: we need to di before setup
Alan Cox [Sun, 10 Mar 2019 00:42:03 +0000 (00:42 +0000)]
sh: we don't use stdio so don't suck it in at all
And no .. fsh is still too big to run in 32K userspace sorry
Alan Cox [Sun, 10 Mar 2019 00:41:10 +0000 (00:41 +0000)]
sh: fix out of memory handling
The original code doesn't actually handle out of memory but explodes. On a PDP11
I guess that's merely annoying, on a Z80 it tends to break more. Add a proper
out of memory exit.
Alan Cox [Sun, 10 Mar 2019 00:31:07 +0000 (00:31 +0000)]
z80: brk to the correct point in the relocatable binaries
In the cases where we couldn't put the relocations into the end of data and
make it BSS we end up with a binary that is a bit bigger than expected. Most
stuff doesn't care but for correctness and tight memory cases use brk() to
put the end of BSS back at the right point so future sbrk() calls give the
expected result.
Alan Cox [Sun, 10 Mar 2019 00:29:43 +0000 (00:29 +0000)]
relocbin: Fix bogus BSS sizes
l__DATA is unsigned so the old check did not work, instead it wrote a large
effectively negative value in the header. Due to a pair of bugs in the kernel
that happened to sort of work.
The kernel is fixed. This patch fixes the toolchain.
Alan Cox [Sun, 10 Mar 2019 00:27:46 +0000 (00:27 +0000)]
usermem: correct wrapped sizes
There are cases it is valid to pass a base and size that wrap, if your user space
runs in the high memory area. On the Linc80 this shows up and breaks the
n_open optimizations because instead of FE00 200 giving 100 as it should it gives
an error.
This was also the bug that happened to save us with binaries with the wrong BSS
size
Alan Cox [Sun, 10 Mar 2019 00:26:22 +0000 (00:26 +0000)]
syscall_exec16: Fix BSS wrap bug
If the binary fits but it has a huge BSS value then kernel wrongly allows it to
start. Because of some other bugs and quirks it ends up running sanely for most
platforms but the BSS is not cleared.
This breaks the current builds of /bin/sh so you'll need to build a new one with
the tools patches that follow this applied.
Alan Cox [Sun, 10 Mar 2019 00:24:31 +0000 (00:24 +0000)]
linc80: send the console messages to SIO B
Alan Cox [Sun, 10 Mar 2019 00:23:41 +0000 (00:23 +0000)]
easy-z80: add context switchers to the z80sio
As we use multiple banks for top of memory common copies we have no true
common so we need to land the serial I/O outside of common so must bank it in
Alan Cox [Sun, 10 Mar 2019 00:22:55 +0000 (00:22 +0000)]
z80sio: we only want IRQ handlers to stack switch if needed
The other functions are only called in kernel context
Alan Cox [Sat, 9 Mar 2019 19:42:31 +0000 (19:42 +0000)]
easyz80: Fix up all the IM2 handling and serial stuff
Alan Cox [Sat, 9 Mar 2019 19:41:58 +0000 (19:41 +0000)]
z80sio: Fix a bug in the linc80 logic and add macros for non fixed common cases
Alan Cox [Sat, 9 Mar 2019 17:32:22 +0000 (17:32 +0000)]
easyz80: fix SIO vector loading and CTC vectors
This gets us to the point timer events are happening but there is no input
response.
Alan Cox [Sat, 9 Mar 2019 12:15:57 +0000 (12:15 +0000)]
cp: remove struct assignment
This allows it to build with older SDCC correctly
Alan Cox [Fri, 8 Mar 2019 23:28:32 +0000 (23:28 +0000)]
easy-z80: Initial port framework for easy-z80
This in theory is a complete port to Max Malinov and Sergey Kiselev's
Easy Z80 SBC including CTC timing, serial port baud rate control and using IM2
and fast IM2 based serial handlers (but not yet softirq).
It's not yet been debugged/tested on any kind of emulation or actual board
however.
Alan Cox [Thu, 7 Mar 2019 14:33:55 +0000 (14:33 +0000)]
trdify: Make .TRD disk images
This is used to generate pentagon and scorpion bootable floppy images for the
kernel
Alan Cox [Thu, 7 Mar 2019 14:33:29 +0000 (14:33 +0000)]
tgl6502: goodbye
Alan Cox [Thu, 7 Mar 2019 14:33:04 +0000 (14:33 +0000)]
zxdiv48: a bug I noticed whilst working on pentagon
Still not tested/debugged yet
Alan Cox [Thu, 7 Mar 2019 14:32:23 +0000 (14:32 +0000)]
pentagon: more work in progress for fixed 16K ROM systems
Alan Cox [Thu, 7 Mar 2019 14:31:58 +0000 (14:31 +0000)]
scorpion: /dev/lp and turbo
Alan Cox [Thu, 7 Mar 2019 14:31:22 +0000 (14:31 +0000)]
pentagon1024: /dev/lp support and turbo
Alan Cox [Thu, 7 Mar 2019 14:30:56 +0000 (14:30 +0000)]
dev: add generic lp driver
Alan Cox [Wed, 6 Mar 2019 00:36:41 +0000 (00:36 +0000)]
scorpion: Initial scorpion support (Scorpion 256)
Alan Cox [Wed, 6 Mar 2019 00:35:15 +0000 (00:35 +0000)]
tricks-big: remove bogus leftover or
Fixes the crash when we use the lower banks
Alan Cox [Tue, 5 Mar 2019 23:12:21 +0000 (23:12 +0000)]
pentagon: add the tricks macros to keep in sync
Alan Cox [Tue, 5 Mar 2019 23:06:16 +0000 (23:06 +0000)]
pentagon: bring back pieces from the pentagon1024
There is still much to be done to support older Pentagons but keep the tree in
sync
Alan Cox [Tue, 5 Mar 2019 23:04:29 +0000 (23:04 +0000)]
pentagon1024: get it building and running
Alan Cox [Tue, 5 Mar 2019 23:03:27 +0000 (23:03 +0000)]
pentagon1024: add macros to make the tricks-big file shareable
Scorpions need something a bit different
Alan Cox [Tue, 5 Mar 2019 23:03:06 +0000 (23:03 +0000)]
zx: tidy tty references