FUZIX.git
6 years agoz80fixedbank-banked: apply the same SP fix as to the main fixedbank code
Alan Cox [Fri, 10 Aug 2018 23:32:42 +0000 (00:32 +0100)]
z80fixedbank-banked: apply the same SP fix as to the main fixedbank code

6 years agodevide: save two bytes and a few clocks
Alan Cox [Fri, 10 Aug 2018 23:32:20 +0000 (00:32 +0100)]
devide: save two bytes and a few clocks

6 years agosam: update boot logic
Alan Cox [Fri, 10 Aug 2018 23:31:49 +0000 (00:31 +0100)]
sam: update boot logic

Thanks to the various Sam folks who explained how BOOT works

6 years agorabbit: I guess we use a different rst
Alan Cox [Fri, 10 Aug 2018 23:31:36 +0000 (00:31 +0100)]
rabbit: I guess we use a different rst

6 years agotrs80m1: simplify make clean
Alan Cox [Fri, 10 Aug 2018 23:29:28 +0000 (00:29 +0100)]
trs80m1: simplify make clean

6 years agotrs80m1: adjust the istack_switched_sp so it doesn't get scribbled
Alan Cox [Fri, 10 Aug 2018 23:29:00 +0000 (00:29 +0100)]
trs80m1: adjust the istack_switched_sp so it doesn't get scribbled

With this fixed we seem to be back in business and 768 bytes better off

6 years agotrs80m1: and make the IDE drives visible
Alan Cox [Fri, 10 Aug 2018 21:27:50 +0000 (22:27 +0100)]
trs80m1: and make the IDE drives visible

6 years agotrs80m1: turn on the probing
Alan Cox [Fri, 10 Aug 2018 21:26:27 +0000 (22:26 +0100)]
trs80m1: turn on the probing

6 years agotrs80m1: rearrange memory so that we get 768 bytes back
Alan Cox [Fri, 10 Aug 2018 21:25:29 +0000 (22:25 +0100)]
trs80m1: rearrange memory so that we get 768 bytes back

We stick the udata/stack over 4100-42FF, and the istack over the boot area at
4300-43FF

6 years agotrs80m1: turn IDE on in build
Alan Cox [Fri, 10 Aug 2018 21:24:42 +0000 (22:24 +0100)]
trs80m1: turn IDE on in build

6 years agotrs80m1: build the IDE layer for this machine
Alan Cox [Fri, 10 Aug 2018 21:23:54 +0000 (22:23 +0100)]
trs80m1: build the IDE layer for this machine

6 years agotrs80m1: add .module to floppy
Alan Cox [Fri, 10 Aug 2018 21:22:53 +0000 (22:22 +0100)]
trs80m1: add .module to floppy

6 years agotrs80m1: add IDE layer helpers
Alan Cox [Fri, 10 Aug 2018 21:20:22 +0000 (22:20 +0100)]
trs80m1: add IDE layer helpers

6 years agoAdd .pkg for dragon-nx32 platform
Tormod Volden [Thu, 9 Aug 2018 21:56:11 +0000 (23:56 +0200)]
Add .pkg for dragon-nx32 platform

6 years agobuild-filesystem-ng: Scan Kernel folder for package files
Tormod Volden [Thu, 9 Aug 2018 21:56:10 +0000 (23:56 +0200)]
build-filesystem-ng: Scan Kernel folder for package files

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agorc2014: hopefully correctly turn on the IDE CF
Alan Cox [Thu, 9 Aug 2018 18:15:37 +0000 (19:15 +0100)]
rc2014: hopefully correctly turn on the IDE CF

6 years agosam: next pass over the code working on stuff
Alan Cox [Wed, 8 Aug 2018 22:16:19 +0000 (23:16 +0100)]
sam: next pass over the code working on stuff

Still lots and lots to sort out

6 years agorc2014: init IDE
Alan Cox [Wed, 8 Aug 2018 22:15:49 +0000 (23:15 +0100)]
rc2014: init IDE

6 years agobank32k: note need to do swap
Alan Cox [Wed, 8 Aug 2018 22:15:27 +0000 (23:15 +0100)]
bank32k: note need to do swap

6 years agoMakefile: The Amstrad NC100 moved
Alan Cox [Tue, 7 Aug 2018 23:16:32 +0000 (00:16 +0100)]
Makefile: The Amstrad NC100 moved

6 years agogmtime: not a needed optimization
Alan Cox [Tue, 7 Aug 2018 23:15:49 +0000 (00:15 +0100)]
gmtime: not a needed optimization

6 years agoz80: Initial documentation on how 32K/32K works
Alan Cox [Tue, 7 Aug 2018 23:14:54 +0000 (00:14 +0100)]
z80: Initial documentation on how 32K/32K works

6 years agokernel: initial development tree for the Sam Coupe
Alan Cox [Tue, 7 Aug 2018 23:13:43 +0000 (00:13 +0100)]
kernel: initial development tree for the Sam Coupe

This is so that the 32K/32K split code can be developed. This memory model is
actually a lot more complex and different to the existing Z80 models we use.

Don't expect anything runnable for quite some time.

6 years agoz80: fix a nasty bug with the full bank switching model on swapless
Alan Cox [Tue, 7 Aug 2018 23:10:05 +0000 (00:10 +0100)]
z80: fix a nasty bug with the full bank switching model on swapless

The swap case is ok as it always runs on the swap stack. The non swap case
restores the process kernel stack underneath the curent sp. That in itself is
fine as we have interrupts off. However we then called map_kernel which if
the current sp was above the sp of the save would corrupt the stack.

Instead restore sp first so that we push and pop data below the saved stack
content

6 years agoz80: first sketches of the 32K/32K support
Alan Cox [Tue, 7 Aug 2018 23:07:46 +0000 (00:07 +0100)]
z80: first sketches of the 32K/32K support

Some of this will also hopefully apply to the 64K/ROM switch and the Cromemco /
NASCOM style models where you have write through to multiple banks but 64K
switching

6 years agolowlevel-z80: removed dead symbol import
Alan Cox [Tue, 7 Aug 2018 23:05:58 +0000 (00:05 +0100)]
lowlevel-z80: removed dead symbol import

6 years agokernel.def: add PAGE2 define
Alan Cox [Tue, 7 Aug 2018 23:05:33 +0000 (00:05 +0100)]
kernel.def: add PAGE2 define

We'll need that shortly

6 years agofont: add an expanded 8x8 font for 2bpp displays
Alan Cox [Tue, 7 Aug 2018 23:04:18 +0000 (00:04 +0100)]
font: add an expanded 8x8 font for 2bpp displays

We'll need this for the SAM Coupe where we don't have a 1pp high res mode.
(We may want a 6bit to 12bit font in the end but for now keep it simple).

6 years agotzset: more patches moving towards proper timezone support
Alan Cox [Thu, 2 Aug 2018 20:55:45 +0000 (21:55 +0100)]
tzset: more patches moving towards proper timezone support

It's enough to make you want summer time abolished!

6 years agotrslabel: fix missing error argument
Alan Cox [Tue, 31 Jul 2018 19:55:51 +0000 (20:55 +0100)]
trslabel: fix missing error argument

6 years agorc2014: add devinput
Alan Cox [Tue, 31 Jul 2018 19:55:29 +0000 (20:55 +0100)]
rc2014: add devinput

6 years agoBuild setdate for all platforms and add it to filesystem
Tormod Volden [Sat, 28 Jul 2018 11:39:37 +0000 (13:39 +0200)]
Build setdate for all platforms and add it to filesystem

seq was also missing on 6502 and pdp11.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Update README
Tormod Volden [Sat, 28 Jul 2018 10:36:36 +0000 (12:36 +0200)]
dragon-nx32: Update README

Also remove XRoar patch which went upstream.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agogm8x9: fix typo
Alan Cox [Fri, 27 Jul 2018 21:00:08 +0000 (22:00 +0100)]
gm8x9: fix typo

6 years agodragon-nx-32: tweaks to scsi driver
Alan Cox [Fri, 27 Jul 2018 20:59:21 +0000 (21:59 +0100)]
dragon-nx-32: tweaks to scsi driver

No way to test this yet so I doubt it works but it'll not-works better than
before 8)

6 years agorc2014: do a pile of cleanup work
Alan Cox [Fri, 27 Jul 2018 20:56:27 +0000 (21:56 +0100)]
rc2014: do a pile of cleanup work

- Start working on tty autodetect
- Sort out non standard SIO layouts

Still need to look further into the CTC usage and tidy up the boot logic so
we can do a handy boot from CP/M

6 years agopcw8256: update README
Alan Cox [Fri, 27 Jul 2018 20:52:33 +0000 (21:52 +0100)]
pcw8256: update README

6 years agorc-files: run setdate in the boot up
Alan Cox [Fri, 27 Jul 2018 20:52:09 +0000 (21:52 +0100)]
rc-files: run setdate in the boot up

6 years agodragon-nx32: (MOOH) Optimized fork copy bank routine
Tormod Volden [Tue, 24 Jul 2018 21:38:44 +0000 (23:38 +0200)]
dragon-nx32: (MOOH) Optimized fork copy bank routine

Around twice as fast. Now about 0.24 s for a 24KB large sh.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agotrs80m1: update README
Alan Cox [Tue, 24 Jul 2018 23:16:40 +0000 (00:16 +0100)]
trs80m1: update README

6 years agopcw8256: correct clock rate
Alan Cox [Tue, 24 Jul 2018 23:16:19 +0000 (00:16 +0100)]
pcw8256: correct clock rate

6 years agofsck: note an improvement to make
Alan Cox [Tue, 24 Jul 2018 23:15:38 +0000 (00:15 +0100)]
fsck: note an improvement to make

6 years agomkdir: fix size check
Alan Cox [Tue, 24 Jul 2018 23:15:25 +0000 (00:15 +0100)]
mkdir: fix size check

6 years agoinit: Allow empty process field in inittab
Tormod Volden [Mon, 23 Jul 2018 23:15:20 +0000 (01:15 +0200)]
init: Allow empty process field in inittab

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Add virtual consoles (6847 text mode)
Tormod Volden [Mon, 23 Jul 2018 21:57:38 +0000 (23:57 +0200)]
dragon-nx32: Add virtual consoles (6847 text mode)

Copy and rename the common CONFIG_VT_SIMPLE code and use it with the
6847 text mode.

This gives us:

tty1 Graphic mode console at 0x0400
tty2 CRT9128
tty3 VC 0 text mode at 0x1c00
tty4 VC 1 text mode at 0x1e00

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Reduce crt9128 screen size because of overscan
Tormod Volden [Mon, 23 Jul 2018 21:57:37 +0000 (23:57 +0200)]
dragon-nx32: Reduce crt9128 screen size because of overscan

On most monitors the last columns and lines of the CRT9128 output
are not visible.

The sync parameters were mask programmable on the CRT9128 so there might
be exceptions but this seems a common issue with the standard parts
available.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Add dual-screen support with CRT9128
Tormod Volden [Mon, 23 Jul 2018 21:57:36 +0000 (23:57 +0200)]
dragon-nx32: Add dual-screen support with CRT9128

Adds CRT9128 card on tty2 with shared keyboard. Switch tty with
ctrl-1 and ctrl-2 (CLEAR-1 and CLEAR-2 on Dragon keyboard).

The 6847 graphics VT interface functions are made private and
these or the CRT9128 ones are called depending on the current TTY.

Add video.h just in case (not needed since multiplexer is asm).

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agocrt9128: Add timeout in sync wait
Tormod Volden [Mon, 23 Jul 2018 21:57:35 +0000 (23:57 +0200)]
crt9128: Add timeout in sync wait

And try reset the chip if there is a timeout.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agocrt9128: Rename VT interface functions to be private
Tormod Volden [Mon, 23 Jul 2018 21:57:34 +0000 (23:57 +0200)]
crt9128: Rename VT interface functions to be private

So that they can be used in multi-head setups.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Remove unused VT macros in config.h
Tormod Volden [Mon, 23 Jul 2018 21:57:33 +0000 (23:57 +0200)]
dragon-nx32: Remove unused VT macros in config.h

Previously used with CONFIG_VT_SIMPLE

VT_BASE remains in use in devtty.c

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Make dwload support MOOH
Tormod Volden [Mon, 23 Jul 2018 21:48:32 +0000 (23:48 +0200)]
dragon-nx32: Make dwload support MOOH

It should remain compatible with the nx32 boards (Spinx-512).

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: Allow building MOOH variant (nx32 memory model)
Tormod Volden [Mon, 23 Jul 2018 21:48:31 +0000 (23:48 +0200)]
dragon-nx32: Allow building MOOH variant (nx32 memory model)

This MOOH variant just groups the 8KB pages into 32KB banks so that it
can run as an nx32 system.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agodragon-nx32: spi.s: Use macro defines for 65SPI flags
Tormod Volden [Mon, 23 Jul 2018 21:40:28 +0000 (23:40 +0200)]
dragon-nx32: spi.s: Use macro defines for 65SPI flags

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agoMakefile.pdp11: add Makefile that was omitted
Alan Cox [Tue, 24 Jul 2018 23:12:57 +0000 (00:12 +0100)]
Makefile.pdp11: add Makefile that was omitted

6 years agomkdir: documentation
Alan Cox [Tue, 24 Jul 2018 23:12:39 +0000 (00:12 +0100)]
mkdir: documentation

6 years agopcw8256: fix defines for networking
Alan Cox [Sun, 22 Jul 2018 22:26:54 +0000 (23:26 +0100)]
pcw8256: fix defines for networking

6 years agofont8x8; revert deconstification
Alan Cox [Sun, 22 Jul 2018 22:25:46 +0000 (23:25 +0100)]
font8x8; revert deconstification

We don't want sdcc making a huge initializer blob of it. Once we fix sdcc
we can sort this out. It might matter for other ports if so we may have to
ifdef it a bit

6 years agotzset: add draft support for shift time not just day
Alan Cox [Sun, 22 Jul 2018 15:55:17 +0000 (16:55 +0100)]
tzset: add draft support for shift time not just day

6 years agosys/super.h: properly expose the structure in user space form
Alan Cox [Sun, 22 Jul 2018 14:16:38 +0000 (15:16 +0100)]
sys/super.h: properly expose the structure in user space form

6 years agotzset: continue working on daylight savings
Alan Cox [Sun, 22 Jul 2018 14:16:25 +0000 (15:16 +0100)]
tzset: continue working on daylight savings

6 years agotzset: first cut at a fullish parser
Alan Cox [Sun, 22 Jul 2018 12:54:48 +0000 (13:54 +0100)]
tzset: first cut at a fullish parser

6 years agotzset: parse more format information
Alan Cox [Sat, 21 Jul 2018 23:37:44 +0000 (00:37 +0100)]
tzset: parse more format information

This now supports the most basic format.

6 years agolibs: for now at least put a valid byte in isdst
Alan Cox [Sat, 21 Jul 2018 23:35:57 +0000 (00:35 +0100)]
libs: for now at least put a valid byte in isdst

6 years agodate: rewrite and add manual page
Alan Cox [Sat, 21 Jul 2018 23:35:11 +0000 (00:35 +0100)]
date: rewrite and add manual page

We still need to support custom formats but that needs the fancy time format
stuff we don't yet have.

6 years agolibc: add basical localtime support
Alan Cox [Sat, 21 Jul 2018 20:55:14 +0000 (21:55 +0100)]
libc: add basical localtime support

We now pass the right things around to make this work.

At the moment the only format understood is zone+-shift in hours. So for example
TZ=BST+1.

6 years agolocaltim_r: do time zone changes
Alan Cox [Sat, 21 Jul 2018 19:41:45 +0000 (20:41 +0100)]
localtim_r: do time zone changes

We had local/gmtime swapped

6 years agogmtime_r: is not localtime_r .. oops
Alan Cox [Sat, 21 Jul 2018 19:41:06 +0000 (20:41 +0100)]
gmtime_r: is not localtime_r .. oops

6 years agomv/cp: Initial documentation
Alan Cox [Sat, 21 Jul 2018 18:24:45 +0000 (19:24 +0100)]
mv/cp: Initial documentation

6 years agoz80pack: createdrives is obsolete
Alan Cox [Sat, 21 Jul 2018 18:10:26 +0000 (19:10 +0100)]
z80pack: createdrives is obsolete

6 years agomv: use a large copy buffer
Alan Cox [Sat, 21 Jul 2018 18:08:00 +0000 (19:08 +0100)]
mv: use a large copy buffer

6 years agoDiskFormats: initial draft
Alan Cox [Sat, 21 Jul 2018 12:28:50 +0000 (13:28 +0100)]
DiskFormats: initial draft

Feedback welcome

6 years agonascom: Initial work in progress code (not complete)
Alan Cox [Sat, 21 Jul 2018 12:03:36 +0000 (13:03 +0100)]
nascom: Initial work in progress code (not complete)

These are the initial pieces to support the Lucas/Nascom 80-bus systems. There
is a lot to do before this is remotely useful.

6 years agotrs80m1: note some things to review
Alan Cox [Sat, 21 Jul 2018 12:03:11 +0000 (13:03 +0100)]
trs80m1: note some things to review

6 years agodevscsi: don't compile in unused data structures when not needed
Alan Cox [Sat, 21 Jul 2018 12:01:59 +0000 (13:01 +0100)]
devscsi: don't compile in unused data structures when not needed

6 years agoMerge pull request #646 from DBOTW/trslabel
EtchedPixels [Wed, 18 Jul 2018 17:37:05 +0000 (18:37 +0100)]
Merge pull request #646 from DBOTW/trslabel

tools: build trslabel

6 years agotools: build trslabel
Jenz Guenther [Wed, 18 Jul 2018 16:49:45 +0000 (18:49 +0200)]
tools: build trslabel

6 years agoMerge pull request #645 from beretta42/typo
EtchedPixels [Mon, 16 Jul 2018 22:56:08 +0000 (23:56 +0100)]
Merge pull request #645 from beretta42/typo

coco3: fix link script typo

6 years agococo3: fix link script typo
Brett Gordon [Mon, 16 Jul 2018 14:20:11 +0000 (10:20 -0400)]
coco3: fix link script typo

6 years agoapps: Additional 68K makefile entries
Alan Cox [Sun, 15 Jul 2018 22:11:34 +0000 (23:11 +0100)]
apps: Additional 68K makefile entries

6 years agotrs80: fix dumb bug when I added the input patch
Alan Cox [Sun, 15 Jul 2018 22:02:37 +0000 (23:02 +0100)]
trs80: fix dumb bug when I added the input patch

Reported by Jenz Guenther

6 years agols: Add a cleaned up slightly extended V7 ls for comparison
Alan Cox [Sun, 15 Jul 2018 00:16:21 +0000 (01:16 +0100)]
ls: Add a cleaned up slightly extended V7 ls for comparison

I don't think I like it or our current ls that much.

6 years agocp: use bigger buffers
Alan Cox [Sun, 15 Jul 2018 00:16:13 +0000 (01:16 +0100)]
cp: use bigger buffers

6 years agoprocess: small optimzations
Alan Cox [Sat, 14 Jul 2018 23:40:27 +0000 (00:40 +0100)]
process: small optimzations

6 years agokernel: dead code fix
Alan Cox [Sat, 14 Jul 2018 23:37:11 +0000 (00:37 +0100)]
kernel: dead code fix

6 years agocp: fix silence when given insufficient arguments
Alan Cox [Sat, 14 Jul 2018 20:59:28 +0000 (21:59 +0100)]
cp: fix silence when given insufficient arguments

6 years agoamstradnc: fix silly graphics bug
Alan Cox [Sat, 14 Jul 2018 20:56:22 +0000 (21:56 +0100)]
amstradnc: fix silly graphics bug

6 years agokernel: update version to 0.2rc1
Alan Cox [Sat, 14 Jul 2018 20:51:17 +0000 (21:51 +0100)]
kernel: update version to 0.2rc1

We are now feature complete for my 0.2 target list on the kernel side

6 years agotrs80m1: rearrange memory a bit and turn on networking
Alan Cox [Sat, 14 Jul 2018 20:50:03 +0000 (21:50 +0100)]
trs80m1: rearrange memory a bit and turn on networking

It all fits so why not.

6 years agotrs80m1: add input meta handler
Alan Cox [Sat, 14 Jul 2018 20:49:48 +0000 (21:49 +0100)]
trs80m1: add input meta handler

6 years agotrs80: make the model 4 use the new handler
Alan Cox [Sat, 14 Jul 2018 20:49:29 +0000 (21:49 +0100)]
trs80: make the model 4 use the new handler

6 years agokernel: add the input meta handlers
Alan Cox [Sat, 14 Jul 2018 20:49:04 +0000 (21:49 +0100)]
kernel: add the input meta handlers

6 years agotty: turn on the data_consumed event
Alan Cox [Sat, 14 Jul 2018 15:43:38 +0000 (16:43 +0100)]
tty: turn on the data_consumed event

6 years agotrs80m1: further tty debug
Alan Cox [Sat, 14 Jul 2018 15:43:30 +0000 (16:43 +0100)]
trs80m1: further tty debug

6 years agotty: prototypes for the new helper
Alan Cox [Sat, 14 Jul 2018 15:43:00 +0000 (16:43 +0100)]
tty: prototypes for the new helper

6 years agotty: expose re-enabled fullq() helper as the tty layer will need this
Alan Cox [Sat, 14 Jul 2018 15:42:33 +0000 (16:42 +0100)]
tty: expose re-enabled fullq() helper as the tty layer will need this

6 years agotty: add the new tty_data_consumed method
Alan Cox [Sat, 14 Jul 2018 15:42:04 +0000 (16:42 +0100)]
tty: add the new tty_data_consumed method

This is needed for flow control but does mean we need to add a null helper
everywhere.

6 years agotrs80m1: add flow control and fix some other bugs
Alan Cox [Sat, 14 Jul 2018 15:19:42 +0000 (16:19 +0100)]
trs80m1: add flow control and fix some other bugs

This relies on a pending core change that will get pushed soon but needs to
be propogated everywhere else first.

6 years agotrs80m1: clean up devtty.c with indent etc
Alan Cox [Sat, 14 Jul 2018 14:48:17 +0000 (15:48 +0100)]
trs80m1: clean up devtty.c with indent etc

No code changes

6 years agotrs80m1: video genie serial ports .. continued
Alan Cox [Sat, 14 Jul 2018 14:46:49 +0000 (15:46 +0100)]
trs80m1: video genie serial ports .. continued

6 years agolibc: Tidy up use of __NaN
Alan Cox [Sat, 14 Jul 2018 14:29:30 +0000 (15:29 +0100)]
libc: Tidy up use of __NaN

Now that SDCC only warns on divison by 0 we can put these back as they should
be so they also force any appropriate exception handling.