FUZIX.git
6 years agoMerge branch 'master' into time
EtchedPixels [Tue, 10 Apr 2018 13:37:44 +0000 (14:37 +0100)]
Merge branch 'master' into time

6 years agoz80pack: update to platform_rtc_ naming
Alan Cox [Tue, 10 Apr 2018 12:30:17 +0000 (13:30 +0100)]
z80pack: update to platform_rtc_ naming

6 years agonc100: remove dead functionality breaking build
Alan Cox [Tue, 10 Apr 2018 12:29:57 +0000 (13:29 +0100)]
nc100: remove dead functionality breaking build

6 years agopcw8256: README
Alan Cox [Tue, 10 Apr 2018 12:29:42 +0000 (13:29 +0100)]
pcw8256: README

6 years agopcw8256: add now required copy_common method
Alan Cox [Tue, 10 Apr 2018 12:29:11 +0000 (13:29 +0100)]
pcw8256: add now required copy_common method

Lots more needed to make this platform work

6 years agoz80pack-lite: Fix typo breaking build
Alan Cox [Tue, 10 Apr 2018 12:28:57 +0000 (13:28 +0100)]
z80pack-lite: Fix typo breaking build

6 years agods1302: move to platform_rtc_ naming
Alan Cox [Mon, 9 Apr 2018 20:37:22 +0000 (21:37 +0100)]
ds1302: move to platform_rtc_ naming

6 years agoz180: fix rename of monitor entry
Alan Cox [Mon, 9 Apr 2018 20:37:09 +0000 (21:37 +0100)]
z180: fix rename of monitor entry

6 years agotime: change references to rtc_secs to platform_rtc_secs
Brett Gordon [Sun, 8 Apr 2018 23:07:50 +0000 (19:07 -0400)]
time: change references to rtc_secs to platform_rtc_secs

rtc_secs() has no prototype anymore, and errant results from an
implied call was speeding my clock up by 51 secs every RTC_INTERVAL.
change everyone over to new api.

6 years ago6502: fix make clean
Alan Cox [Sun, 8 Apr 2018 23:05:22 +0000 (00:05 +0100)]
6502: fix make clean

6 years ago6502: fix make clean
Alan Cox [Sun, 8 Apr 2018 23:05:04 +0000 (00:05 +0100)]
6502: fix make clean

6 years ago65c816: align with platform_ change for monitor call
Alan Cox [Sun, 8 Apr 2018 23:04:28 +0000 (00:04 +0100)]
65c816: align with platform_ change for monitor call

6 years agortc: change rtc to platform_
Alan Cox [Sun, 8 Apr 2018 23:04:14 +0000 (00:04 +0100)]
rtc: change rtc to platform_

6 years agococo3: redo drivewire time rtc / simplify.
Brett Gordon [Sun, 8 Apr 2018 22:28:27 +0000 (18:28 -0400)]
coco3: redo drivewire time rtc / simplify.

6 years agococo3: move to platform_rtc
Alan Cox [Sun, 8 Apr 2018 20:42:43 +0000 (21:42 +0100)]
coco3: move to platform_rtc

6 years agoasz80: fix Makefile clean for 6809
Alan Cox [Sun, 8 Apr 2018 20:38:55 +0000 (21:38 +0100)]
asz80: fix Makefile clean for 6809

6 years agotrs80: fix (I hope) the display setup logic
Alan Cox [Sun, 8 Apr 2018 20:35:39 +0000 (21:35 +0100)]
trs80: fix (I hope) the display setup logic

The emulator doesn't really emulate this so hopefully its now right on the real
beastie

6 years agotimer: start switching platforms to platform_ naming
Alan Cox [Sun, 8 Apr 2018 20:35:25 +0000 (21:35 +0100)]
timer: start switching platforms to platform_ naming

6 years agoz80: build gpt tools
Alan Cox [Sun, 8 Apr 2018 20:31:24 +0000 (21:31 +0100)]
z80: build gpt tools

6 years agoLibrary: fix builds on systems not using gcc
Alan Cox [Sun, 8 Apr 2018 20:30:55 +0000 (21:30 +0100)]
Library: fix builds on systems not using gcc

6 years agoMerge pull request #599 from beretta42/net
EtchedPixels [Sun, 8 Apr 2018 19:55:42 +0000 (20:55 +0100)]
Merge pull request #599 from beretta42/net

net_native: clear event upon unhooking.

6 years agoMerge pull request #600 from beretta42/apple
EtchedPixels [Sun, 8 Apr 2018 19:55:08 +0000 (20:55 +0100)]
Merge pull request #600 from beretta42/apple

lib: fix 6502 syscall generator

6 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sun, 8 Apr 2018 19:54:06 +0000 (20:54 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

6 years agopdp11: commit makefile and crt0 code
Alan Cox [Sun, 8 Apr 2018 19:52:03 +0000 (20:52 +0100)]
pdp11: commit makefile and crt0 code

6 years agocrt0: Fix return propogation to exit
Alan Cox [Sun, 8 Apr 2018 19:51:21 +0000 (20:51 +0100)]
crt0: Fix return propogation to exit

Reported by David Given

6 years agoMerge pull request #604 from beretta42/tar
EtchedPixels [Sun, 8 Apr 2018 19:43:24 +0000 (20:43 +0100)]
Merge pull request #604 from beretta42/tar

tar: issue fixes

6 years agotar: truncate existing files.
Brett Gordon [Sun, 8 Apr 2018 16:42:12 +0000 (12:42 -0400)]
tar: truncate existing files.

6 years agotar: make parent directories
Brett Gordon [Sun, 8 Apr 2018 16:41:29 +0000 (12:41 -0400)]
tar: make parent directories

6 years agonet_native: clear event upon unhooking.
Brett Gordon [Sun, 8 Apr 2018 03:27:10 +0000 (23:27 -0400)]
net_native: clear event upon unhooking.

this prevents netdev_findevent() from continually reporting on a
dead socket, thus preventing any other socket/event from being
reported to the network daemon.

6 years agocromemco: first cut at the low level disk drivers for the 16FDC
Alan Cox [Sat, 7 Apr 2018 17:33:32 +0000 (18:33 +0100)]
cromemco: first cut at the low level disk drivers for the 16FDC

To fix:
- SD support
- SS support
- Do a head settle delay when changing side
- No support for the slow 8" disk option (PerSci disks ?)

and probably a ton of bugs as this is an initial commit and untested!

6 years agokernel: Pre-emption rate is supposed to be tick rate independent!
Alan Cox [Fri, 6 Apr 2018 18:38:01 +0000 (19:38 +0100)]
kernel: Pre-emption rate is supposed to be tick rate independent!

6 years agoz80pack: swap define
Alan Cox [Fri, 6 Apr 2018 18:37:04 +0000 (19:37 +0100)]
z80pack: swap define

6 years agoz80: allow fixedbank to used swapless
Alan Cox [Fri, 6 Apr 2018 18:36:46 +0000 (19:36 +0100)]
z80: allow fixedbank to used swapless

6 years agocromemco: initial draft port
Alan Cox [Fri, 6 Apr 2018 18:35:48 +0000 (19:35 +0100)]
cromemco: initial draft port

No floppy driver yet and boot blocks are untested

6 years agolib: fix 6502 syscall generator
Brett Gordon [Thu, 5 Apr 2018 16:15:58 +0000 (12:15 -0400)]
lib: fix 6502 syscall generator

was trying to use an unitialized index to array of syscall names.

6 years agosignals: fix signal leak by pushing back a pending signal when we recalc
Alan Cox [Mon, 2 Apr 2018 22:01:15 +0000 (23:01 +0100)]
signals: fix signal leak by pushing back a pending signal when we recalc

6 years agofilesys: fix errno 0 failure with overlong path
Alan Cox [Mon, 2 Apr 2018 22:01:02 +0000 (23:01 +0100)]
filesys: fix errno 0 failure with overlong path

6 years agomkfs: make it clearer how block free list is set up
Alan Cox [Mon, 2 Apr 2018 21:39:37 +0000 (22:39 +0100)]
mkfs: make it clearer how block free list is set up

6 years agonetd: Update for new protocol
Alan Cox [Fri, 30 Mar 2018 23:29:29 +0000 (00:29 +0100)]
netd: Update for new protocol

Align the headers
Honour a request for an unhook as soon as we can (immediately if the uIP link
is already dead)

6 years agonet_native: implement new callback behaviour
Alan Cox [Fri, 30 Mar 2018 23:27:03 +0000 (00:27 +0100)]
net_native: implement new callback behaviour

We sendd a new UNHOOK message to the netd stack and when it replies to say
it's done the job we tell the kernel it can recycle the socket.

6 years agosyscall_net: make close non blocking add a callback for reuse
Alan Cox [Fri, 30 Mar 2018 23:25:50 +0000 (00:25 +0100)]
syscall_net: make close non blocking add a callback for reuse

The new mode is close() sends a message to ask the stack to clean up. The
socket ends up dead until the stack calls ack into closed() to say that the
resources are now free.

6 years agoprocess: turn off some debug
Alan Cox [Fri, 30 Mar 2018 23:25:34 +0000 (00:25 +0100)]
process: turn off some debug

6 years agokernel: add pre-emption signal checks to assembly paths
Alan Cox [Fri, 30 Mar 2018 21:58:06 +0000 (22:58 +0100)]
kernel: add pre-emption signal checks to assembly paths

With these in place we appear to be good except for some kind of net
breakage that needs resolving.

6 years agoz80: fix stray switchout
Alan Cox [Fri, 30 Mar 2018 21:46:46 +0000 (22:46 +0100)]
z80: fix stray switchout

This gets us close to where need to be. All that is broken by all this changing
around now is signal handling on pre-emption

6 years agoprocess: make signal_parent reusable, and document
Alan Cox [Fri, 30 Mar 2018 21:40:22 +0000 (22:40 +0100)]
process: make signal_parent reusable, and document

6 years agoprocess: fix the various buglets in the scheduler changes
Alan Cox [Fri, 30 Mar 2018 21:31:42 +0000 (22:31 +0100)]
process: fix the various buglets in the scheduler changes

6 years agonet_native: test use for psleep_nosig
Alan Cox [Fri, 30 Mar 2018 21:24:45 +0000 (22:24 +0100)]
net_native: test use for psleep_nosig

6 years agokernel: pre-empt should now call the platform method directly
Alan Cox [Fri, 30 Mar 2018 21:24:20 +0000 (22:24 +0100)]
kernel: pre-empt should now call the platform method directly

6 years agotrap/platform rename: Make more consistent use of platform_ naming
Alan Cox [Fri, 30 Mar 2018 19:31:16 +0000 (20:31 +0100)]
trap/platform rename: Make more consistent use of platform_ naming

6 years agoplatform_switchout
Alan Cox [Thu, 29 Mar 2018 22:55:49 +0000 (23:55 +0100)]
platform_switchout

Updated everywhere that looks like it needs it

6 years agomsx1: update to platform_ version
Alan Cox [Thu, 29 Mar 2018 17:23:18 +0000 (18:23 +0100)]
msx1: update to platform_ version

6 years agomsx2: update to scheduler change
Alan Cox [Thu, 29 Mar 2018 14:57:13 +0000 (15:57 +0100)]
msx2: update to scheduler change

6 years agogpt/mbr: don't assume gcc isms are present
Alan Cox [Thu, 29 Mar 2018 14:56:54 +0000 (15:56 +0100)]
gpt/mbr: don't assume gcc isms are present

6 years agocpu.h: add __packed
Alan Cox [Thu, 29 Mar 2018 14:56:34 +0000 (15:56 +0100)]
cpu.h: add __packed

6 years agoprocess: move all the optimizations of switchout() into the C code
Alan Cox [Thu, 29 Mar 2018 14:42:24 +0000 (15:42 +0100)]
process: move all the optimizations of switchout() into the C code

This fixes a ton of duplication in the asm code, and in addition makes the
pre-emption cases faster as we know in those cases that the optimizations
never apply.

switchout() becomes a C fnction

platform_switchout() is now the required platform specific stub which shouldn't
need to do any optimizing beyond udata copy elimiations.

Merge a z80fixedbank example of the changes.

6 years agofilesys: add fields for extended superblock
Alan Cox [Thu, 29 Mar 2018 14:41:16 +0000 (15:41 +0100)]
filesys: add fields for extended superblock

Also add a platform_switchout define ready for the process.c changes

6 years agoinode: file system updates
Alan Cox [Thu, 29 Mar 2018 14:39:42 +0000 (15:39 +0100)]
inode: file system updates

Add a superblock index to inodes. It does cost us a byte per inode but it
also speeds things up somewhat. Also we will need it for big fs support.

Fix inode * errors as inoptr should be used

Set the basis for big file system support (nowhere near complete yet)

6 years agomkfs: fix printf reporting
Alan Cox [Thu, 29 Mar 2018 14:38:26 +0000 (15:38 +0100)]
mkfs: fix printf reporting

6 years agomkfs: first cut at supporting extended block sizes
Alan Cox [Thu, 29 Mar 2018 14:37:02 +0000 (15:37 +0100)]
mkfs: first cut at supporting extended block sizes

6 years agoproc.h: add new process state
Alan Cox [Mon, 26 Mar 2018 21:12:33 +0000 (22:12 +0100)]
proc.h: add new process state

6 years agosyscall: Fix open() panic introduced by lock change
Alan Cox [Mon, 26 Mar 2018 21:11:58 +0000 (22:11 +0100)]
syscall: Fix open() panic introduced by lock change

6 years agobinman: off by one
Alan Cox [Mon, 26 Mar 2018 21:11:41 +0000 (22:11 +0100)]
binman: off by one

6 years agosyscall_name: make const
Alan Cox [Mon, 26 Mar 2018 20:34:15 +0000 (21:34 +0100)]
syscall_name: make const

6 years agoprocess: fix build bugs
Alan Cox [Mon, 26 Mar 2018 19:59:35 +0000 (20:59 +0100)]
process: fix build bugs

6 years agoz80fixedbank: first updated platform code for I/O wait
Alan Cox [Mon, 26 Mar 2018 19:53:51 +0000 (20:53 +0100)]
z80fixedbank: first updated platform code for I/O wait

Other platforms need the smae logic to bounce out of sleep when a signal
is shown pending

6 years agoprocess: I/O wait support
Alan Cox [Mon, 26 Mar 2018 19:53:38 +0000 (20:53 +0100)]
process: I/O wait support

6 years agoiowait:introduce pieces for iowait, also other bits for inode sleep
Alan Cox [Mon, 26 Mar 2018 19:52:38 +0000 (20:52 +0100)]
iowait:introduce pieces for iowait, also other bits for inode sleep

6 years agoinode: draft code for sleeping file system support
Alan Cox [Mon, 26 Mar 2018 19:51:59 +0000 (20:51 +0100)]
inode: draft code for sleeping file system support

6 years agogames: Move startrek to integer
Alan Cox [Sun, 18 Mar 2018 19:40:23 +0000 (19:40 +0000)]
games: Move startrek to integer

We no longer use fp in it so we don't want to suck in the FP versions of
printf and friends.

6 years agostartrek: tidy up further
Alan Cox [Sun, 18 Mar 2018 19:39:26 +0000 (19:39 +0000)]
startrek: tidy up further

6 years agotrek: continue tidying up and shrinking down
Alan Cox [Sat, 17 Mar 2018 21:34:23 +0000 (21:34 +0000)]
trek: continue tidying up and shrinking down

6 years agotrek: keep tidying up globals
Alan Cox [Sat, 17 Mar 2018 20:27:49 +0000 (20:27 +0000)]
trek: keep tidying up globals

6 years agostartrek: integer trek seems to work
Alan Cox [Thu, 15 Mar 2018 21:54:44 +0000 (21:54 +0000)]
startrek: integer trek seems to work

Lots of debug to remove once we are sure

6 years agostartrek: tracking now seems to work still a few floats to zap
Alan Cox [Thu, 15 Mar 2018 21:45:29 +0000 (21:45 +0000)]
startrek: tracking now seems to work still a few floats to zap

6 years agostartrek: integerize
Alan Cox [Thu, 15 Mar 2018 19:44:30 +0000 (19:44 +0000)]
startrek: integerize

There are still some bugs notably the torp/base docking computer is wrong in
some cases.

6 years agostartrek: get rid of extra computer array and use a flag
Alan Cox [Wed, 14 Mar 2018 12:24:26 +0000 (12:24 +0000)]
startrek: get rid of extra computer array and use a flag

6 years agostartrek: further cleanup and defloating
Alan Cox [Wed, 14 Mar 2018 00:38:39 +0000 (00:38 +0000)]
startrek: further cleanup and defloating

Should be sanely playable again

6 years agokernel: sdcc version info
Alan Cox [Tue, 13 Mar 2018 21:59:49 +0000 (21:59 +0000)]
kernel: sdcc version info

6 years agostartrek: continue clean up
Alan Cox [Tue, 13 Mar 2018 21:39:09 +0000 (21:39 +0000)]
startrek: continue clean up

There are corner cases on the torpedo tracking and where the computer solution
is wrong. The whole positioning logic is a bit messed up and I think the
tracking corner cases are due to that. Also of course Klingons are in integer
positions whereas presumably they should be at 0.5/0.5 because they are
notionally in the middle of the square.

Would it make sense to just Bresenham the movement and torpedo logic ?

6 years agostartrek: add an input routine for x.yz fixed point co-ords
Alan Cox [Tue, 13 Mar 2018 13:06:26 +0000 (13:06 +0000)]
startrek: add an input routine for x.yz fixed point co-ords

6 years agostartrek: clean up in the input side
Alan Cox [Tue, 13 Mar 2018 12:59:08 +0000 (12:59 +0000)]
startrek: clean up in the input side

6 years agostartrek: further clean
Alan Cox [Mon, 12 Mar 2018 01:44:48 +0000 (01:44 +0000)]
startrek: further clean

Now done to 39995 bytes on Z80

6 years agostartrek: more cleaning/sizing
Alan Cox [Mon, 12 Mar 2018 00:37:55 +0000 (00:37 +0000)]
startrek: more cleaning/sizing

6 years agostartrek: make stardates fixed point
Alan Cox [Mon, 12 Mar 2018 00:11:12 +0000 (00:11 +0000)]
startrek: make stardates fixed point

6 years agostartrek:tidy up scratch string usage in device and quad names
Alan Cox [Sun, 11 Mar 2018 22:15:44 +0000 (22:15 +0000)]
startrek:tidy up scratch string usage in device and quad names

6 years agostartrek: chdir somewhere, make it all static and remove dead bits
Alan Cox [Sun, 11 Mar 2018 22:08:42 +0000 (22:08 +0000)]
startrek: chdir somewhere, make it all static and remove dead bits

6 years agostartrek: instructions
Alan Cox [Sun, 11 Mar 2018 21:57:51 +0000 (21:57 +0000)]
startrek: instructions

6 years agostartrek: some clean up first pass
Alan Cox [Sun, 11 Mar 2018 21:57:30 +0000 (21:57 +0000)]
startrek: some clean up first pass

6 years agostartrek: use time(NULL)
Alan Cox [Sun, 11 Mar 2018 20:57:49 +0000 (20:57 +0000)]
startrek: use time(NULL)

6 years agolimits: move RAND_MAX to the right spot
Alan Cox [Sun, 11 Mar 2018 20:57:21 +0000 (20:57 +0000)]
limits: move RAND_MAX to the right spot

6 years agoResolving merge
Alan Cox [Sun, 11 Mar 2018 17:26:39 +0000 (17:26 +0000)]
Resolving merge

6 years agoAllow building without IDE or SCSI support
Tormod Volden [Sun, 11 Mar 2018 15:00:58 +0000 (16:00 +0100)]
Allow building without IDE or SCSI support

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agococo3: Const'ify strcmp arguments
Tormod Volden [Sun, 11 Mar 2018 14:37:00 +0000 (15:37 +0100)]
coco3: Const'ify strcmp arguments

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agoCommon DriveWire files for coco2/coco2cart/dragon-nx32
Tormod Volden [Sun, 11 Mar 2018 13:38:19 +0000 (14:38 +0100)]
Common DriveWire files for coco2/coco2cart/dragon-nx32

The coco2 and coco2cart platforms were missing the
low-level DriveWire drivers. They can use the same as
the dragon-nx32 platform, so make them common.

Now that coco2 and coco2cart build again, also add
the build memory map check while we are at it.

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
6 years agoflat: note bug
Alan Cox [Sun, 11 Mar 2018 14:12:07 +0000 (14:12 +0000)]
flat: note bug

6 years agostartrek: make sdcc happier
Alan Cox [Sun, 11 Mar 2018 14:02:40 +0000 (14:02 +0000)]
startrek: make sdcc happier

sdcc does weird stuff with static objects constructed inside a function. No
idea why - but it's best to keep them outside of it

6 years agofindsdcc: fix paths
Alan Cox [Sun, 11 Mar 2018 14:02:07 +0000 (14:02 +0000)]
findsdcc: fix paths

6 years agosyscall_exec16: Fix L2 build without locking
Alan Cox [Sun, 11 Mar 2018 14:01:21 +0000 (14:01 +0000)]
syscall_exec16: Fix L2 build without locking

6 years agostartrek: fix typo
Alan Cox [Sun, 11 Mar 2018 13:18:43 +0000 (13:18 +0000)]
startrek: fix typo

6 years agostartrek: feed through indent
Alan Cox [Sun, 11 Mar 2018 13:09:13 +0000 (13:09 +0000)]
startrek: feed through indent

No other changes