FUZIX.git
9 years agoMakefile: Move the per CPU stuff into the CPU directory
Alan Cox [Sun, 8 Feb 2015 15:30:52 +0000 (15:30 +0000)]
Makefile: Move the per CPU stuff into the CPU directory

Before the Makefiles get out of hand, impose some kind of sanity. We will also
need the platform bits for things like ZX Spectrum 128 where we need to add
our new --external-banker flags and the like.

9 years agoZ80: update the banking logic based on the SDCC changes made
Alan Cox [Sun, 8 Feb 2015 15:21:25 +0000 (15:21 +0000)]
Z80: update the banking logic based on the SDCC changes made

9 years agoprocess.c: scrub final fastcall refs
Alan Cox [Sun, 8 Feb 2015 12:35:55 +0000 (12:35 +0000)]
process.c: scrub final fastcall refs

9 years agoprocess.c: remove __fastproc__ now it is obsolete
Alan Cox [Sun, 8 Feb 2015 12:34:40 +0000 (12:34 +0000)]
process.c: remove __fastproc__ now it is obsolete

9 years agotty.h: typo fix
Alan Cox [Sun, 8 Feb 2015 12:30:56 +0000 (12:30 +0000)]
tty.h: typo fix

9 years agotty.h: and clean out CODE1 bits
Alan Cox [Sun, 8 Feb 2015 12:30:35 +0000 (12:30 +0000)]
tty.h: and clean out CODE1 bits

9 years agotty.h: clean CODE2 out
Alan Cox [Sun, 8 Feb 2015 12:30:03 +0000 (12:30 +0000)]
tty.h: clean CODE2 out

9 years agobanking: Strip out all the experiments with CODE1 etc
Alan Cox [Sun, 8 Feb 2015 12:24:34 +0000 (12:24 +0000)]
banking: Strip out all the experiments with CODE1 etc

By now it's obvious that banking needs to be done per platform and the logic
really wants to be in the linker. Therefore get rid of all the annoying noise.

In addition with the patches to cc65 we don't need __fastcall__ hacks, and
in fact as we can't fastcall a banked 6502 function we don't want fastcalls
leaking anywhere explicit.

9 years agoz80: fix if/endifs for non SDCC case
Alan Cox [Sun, 8 Feb 2015 00:35:47 +0000 (00:35 +0000)]
z80: fix if/endifs for non SDCC case

9 years agoMakefile: switch 68000 toolchain
Alan Cox [Fri, 6 Feb 2015 13:41:43 +0000 (13:41 +0000)]
Makefile: switch 68000 toolchain

9 years ago68000: update the atari-st beginnings, switch tool chain
Alan Cox [Fri, 6 Feb 2015 13:40:31 +0000 (13:40 +0000)]
68000: update the atari-st beginnings, switch tool chain

We now use the atari mint toolchain as it produces TOS binaries and uses the
_ prefixes we expect from compilers.

9 years agoMerge pull request #104 from willsowerbutts/monitorbank
EtchedPixels [Tue, 3 Feb 2015 22:37:14 +0000 (22:37 +0000)]
Merge pull request #104 from willsowerbutts/monitorbank

monitor-z80: allow platforms to move monitor code to different segments (updates p112, n8vem-mark4)

9 years agoMerge pull request #103 from willsowerbutts/prtroot
EtchedPixels [Tue, 3 Feb 2015 22:36:57 +0000 (22:36 +0000)]
Merge pull request #103 from willsowerbutts/prtroot

prtroot: Bug fix, new -i flag to initialise /etc/mtab

9 years agomonitor-z80: allow moving to different segments (updates p112, n8vem-mark4)
Will Sowerbutts [Mon, 2 Feb 2015 23:28:57 +0000 (23:28 +0000)]
monitor-z80: allow moving to different segments (updates p112, n8vem-mark4)

9 years agoprtroot: Bug fix, new -i flag to initialise /etc/mtab
Will Sowerbutts [Tue, 3 Feb 2015 00:35:01 +0000 (00:35 +0000)]
prtroot: Bug fix, new -i flag to initialise /etc/mtab

Bug fix: prtroot would write a 0 byte at the end of its output.

The new "-i" flag causes output to go into /etc/mtab instead of to
stdout.

9 years agosocz80: fix timer, improve irq code a shade
Alan Cox [Tue, 3 Feb 2015 10:59:39 +0000 (10:59 +0000)]
socz80: fix timer, improve irq code a shade

9 years agoMerge pull request #100 from willsowerbutts/devsd
EtchedPixels [Tue, 3 Feb 2015 09:39:22 +0000 (09:39 +0000)]
Merge pull request #100 from willsowerbutts/devsd

devsd: Combine the various wait functions. Saves 143 bytes.

9 years agoMerge pull request #102 from willsowerbutts/ttywriteready
EtchedPixels [Tue, 3 Feb 2015 09:38:23 +0000 (09:38 +0000)]
Merge pull request #102 from willsowerbutts/ttywriteready

Kernel: tty_writeready: change return type from bool to new enum ttyready_t

9 years agoMerge pull request #99 from willsowerbutts/p112rawfloppy
EtchedPixels [Tue, 3 Feb 2015 09:36:52 +0000 (09:36 +0000)]
Merge pull request #99 from willsowerbutts/p112rawfloppy

p112: Floppy disk driver (devfd) support for rawflag=1

9 years agolowlevel-z80: support the experimental entry optimisation
Alan Cox [Mon, 2 Feb 2015 22:29:44 +0000 (22:29 +0000)]
lowlevel-z80: support the experimental entry optimisation

9 years agoKernel: tty_writeready: change return type from bool to new enum ttyready_t
Will Sowerbutts [Mon, 2 Feb 2015 22:19:54 +0000 (22:19 +0000)]
Kernel: tty_writeready: change return type from bool to new enum ttyready_t

9 years agodevsd: Combine the various wait functions. Saves 143 bytes.
Will Sowerbutts [Mon, 2 Feb 2015 21:45:33 +0000 (21:45 +0000)]
devsd: Combine the various wait functions. Saves 143 bytes.

9 years agop112: Floppy disk driver (devfd) support for rawflag=1
Will Sowerbutts [Mon, 2 Feb 2015 21:06:41 +0000 (21:06 +0000)]
p112: Floppy disk driver (devfd) support for rawflag=1

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Mon, 2 Feb 2015 13:00:32 +0000 (13:00 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agoMerge pull request #96 from geijoenr/master
EtchedPixels [Mon, 2 Feb 2015 09:19:08 +0000 (09:19 +0000)]
Merge pull request #96 from geijoenr/master

msx2: devsd fix, rtc driver for rp5c01, international keyboard layouts

9 years ago8086: just committing these unfinished so I don't forget to add them
Alan Cox [Sun, 1 Feb 2015 21:31:01 +0000 (21:31 +0000)]
8086: just committing these unfinished so I don't forget to add them

9 years agosocz80: intial merge of the ethernet driver
Alan Cox [Sun, 1 Feb 2015 21:30:40 +0000 (21:30 +0000)]
socz80: intial merge of the ethernet driver

9 years agodragon: Delete ROM images on make clean
Tormod Volden [Sun, 1 Feb 2015 19:59:55 +0000 (20:59 +0100)]
dragon: Delete ROM images on make clean

Also delete tools/decbdragon.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years ago68000: note need to change doexec
Alan Cox [Sun, 1 Feb 2015 20:34:34 +0000 (20:34 +0000)]
68000: note need to change doexec

9 years agodragon: Fix up comments in setup.s
Tormod Volden [Sun, 1 Feb 2015 19:59:56 +0000 (20:59 +0100)]
dragon: Fix up comments in setup.s

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years ago6809: Add EMAGIC_2 (0x20 = BRA)
Tormod Volden [Sun, 1 Feb 2015 19:59:54 +0000 (20:59 +0100)]
6809: Add EMAGIC_2 (0x20 = BRA)

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years ago6809: Add uarg_t
Tormod Volden [Sun, 1 Feb 2015 19:59:53 +0000 (20:59 +0100)]
6809: Add uarg_t

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years agodragon: Use syscall_exec16
Tormod Volden [Sun, 1 Feb 2015 19:59:52 +0000 (20:59 +0100)]
dragon: Use syscall_exec16

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years agodragon: Don't link setup.o in decb binary
Tormod Volden [Sun, 1 Feb 2015 19:59:51 +0000 (20:59 +0100)]
dragon: Don't link setup.o in decb binary

setup.s is compiled directly into rom 1.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years agomsx2: make tickspersec runtime configurable
geijoenr [Sun, 1 Feb 2015 19:07:22 +0000 (19:07 +0000)]
msx2: make tickspersec runtime configurable

9 years agomsx2: add localized keyboard matrices
geijoenr [Sun, 1 Feb 2015 18:10:18 +0000 (18:10 +0000)]
msx2: add localized keyboard matrices

Only JP,UK,ES are available for now.

9 years agomsx2: read machine type and info
geijoenr [Sun, 1 Feb 2015 17:51:07 +0000 (17:51 +0000)]
msx2: read machine type and info

This is required to select the proper keyboard layout
and use additional hw features in MSX2+ and TR.

9 years agokeycode: fix ESC define, add YEN special keycode
geijoenr [Sun, 1 Feb 2015 15:05:23 +0000 (15:05 +0000)]
keycode: fix ESC define, add YEN special keycode

9 years agomsx2: add rp5c01 rtc driver
geijoenr [Sat, 31 Jan 2015 04:16:11 +0000 (05:16 +0100)]
msx2: add rp5c01 rtc driver

9 years agodevsd: wait for response after CMD24
geijoenr [Thu, 29 Jan 2015 20:13:09 +0000 (20:13 +0000)]
devsd: wait for response after CMD24

on CMD24 after the sending CRC you may get 0xFF
before receiving DTR_ACCEPTED

9 years agomsx2: fix silly bug in memory sizing
geijoenr [Thu, 29 Jan 2015 19:12:05 +0000 (19:12 +0000)]
msx2: fix silly bug in memory sizing

9 years ago8086: initial preparatory work
Alan Cox [Sat, 31 Jan 2015 23:17:59 +0000 (23:17 +0000)]
8086: initial preparatory work

C bits all build under bcc

9 years agoREADME: update for SocZ80
Alan Cox [Sat, 31 Jan 2015 21:11:07 +0000 (21:11 +0000)]
README: update for SocZ80

9 years agosocz80: boot to a shell prompt, achievement unlocked
Alan Cox [Sat, 31 Jan 2015 21:03:24 +0000 (21:03 +0000)]
socz80: boot to a shell prompt, achievement unlocked

The tty code still needs prodding and debugging to get the interrupt handling
fixed. It would also be better to use custom usermem functions that used the
MMU page 17, but the old uzi180 style ones need modifying somewhat to handle
bank boundaries.

No swap (seriously you've got 2MB RAM), sd card as "floppy" device.

9 years agosocz80: fork code
Alan Cox [Sat, 31 Jan 2015 19:44:19 +0000 (19:44 +0000)]
socz80: fork code

Doesn't work yet but committing as a debugging basepoint

9 years agosocz80: get init as far as fork()
Alan Cox [Sat, 31 Jan 2015 16:54:43 +0000 (16:54 +0000)]
socz80: get init as far as fork()

This gets init as far as fork(). As the fork code hasn't been written yet it
dies there.

tty is polling for tx ready - until I figure out why the IRQ bits are broken

9 years agodevsdspi,socz80: fix write
Alan Cox [Sat, 31 Jan 2015 16:31:32 +0000 (16:31 +0000)]
devsdspi,socz80: fix write

9 years agosyscall_exec16: still trying to get sdcc to generate non-crap code for this
Alan Cox [Sat, 31 Jan 2015 16:30:47 +0000 (16:30 +0000)]
syscall_exec16: still trying to get sdcc to generate non-crap code for this

9 years agosocz80: add the core of the ethernet driver
Alan Cox [Sat, 31 Jan 2015 13:52:58 +0000 (13:52 +0000)]
socz80: add the core of the ethernet driver

This isn't finished or complete. I just happened to have the bits to hand to
pull it from my CP/M code ready.

9 years agodevsdspi: ooh look a few more bytes !
Alan Cox [Sat, 31 Jan 2015 00:26:21 +0000 (00:26 +0000)]
devsdspi: ooh look a few more bytes !

9 years agodevsdspi: fix transmit, and make it smaller
Alan Cox [Sat, 31 Jan 2015 00:24:28 +0000 (00:24 +0000)]
devsdspi: fix transmit, and make it smaller

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sat, 31 Jan 2015 00:23:28 +0000 (00:23 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agoMerge pull request #95 from willsowerbutts/onebyte
EtchedPixels [Sat, 31 Jan 2015 00:23:16 +0000 (00:23 +0000)]
Merge pull request #95 from willsowerbutts/onebyte

n8vem-mark4: devsdspi - save another two bytes! collect the whole set!

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sat, 31 Jan 2015 00:08:15 +0000 (00:08 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agon8vem-mark4: devsdspi - save another two bytes! collect the whole set!
Will Sowerbutts [Sat, 31 Jan 2015 00:07:36 +0000 (00:07 +0000)]
n8vem-mark4: devsdspi - save another two bytes! collect the whole set!

9 years agoMerge pull request #94 from willsowerbutts/onebyte
EtchedPixels [Sat, 31 Jan 2015 00:06:17 +0000 (00:06 +0000)]
Merge pull request #94 from willsowerbutts/onebyte

n8vem-mark4: devsdspi - save a byte

9 years agon8vem-mark4: devsdspi - save a byte
Will Sowerbutts [Sat, 31 Jan 2015 00:02:05 +0000 (00:02 +0000)]
n8vem-mark4: devsdspi - save a byte

9 years agosocz80: switch to standard uarea logic for now
Alan Cox [Fri, 30 Jan 2015 23:49:28 +0000 (23:49 +0000)]
socz80: switch to standard uarea logic for now

9 years agosocz80: move to the new issue sd driver
Alan Cox [Fri, 30 Jan 2015 23:39:04 +0000 (23:39 +0000)]
socz80: move to the new issue sd driver

With this in place we mount the root file system and blow up trying to start
init.

9 years agotty: fix typo
Alan Cox [Fri, 30 Jan 2015 23:27:16 +0000 (23:27 +0000)]
tty: fix typo

9 years agosocz80: fix tty data port definition
Alan Cox [Fri, 30 Jan 2015 21:59:20 +0000 (21:59 +0000)]
socz80: fix tty data port definition

With tx interrupts off we can now get some vague impression of sanity.

9 years agosocz80: next step of fixing tty problems
Alan Cox [Fri, 30 Jan 2015 21:59:03 +0000 (21:59 +0000)]
socz80: next step of fixing tty problems

9 years agosocz80: Various fixes for the mm and interrupts
Alan Cox [Fri, 30 Jan 2015 21:07:24 +0000 (21:07 +0000)]
socz80: Various fixes for the mm and interrupts

Still definitely not there yet.

9 years agoz80: make the outfoo routines preserve everything
Alan Cox [Fri, 30 Jan 2015 17:51:55 +0000 (17:51 +0000)]
z80: make the outfoo routines preserve everything

They are mostly used for debug, so having them eat AF is just too good a way to
have them muck up the debug work.

9 years agosocz80: Bring the basic bootstrap code up to speed and use Will's .com file maker
Alan Cox [Fri, 30 Jan 2015 16:52:36 +0000 (16:52 +0000)]
socz80: Bring the basic bootstrap code up to speed and use Will's .com file maker

This gets us a fuzix.com which correctly probes the SD card, then explodes when
you hit a key at the bootdev prompt

9 years agoz80: fix all the other .lnk files
Alan Cox [Fri, 30 Jan 2015 00:42:05 +0000 (00:42 +0000)]
z80: fix all the other .lnk files

9 years agotrs80: fix link rules for file move
Alan Cox [Fri, 30 Jan 2015 00:37:58 +0000 (00:37 +0000)]
trs80: fix link rules for file move

9 years ago68000: clean up most of the 16bitisms and sign stuff
Alan Cox [Fri, 30 Jan 2015 00:30:57 +0000 (00:30 +0000)]
68000: clean up most of the 16bitisms and sign stuff

Mostly this just tidies up all the introduced types. Various things are made
explicitly unsigned that were not called out before and which gcc rightly warned
on.

The 32bit execve needs are quite different, so we split into two execve() designs
rather than make a mess of the already quite nasty 8bit one.

9 years agomalloc: We need a heap allocator for flat model systems
Alan Cox [Fri, 30 Jan 2015 00:30:19 +0000 (00:30 +0000)]
malloc: We need a heap allocator for flat model systems

This isn't intended as a general purpose kernel malloc.

9 years agoflat: initial flat memory support code
Alan Cox [Fri, 30 Jan 2015 00:27:58 +0000 (00:27 +0000)]
flat: initial flat memory support code

9 years agoprocess: fix bracketing
Alan Cox [Fri, 30 Jan 2015 00:27:31 +0000 (00:27 +0000)]
process: fix bracketing

9 years agosyscall_proc: fix 16bit ism on signals
Alan Cox [Fri, 30 Jan 2015 00:27:10 +0000 (00:27 +0000)]
syscall_proc: fix 16bit ism on signals

9 years agotty: fix warnings for types and arguments
Alan Cox [Fri, 30 Jan 2015 00:26:53 +0000 (00:26 +0000)]
tty: fix warnings for types and arguments

9 years agolink/mkdir: error link counter overrun
Alan Cox [Fri, 30 Jan 2015 00:26:24 +0000 (00:26 +0000)]
link/mkdir: error link counter overrun

9 years ago68000: base enabling pieces
Alan Cox [Fri, 30 Jan 2015 00:25:41 +0000 (00:25 +0000)]
68000: base enabling pieces

9 years agousermem: support for flat binaries
Alan Cox [Fri, 30 Jan 2015 00:24:36 +0000 (00:24 +0000)]
usermem: support for flat binaries

9 years agovt: fix argument typing ready for 32bit
Alan Cox [Fri, 30 Jan 2015 00:24:17 +0000 (00:24 +0000)]
vt: fix argument typing ready for 32bit

9 years agoswap.c: fix unused argument warning
Alan Cox [Fri, 30 Jan 2015 00:24:03 +0000 (00:24 +0000)]
swap.c: fix unused argument warning

9 years agotty/vt: fix prototypes for ioctl
Alan Cox [Fri, 30 Jan 2015 00:23:38 +0000 (00:23 +0000)]
tty/vt: fix prototypes for ioctl

9 years agodevsys: fix types
Alan Cox [Fri, 30 Jan 2015 00:23:05 +0000 (00:23 +0000)]
devsys: fix types

This doesn't matter for 16bit but will shortly

9 years agodevsys: fix warnings caused by unused parameters
Alan Cox [Fri, 30 Jan 2015 00:22:42 +0000 (00:22 +0000)]
devsys: fix warnings caused by unused parameters

9 years agodevio: fix warnings caused by unused parameters
Alan Cox [Fri, 30 Jan 2015 00:22:23 +0000 (00:22 +0000)]
devio: fix warnings caused by unused parameters

9 years ago6809: add used macro
Alan Cox [Fri, 30 Jan 2015 00:22:10 +0000 (00:22 +0000)]
6809: add used macro

9 years agocpu-z80: introduce used() macro
Alan Cox [Fri, 30 Jan 2015 00:21:38 +0000 (00:21 +0000)]
cpu-z80: introduce used() macro

SDCC wants the reverse behaviour to everyone else

9 years agocpu-6502: introduce used() macro
Alan Cox [Fri, 30 Jan 2015 00:21:13 +0000 (00:21 +0000)]
cpu-6502: introduce used() macro

So we can tidy up all the unused argument warnings

9 years ago68000: very initial pieces to work on a first 680x0 port
Alan Cox [Fri, 30 Jan 2015 00:20:34 +0000 (00:20 +0000)]
68000: very initial pieces to work on a first 680x0 port

This is at the 'gee it compiled' stage.

9 years ago6502/z80: finish fixing up signal types
Alan Cox [Tue, 27 Jan 2015 23:54:15 +0000 (23:54 +0000)]
6502/z80: finish fixing up signal types

This now passes both compilers. 6809 still needs re-aligning

9 years ago6502: correct typecasts for the break limit
Alan Cox [Tue, 27 Jan 2015 23:47:45 +0000 (23:47 +0000)]
6502: correct typecasts for the break limit

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Tue, 27 Jan 2015 23:44:38 +0000 (23:44 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agoMerge pull request #91 from geijoenr/master
EtchedPixels [Tue, 27 Jan 2015 23:27:24 +0000 (23:27 +0000)]
Merge pull request #91 from geijoenr/master

update megasd driver for rawflag and some small fixes including sdcc 3.4.2 fixes

9 years agomsx2: update megasd transfer functions for rawflag=1
geijoenr [Tue, 27 Jan 2015 21:41:36 +0000 (21:41 +0000)]
msx2: update megasd transfer functions for rawflag=1

9 years agomsx2: fix memory sizing
geijoenr [Tue, 27 Jan 2015 18:41:59 +0000 (18:41 +0000)]
msx2: fix memory sizing

no need to write a byte on every page, specially
after we have already copied the kernel on it.

9 years agosdcc: fix some type warnings for sdcc 3.4.2
geijoenr [Mon, 19 Jan 2015 15:04:30 +0000 (15:04 +0000)]
sdcc: fix some type warnings for sdcc 3.4.2

9 years agotypes: set the type definitions ready for non 8bit 16bit addressed
Alan Cox [Mon, 26 Jan 2015 22:54:35 +0000 (22:54 +0000)]
types: set the type definitions ready for non 8bit 16bit addressed

9 years agocpu: add uarg_t
Alan Cox [Mon, 26 Jan 2015 22:53:32 +0000 (22:53 +0000)]
cpu: add uarg_t

9 years agobank code; Add comments and information to these
Alan Cox [Mon, 26 Jan 2015 22:53:07 +0000 (22:53 +0000)]
bank code; Add comments and information to these

9 years agoMerge pull request #89 from willsowerbutts/fixdd
EtchedPixels [Mon, 26 Jan 2015 22:12:37 +0000 (22:12 +0000)]
Merge pull request #89 from willsowerbutts/fixdd

Fix for unmounting filesystem, fix for dd count= option, change bf_free to tristate for unfreeable superblocks

9 years agoKernel: Change bf_free to tristate -- free, busy, superblock.
Will Sowerbutts [Mon, 26 Jan 2015 21:31:23 +0000 (21:31 +0000)]
Kernel: Change bf_free to tristate -- free, busy, superblock.

Superblocks are never freed by bfree(). This allows the superblock to be
read by user space from the raw block device without being freed until
the filesystem is later unmounted.

9 years agoKernel: Bug fix - do not zero the superblock magic number on unmount.
Will Sowerbutts [Mon, 26 Jan 2015 21:30:52 +0000 (21:30 +0000)]
Kernel: Bug fix - do not zero the superblock magic number on unmount.

9 years agoFix count= option to dd
Will Sowerbutts [Sun, 25 Jan 2015 22:53:20 +0000 (22:53 +0000)]
Fix count= option to dd