FUZIX.git
9 years agozx128: leave a bit more space while experimenting
Alan Cox [Sun, 15 Feb 2015 22:26:53 +0000 (22:26 +0000)]
zx128: leave a bit more space while experimenting

9 years agozx128: Make a .z80 file when building
Alan Cox [Sun, 15 Feb 2015 22:26:29 +0000 (22:26 +0000)]
zx128: Make a .z80 file when building

9 years agozx128: add a .z80 maker from the image
Alan Cox [Sun, 15 Feb 2015 22:21:31 +0000 (22:21 +0000)]
zx128: add a .z80 maker from the image

This is easier to work with as we can set the machine type reliably

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sun, 15 Feb 2015 13:44:55 +0000 (13:44 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agoMerge pull request #120 from willsowerbutts/hoistcommon
EtchedPixels [Sun, 15 Feb 2015 13:11:50 +0000 (13:11 +0000)]
Merge pull request #120 from willsowerbutts/hoistcommon

Kernel: p112, n8vem-mark4: Push the base of common memory up to F800

9 years agoMerge pull request #119 from willsowerbutts/devsdfix
EtchedPixels [Sun, 15 Feb 2015 13:11:18 +0000 (13:11 +0000)]
Merge pull request #119 from willsowerbutts/devsdfix

devsd: Bug fix for SD standard capacity card identification

9 years agoKernel: p112, n8vem-mark4: Push the base of common memory up to F800
Will Sowerbutts [Tue, 3 Feb 2015 00:28:22 +0000 (00:28 +0000)]
Kernel: p112, n8vem-mark4: Push the base of common memory up to F800

When the kernel is mapped in, the memory at F000-F800 now belongs to the
current process.

9 years agodevsd: Bug fix for SD standard capacity card identification
Will Sowerbutts [Sun, 15 Feb 2015 12:04:24 +0000 (12:04 +0000)]
devsd: Bug fix for SD standard capacity card identification

9 years agoMerge pull request #117 from willsowerbutts/z180timer
EtchedPixels [Sun, 15 Feb 2015 00:51:29 +0000 (00:51 +0000)]
Merge pull request #117 from willsowerbutts/z180timer

Various minor changes

9 years agoMerge pull request #116 from geijoenr/master
EtchedPixels [Sun, 15 Feb 2015 00:49:32 +0000 (00:49 +0000)]
Merge pull request #116 from geijoenr/master

move keyboard matrices to discard

9 years agoucp: Set file times correctly
Will Sowerbutts [Sat, 14 Feb 2015 22:36:23 +0000 (22:36 +0000)]
ucp: Set file times correctly

9 years agomkfs, fsck: Flush stdout when prompting for input
Will Sowerbutts [Sat, 14 Feb 2015 22:11:20 +0000 (22:11 +0000)]
mkfs, fsck: Flush stdout when prompting for input

9 years agoz180: Timer interrupt rate is now defined by the platform
Will Sowerbutts [Sat, 14 Feb 2015 21:53:34 +0000 (21:53 +0000)]
z180: Timer interrupt rate is now defined by the platform

9 years agozx128: move initializer data into some of the hole we need for the betadisc
Alan Cox [Sat, 14 Feb 2015 17:11:59 +0000 (17:11 +0000)]
zx128: move initializer data into some of the hole we need for the betadisc

9 years agozx128: arrange the memory map with a hole for the 5C00-5D3A area
Alan Cox [Sat, 14 Feb 2015 17:02:55 +0000 (17:02 +0000)]
zx128: arrange the memory map with a hole for the 5C00-5D3A area

Some ROMs (eg the betadisk interface) combine an arrangement whereby the
I/O ports are only accessible from the ROM with a set of ROM routines that
blindly assume spectrum basic is present and wish to pee in the system
variables area.

Whether this will be sufficient or hacked ROMs will be needed its hard to
tell given that we also need interrupts to stay off while in the foreign
ROM (otherwise our IM2 code will blow up).

9 years agodisciple: sector wrap, notes on +D
Alan Cox [Sat, 14 Feb 2015 16:43:58 +0000 (16:43 +0000)]
disciple: sector wrap, notes on +D

9 years agozx128: Start filling out disciple floppy disc support
Alan Cox [Sat, 14 Feb 2015 16:24:56 +0000 (16:24 +0000)]
zx128: Start filling out disciple floppy disc support

9 years agomsx2: move keyboard matrices to discard
geijoenr [Sat, 14 Feb 2015 16:02:47 +0000 (16:02 +0000)]
msx2: move keyboard matrices to discard

9 years agoMerge pull request #115 from willsowerbutts/rootdevparse2
EtchedPixels [Sat, 14 Feb 2015 15:15:41 +0000 (15:15 +0000)]
Merge pull request #115 from willsowerbutts/rootdevparse2

Kernel: Generic boot device parsing method

9 years agomsx2: move some code to CODE2
geijoenr [Sat, 14 Feb 2015 15:15:17 +0000 (15:15 +0000)]
msx2: move some code to CODE2

to prevent overlapping of BOOT

9 years agoKernel: Generic boot device parsing method
Will Sowerbutts [Sat, 14 Feb 2015 14:22:43 +0000 (14:22 +0000)]
Kernel: Generic boot device parsing method

9 years agoMakefile: add more of the targets
Alan Cox [Fri, 13 Feb 2015 23:19:07 +0000 (23:19 +0000)]
Makefile: add more of the targets

(Not all build right now)

9 years agostart: tidy up the ifdefs for the boot parser
Alan Cox [Fri, 13 Feb 2015 23:15:06 +0000 (23:15 +0000)]
start: tidy up the ifdefs for the boot parser

9 years agopcw8256: fix warnings with sdcc 3.4.2
Alan Cox [Fri, 13 Feb 2015 23:14:44 +0000 (23:14 +0000)]
pcw8256: fix warnings with sdcc 3.4.2

9 years agoubee: fix devtty define
Alan Cox [Fri, 13 Feb 2015 23:14:29 +0000 (23:14 +0000)]
ubee: fix devtty define

9 years agopx4plus: clean up to current tree
Alan Cox [Fri, 13 Feb 2015 23:14:04 +0000 (23:14 +0000)]
px4plus: clean up to current tree

This isn't a functional port yet - more a sanity checker on sizes

9 years agomicropack: align with current builds
Alan Cox [Fri, 13 Feb 2015 23:06:32 +0000 (23:06 +0000)]
micropack: align with current builds

9 years agovt: don't assume devtty.h
Alan Cox [Fri, 13 Feb 2015 23:06:08 +0000 (23:06 +0000)]
vt: don't assume devtty.h

If we are turned on then its needed, if not then it may be absent

9 years agomsx2: add new discard.c
Alan Cox [Fri, 13 Feb 2015 22:50:41 +0000 (22:50 +0000)]
msx2: add new discard.c

9 years agomsx2: bring in line with discard changes
Alan Cox [Fri, 13 Feb 2015 22:46:43 +0000 (22:46 +0000)]
msx2: bring in line with discard changes

9 years agotres80: Bring in line with __DISCARD changes
Alan Cox [Fri, 13 Feb 2015 22:30:23 +0000 (22:30 +0000)]
tres80: Bring in line with __DISCARD changes

9 years agoz80pack: fix tty for new style writeready
Alan Cox [Fri, 13 Feb 2015 22:17:47 +0000 (22:17 +0000)]
z80pack: fix tty for new style writeready

9 years agoz80pack-lite: Fix build
Alan Cox [Fri, 13 Feb 2015 22:17:35 +0000 (22:17 +0000)]
z80pack-lite: Fix build

9 years agoz80pack: fix build
Alan Cox [Fri, 13 Feb 2015 22:13:03 +0000 (22:13 +0000)]
z80pack: fix build

9 years agoMerge pull request #114 from willsowerbutts/rootdevparse
EtchedPixels [Fri, 13 Feb 2015 22:01:51 +0000 (22:01 +0000)]
Merge pull request #114 from willsowerbutts/rootdevparse

Better root device name parsing

9 years agozx128: update README
Alan Cox [Fri, 13 Feb 2015 21:45:26 +0000 (21:45 +0000)]
zx128: update README

9 years agozx128: update the microdrive code
Alan Cox [Fri, 13 Feb 2015 21:34:51 +0000 (21:34 +0000)]
zx128: update the microdrive code

Move it to device 8 so we can put real floppy controllers at zero. This
is still read only, and still somewhat silly but who cares.

9 years agodevtty: fix bogus space
Alan Cox [Fri, 13 Feb 2015 21:11:31 +0000 (21:11 +0000)]
devtty: fix bogus space

9 years agozx128: turn on unikey so '£' works
Alan Cox [Fri, 13 Feb 2015 21:10:59 +0000 (21:10 +0000)]
zx128: turn on unikey so '£' works

9 years agozx128: sort out the keyboard driver
Alan Cox [Fri, 13 Feb 2015 21:10:24 +0000 (21:10 +0000)]
zx128: sort out the keyboard driver

This adds some of the missing keyboard symbols, arrow key handling etc and
also sorts out the inverted handling bug.

9 years agozx128: Fix stubs from common to do a bank restore
Alan Cox [Fri, 13 Feb 2015 21:09:50 +0000 (21:09 +0000)]
zx128: Fix stubs from common to do a bank restore

Turns out this is needed

9 years agoKernel Makefile: Fix typo
Will Sowerbutts [Fri, 13 Feb 2015 20:02:08 +0000 (20:02 +0000)]
Kernel Makefile: Fix typo

9 years agop112, n8vem-mark4: Provide boot device parsing method
Will Sowerbutts [Fri, 13 Feb 2015 20:49:33 +0000 (20:49 +0000)]
p112, n8vem-mark4: Provide boot device parsing method

9 years agoKernel: Allow platforms to provide boot device parsing method
Will Sowerbutts [Fri, 13 Feb 2015 20:44:37 +0000 (20:44 +0000)]
Kernel: Allow platforms to provide boot device parsing method

9 years agoinode.c: rest of the fix too
Alan Cox [Fri, 13 Feb 2015 19:54:06 +0000 (19:54 +0000)]
inode.c: rest of the fix too

9 years agoTODO: update
Alan Cox [Fri, 13 Feb 2015 18:20:22 +0000 (18:20 +0000)]
TODO: update

9 years agoinode: allow O_DIRECT reads building from Will's direct change
Alan Cox [Fri, 13 Feb 2015 18:17:27 +0000 (18:17 +0000)]
inode: allow O_DIRECT reads building from Will's direct change

9 years agoMerge pull request #109 from willsowerbutts/readi
EtchedPixels [Fri, 13 Feb 2015 17:54:22 +0000 (17:54 +0000)]
Merge pull request #109 from willsowerbutts/readi

Kernel: readi() - when reading whole sectors, transfer them directly into user memory.

9 years agozx128: fix banking returns through common and discard
Alan Cox [Fri, 13 Feb 2015 17:05:57 +0000 (17:05 +0000)]
zx128: fix banking returns through common and discard

With this little gem fixed we can now get all the way through the IDE probe
in banked code and to the bootdev prompt.

9 years agodevide: remove escaped debug, ifdef routine not always required
Alan Cox [Fri, 13 Feb 2015 17:03:56 +0000 (17:03 +0000)]
devide: remove escaped debug, ifdef routine not always required

9 years agozx128: switch to mainline bankfixed
Alan Cox [Fri, 13 Feb 2015 15:46:58 +0000 (15:46 +0000)]
zx128: switch to mainline bankfixed

It now handles the cases that prevented it being used

9 years agozx128: use the ROM font
Alan Cox [Fri, 13 Feb 2015 15:40:28 +0000 (15:40 +0000)]
zx128: use the ROM font

Saves us more memory

9 years agozx128: we have two banks so simplify their setup
Alan Cox [Fri, 13 Feb 2015 15:40:08 +0000 (15:40 +0000)]
zx128: we have two banks so simplify their setup

9 years agoKernel: readi() now does direct transfers only if CONFIG_LARGE_IO_DIRECT
Will Sowerbutts [Thu, 12 Feb 2015 14:33:57 +0000 (14:33 +0000)]
Kernel: readi() now does direct transfers only if CONFIG_LARGE_IO_DIRECT
is defined in the platform config.h

9 years agoKernel: readi(): respect u_sysio flag
Will Sowerbutts [Thu, 12 Feb 2015 13:55:24 +0000 (13:55 +0000)]
Kernel: readi(): respect u_sysio flag

9 years agoKernel: readi() - when reading whole sectors, transfer them directly
Will Sowerbutts [Wed, 11 Feb 2015 19:58:45 +0000 (19:58 +0000)]
Kernel: readi() - when reading whole sectors, transfer them directly
into user memory.

9 years agoKernel: revised rules.mk/target.mk
Alan Cox [Fri, 13 Feb 2015 15:25:18 +0000 (15:25 +0000)]
Kernel: revised rules.mk/target.mk

9 years agosnprintf: first cut at snprintf and friends
Alan Cox [Fri, 13 Feb 2015 15:24:18 +0000 (15:24 +0000)]
snprintf: first cut at snprintf and friends

9 years agoprocess: correct behaviour of kill to process 1
Alan Cox [Fri, 13 Feb 2015 14:54:35 +0000 (14:54 +0000)]
process: correct behaviour of kill to process 1

In unixdom this has a magic exception that only handled signals are delivered
to process 1, those that would kill it are ignored.

9 years agoRevert "Revert "Kernel: cpu-z180/rules.mk can just inherit everything from cpu-z80""
Alan Cox [Fri, 13 Feb 2015 14:52:28 +0000 (14:52 +0000)]
Revert "Revert "Kernel: cpu-z180/rules.mk can just inherit everything from cpu-z80""

Put back the Z180 change

This reverts commit 0bcaf324642c0b16b34852d48ac5272ef6d4024a.

9 years agoMakefiles: rework Will's changes in order to make overrides work again
Alan Cox [Fri, 13 Feb 2015 14:51:13 +0000 (14:51 +0000)]
Makefiles: rework Will's changes in order to make overrides work again

We now use target.mk (mandatory) for per platform initial settings and we use
rules.mk (optional) in the platform directory after the CPU rules are processed
in order to override them

9 years agoRevert "Kernel: cpu-z180/rules.mk can just inherit everything from cpu-z80"
Alan Cox [Fri, 13 Feb 2015 14:34:16 +0000 (14:34 +0000)]
Revert "Kernel: cpu-z180/rules.mk can just inherit everything from cpu-z80"

Reverting the target/platform rules.mk changes - they break too much stuff

This reverts commit 02bcf7af9276326e94d3127786d7535f37baebef.

9 years agoMerge pull request #113 from willsowerbutts/z180rules
EtchedPixels [Fri, 13 Feb 2015 13:55:59 +0000 (13:55 +0000)]
Merge pull request #113 from willsowerbutts/z180rules

Kernel: cpu-z180/rules.mk can just inherit everything from cpu-z80

9 years agoKernel: cpu-z180/rules.mk can just inherit everything from cpu-z80
Will Sowerbutts [Fri, 13 Feb 2015 10:17:51 +0000 (10:17 +0000)]
Kernel: cpu-z180/rules.mk can just inherit everything from cpu-z80

9 years agozx128: first pieces towards a disciple disk driver
Alan Cox [Thu, 12 Feb 2015 23:21:32 +0000 (23:21 +0000)]
zx128: first pieces towards a disciple disk driver

Lots of work needed yet.

9 years agozx128: rules.mk for banked
Alan Cox [Thu, 12 Feb 2015 22:12:10 +0000 (22:12 +0000)]
zx128: rules.mk for banked

9 years agoMerge pull request #111 from willsowerbutts/platformcpu
EtchedPixels [Thu, 12 Feb 2015 22:10:14 +0000 (22:10 +0000)]
Merge pull request #111 from willsowerbutts/platformcpu

Kernel: The platform rules.mk should define the CPU used

9 years agoMerge pull request #110 from willsowerbutts/discard
EtchedPixels [Thu, 12 Feb 2015 22:09:47 +0000 (22:09 +0000)]
Merge pull request #110 from willsowerbutts/discard

ds1302, devsd: Split code for the DISCARD segment into separate files.

9 years agoKernel: The platform rules.mk should define the CPU used
Will Sowerbutts [Thu, 12 Feb 2015 21:01:52 +0000 (21:01 +0000)]
Kernel: The platform rules.mk should define the CPU used

This means that only the PLATFORM variable needs to be specified in
Kernel/Makefile, instead both PLATFORM and CPU in combination.

9 years agods1302, devsd: Split code for the DISCARD segment into separate files.
Will Sowerbutts [Thu, 12 Feb 2015 20:49:49 +0000 (20:49 +0000)]
ds1302, devsd: Split code for the DISCARD segment into separate files.
Includes required platform changes for n8vem-mark4, p112.

9 years agopatches/SDCC: Add another change to put string constants in const not code
Alan Cox [Thu, 12 Feb 2015 02:02:30 +0000 (02:02 +0000)]
patches/SDCC: Add another change to put string constants in const not code

9 years agoz80: split the IDE driver __DISCARD up and remove the feature
Alan Cox [Thu, 12 Feb 2015 01:54:47 +0000 (01:54 +0000)]
z80: split the IDE driver __DISCARD up and remove the feature

We can't have multiple banked and unbanked segments in one object file as
we then have no way to make the banked linker and binmunge fix them up. The
common piece is ok as it doesn't call out to other segments in the same file
likewise calls to common code is ok. Calls betweem banks however don't end
well.

9 years agozx128: note bank changes needed
Alan Cox [Thu, 12 Feb 2015 01:53:45 +0000 (01:53 +0000)]
zx128: note bank changes needed

9 years agozx128: put the udata *first* so our maps are right
Alan Cox [Thu, 12 Feb 2015 01:53:23 +0000 (01:53 +0000)]
zx128: put the udata *first* so our maps are right

9 years agozx128: tricks.s updates
Alan Cox [Thu, 12 Feb 2015 01:52:37 +0000 (01:52 +0000)]
zx128: tricks.s updates

This still needs a lot of work doing but it's a starting point and we don't
crash waiting for input

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