FUZIX.git
9 years agolkrloc3: typo
Alan Cox [Thu, 12 Feb 2015 01:52:20 +0000 (01:52 +0000)]
lkrloc3: typo

9 years agozx128: video routine updates for banked mode
Alan Cox [Thu, 12 Feb 2015 01:51:56 +0000 (01:51 +0000)]
zx128: video routine updates for banked mode

9 years agozx128: move uarea
Alan Cox [Thu, 12 Feb 2015 01:51:28 +0000 (01:51 +0000)]
zx128: move uarea

We need 0xFFFx free in order to use it for the IM2 stunts needed on the
Spectrum boxes

9 years agobinmunge: zeroing, intialized data, stub changes etc
Alan Cox [Thu, 12 Feb 2015 01:50:41 +0000 (01:50 +0000)]
binmunge: zeroing, intialized data, stub changes etc

9 years agozx128: update the helpers and banking stubs
Alan Cox [Thu, 12 Feb 2015 01:49:04 +0000 (01:49 +0000)]
zx128: update the helpers and banking stubs

9 years agozx128: update to match changes in blkdev and devide
Alan Cox [Thu, 12 Feb 2015 01:48:26 +0000 (01:48 +0000)]
zx128: update to match changes in blkdev and devide

9 years agozx128: update the mappings
Alan Cox [Thu, 12 Feb 2015 01:48:05 +0000 (01:48 +0000)]
zx128: update the mappings

9 years agoz80: usermem banked mode uses some new helpers
Alan Cox [Thu, 12 Feb 2015 01:47:13 +0000 (01:47 +0000)]
z80: usermem banked mode uses some new helpers

We may need to generalise these. The good thing is that the save/restore
versions on a non banked kernel are simply the map_kernel/map_process_any
methods

9 years agozx128: update README
Alan Cox [Thu, 12 Feb 2015 01:46:22 +0000 (01:46 +0000)]
zx128: update README

9 years agoz80: banked mode need modified helpers so stick them into the tree
Alan Cox [Thu, 12 Feb 2015 01:44:16 +0000 (01:44 +0000)]
z80: banked mode need modified helpers so stick them into the tree

If upstream SDCC grows banking support we can tidy this back up but for now
a more generalised banking setup in SDCC is some ways off

9 years agoz80: update banking documentation
Alan Cox [Thu, 12 Feb 2015 01:42:54 +0000 (01:42 +0000)]
z80: update banking documentation

9 years agoz80: make sure the helpers appear in common
Alan Cox [Wed, 11 Feb 2015 00:29:59 +0000 (00:29 +0000)]
z80: make sure the helpers appear in common

9 years agozx128: Further banking fixes
Alan Cox [Wed, 11 Feb 2015 00:28:51 +0000 (00:28 +0000)]
zx128: Further banking fixes

With these in place we get as far as trying to call entries in a function table
load 0xFFFF into HL and jump to it. Probably more binmunge debugging needed
at this point.

9 years agopatches: SDCC patches for playing with banked mode
Alan Cox [Tue, 10 Feb 2015 23:43:25 +0000 (23:43 +0000)]
patches: SDCC patches for playing with banked mode

9 years agozx128: update the various ZX128 bits needed
Alan Cox [Tue, 10 Feb 2015 23:38:35 +0000 (23:38 +0000)]
zx128: update the various ZX128 bits needed

9 years agolowlevel-z80-banked: remove the NULL checker if low memory is not userspace
Alan Cox [Tue, 10 Feb 2015 23:37:52 +0000 (23:37 +0000)]
lowlevel-z80-banked: remove the NULL checker if low memory is not userspace

9 years agobin2sna: Add a tool to turn out banked ZX Spectrum 128 binaries into .SNA
Alan Cox [Tue, 10 Feb 2015 23:36:14 +0000 (23:36 +0000)]
bin2sna: Add a tool to turn out banked ZX Spectrum 128 binaries into .SNA

This provides a quick and handy way to prove they aren't working yet.

The tool loads the common memory, bank1/2/3.bin into the right banks in the
SNA image and then executes from 0xC003 (0xC000 is the main entry point,
0xC003 is a hack for now for a preloaded and positioned image)

At that point we hit crt0.s and crash somewhere early on trying to bank switch

9 years agozx128: banking helpers
Alan Cox [Mon, 9 Feb 2015 23:00:09 +0000 (23:00 +0000)]
zx128: banking helpers

Just filling them out for the moment. They try and use logical not real
bank numbers so won't actually work yet

9 years agoMakefile: allow banked platforms to force different helpers
Alan Cox [Sun, 8 Feb 2015 17:04:41 +0000 (17:04 +0000)]
Makefile: allow banked platforms to force different helpers

9 years agobinmunge: Revised version of the tool
Alan Cox [Sun, 8 Feb 2015 17:04:00 +0000 (17:04 +0000)]
binmunge: Revised version of the tool

This works with the --external-banker patch to SDCC to do the needed inline
fixups and stubs.

9 years ago6809: build the decb tool
Alan Cox [Sun, 8 Feb 2015 17:01:57 +0000 (17:01 +0000)]
6809: build the decb tool

9 years agoz80: commit banked helpers
Alan Cox [Sun, 8 Feb 2015 17:01:29 +0000 (17:01 +0000)]
z80: commit banked helpers

These are annoyingly similar and eventually want folding together

9 years agozx128: Make the adjustments in the asm needed for banked binary support
Alan Cox [Sun, 8 Feb 2015 17:00:54 +0000 (17:00 +0000)]
zx128: Make the adjustments in the asm needed for banked binary support

9 years agostart: Fix warnings if program space is > signed size
Alan Cox [Sun, 8 Feb 2015 17:00:32 +0000 (17:00 +0000)]
start: Fix warnings if program space is > signed size

9 years agoMakefile: further tidying
Alan Cox [Sun, 8 Feb 2015 15:54:15 +0000 (15:54 +0000)]
Makefile: further tidying

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