FUZIX.git
7 years agoMerge pull request #471 from willsowerbutts/zetav2fixes
EtchedPixels [Wed, 4 Jan 2017 12:55:25 +0000 (12:55 +0000)]
Merge pull request #471 from willsowerbutts/zetav2fixes

Fixes for zeta-v2 platform

7 years agoMerge pull request #470 from willsowerbutts/buildfixes
EtchedPixels [Wed, 4 Jan 2017 12:54:54 +0000 (12:54 +0000)]
Merge pull request #470 from willsowerbutts/buildfixes

Minor build fixes

7 years agoApplications/util/tget: Link with termcap library
Will Sowerbutts [Wed, 28 Dec 2016 22:08:40 +0000 (22:08 +0000)]
Applications/util/tget: Link with termcap library

7 years agozeta-v2: Remove fuzix.com, fuzix.rom when cleaning
Will Sowerbutts [Wed, 28 Dec 2016 17:23:08 +0000 (17:23 +0000)]
zeta-v2: Remove fuzix.com, fuzix.rom when cleaning

7 years agozeta-v2: Save a few bytes
Will Sowerbutts [Wed, 28 Dec 2016 17:24:50 +0000 (17:24 +0000)]
zeta-v2: Save a few bytes

7 years agozeta-v2: Call program_vectors for kernel on boot.
Will Sowerbutts [Wed, 28 Dec 2016 17:30:14 +0000 (17:30 +0000)]
zeta-v2: Call program_vectors for kernel on boot.

This fixes a bug which was preventing zeta-v2 from booting.

7 years agoApplications/util/termcap.c: Update function declarations to modern C
Will Sowerbutts [Wed, 28 Dec 2016 17:21:05 +0000 (17:21 +0000)]
Applications/util/termcap.c: Update function declarations to modern C
syntax as required by recent versions of sdcc.

7 years agoApplications/util: Add missing make targets that package declares
Will Sowerbutts [Wed, 28 Dec 2016 17:25:22 +0000 (17:25 +0000)]
Applications/util: Add missing make targets that package declares

7 years agoKernel binman: fix off-by-one error, allowing COMMONMEM to use the last
Will Sowerbutts [Wed, 28 Dec 2016 17:26:06 +0000 (17:26 +0000)]
Kernel binman: fix off-by-one error, allowing COMMONMEM to use the last
byte of RAM (at address 0xFFFF).

7 years agoMerge pull request #469 from beretta42/cksum
EtchedPixels [Mon, 19 Dec 2016 20:47:14 +0000 (20:47 +0000)]
Merge pull request #469 from beretta42/cksum

Cksum

7 years agococo2cart: Initial patches from Brett Gordon for cocosdc
Alan Cox [Mon, 19 Dec 2016 20:46:16 +0000 (20:46 +0000)]
coco2cart: Initial patches from Brett Gordon for cocosdc

7 years agocksum.c: further match gnu cksum algo, crc with file length.
Brett Gordon [Mon, 19 Dec 2016 14:49:28 +0000 (09:49 -0500)]
cksum.c:  further match gnu cksum algo, crc with file length.

7 years agocksum.c: replace CRC LUT with Posix poly
Brett Gordon [Mon, 19 Dec 2016 14:13:42 +0000 (09:13 -0500)]
cksum.c: replace CRC LUT with Posix poly

7 years agococo2cart: update ACIA support to match nx32
Alan Cox [Mon, 12 Dec 2016 17:51:18 +0000 (17:51 +0000)]
coco2cart: update ACIA support to match nx32

Add speed setting etc to the Dragon64 UART

7 years agococo2cart: remove obsolete comment
Alan Cox [Mon, 12 Dec 2016 17:51:02 +0000 (17:51 +0000)]
coco2cart: remove obsolete comment

7 years agomini_ide: fix a prototype
Alan Cox [Mon, 12 Dec 2016 17:45:34 +0000 (17:45 +0000)]
mini_ide: fix a prototype

7 years agococo3: fix a comment
Alan Cox [Sat, 10 Dec 2016 14:30:29 +0000 (14:30 +0000)]
coco3: fix a comment

7 years agococo2cart: remove dead code
Alan Cox [Tue, 6 Dec 2016 19:17:15 +0000 (19:17 +0000)]
coco2cart: remove dead code

7 years agobank: propogate some changes
Alan Cox [Tue, 6 Dec 2016 19:05:30 +0000 (19:05 +0000)]
bank: propogate some changes

7 years agoMakefile: add bank8k
Alan Cox [Tue, 6 Dec 2016 19:05:17 +0000 (19:05 +0000)]
Makefile: add bank8k

7 years agobank8k: ho hum...
Alan Cox [Tue, 6 Dec 2016 18:24:31 +0000 (18:24 +0000)]
bank8k: ho hum...

7 years agobank8k: add prototypes
Alan Cox [Tue, 6 Dec 2016 00:20:51 +0000 (00:20 +0000)]
bank8k: add prototypes

7 years agobank8k: first cut at an 8K banking module
Alan Cox [Tue, 6 Dec 2016 00:18:02 +0000 (00:18 +0000)]
bank8k: first cut at an 8K banking module

This needs to handle the tables differently as they don't fit in the page
pointers but that also lets us address Brett's wish for video mapping which
with 8K banking actually sort of makes sense on the COCO3.

7 years agococo2cart: document disk layout
Alan Cox [Sun, 4 Dec 2016 14:41:44 +0000 (14:41 +0000)]
coco2cart: document disk layout

7 years agoexecve: fix deadlock/crash
Alan Cox [Sun, 4 Dec 2016 14:31:54 +0000 (14:31 +0000)]
execve: fix deadlock/crash

If a process sets files to be closed with O_CLOEXEC and those files are ones
that sleep during the close (eg a socket), and at the same time as it is
sleeping then on a little box with not many buffers you can easily deadlock
or run out of buffers.

Only allow one execve process at a time. As the disk I/O on a little 8bit
micro takes the full CPU time, and the only blocking case is the obscure
O_CLOEXEC one the performance impact of this change is pretty close to nil,
but it does mean we need to be careful not to let anything block for long
while closing.

For networking this will need a little bit of care and it also introduces
a bizarre corner case deadlock if you are using the userspace networking
daemon. You must ensure the daemon does not itself try to do an execve
while a socket might be waiting to close. As the network daemon can already
tie itself in knots if it attempts to use sockets, and is very special this
seems acceptable.

7 years agococo2cart: reclaim buffers
Alan Cox [Sun, 4 Dec 2016 14:31:30 +0000 (14:31 +0000)]
coco2cart: reclaim buffers

Tidy up the oddments that need deleting, and update the README

7 years agococo2cart: introduce swap enabled single process model
Alan Cox [Sun, 4 Dec 2016 13:46:42 +0000 (13:46 +0000)]
coco2cart: introduce swap enabled single process model

With the small core changes the 6809 banked ports can now swap while the
interrupts are enabled. This relies upon the fact the vectors are always
mapped so while not too hard on 6809 and 6502 the Z80 ports where the low
256 bytes are both IRQ vectors and part of the user map will probably need
a bit more work.

7 years agococo2cart: buffer pool into asm
Alan Cox [Sun, 4 Dec 2016 13:46:01 +0000 (13:46 +0000)]
coco2cart: buffer pool into asm

This moves the buffer pool into its own section so that we can make sure
it lies next to discard

7 years agococo2cart: prepare for discard recovery
Alan Cox [Sun, 4 Dec 2016 13:45:24 +0000 (13:45 +0000)]
coco2cart: prepare for discard recovery

Align everything so that we can reclaim the discard memory space

7 years agoprocess: changes for IRQ when swapping
Alan Cox [Sun, 4 Dec 2016 13:37:54 +0000 (13:37 +0000)]
process: changes for IRQ when swapping

Don't scribble on the udata when it is unsafe
Don't charge time to processes when swapping them

7 years agokernel: allow platforms to override the default task switch rate
Alan Cox [Sun, 4 Dec 2016 13:37:08 +0000 (13:37 +0000)]
kernel: allow platforms to override the default task switch rate

This is useful on pure swap systems for example.

7 years agokdata: In preparation for IRQ enabled swap introduce an inswap status byte
Alan Cox [Sun, 4 Dec 2016 13:36:36 +0000 (13:36 +0000)]
kdata: In preparation for IRQ enabled swap introduce an inswap status byte

7 years agococo2cart: update the README file
Alan Cox [Sun, 4 Dec 2016 13:21:27 +0000 (13:21 +0000)]
coco2cart: update the README file

7 years agococo2cart: add link file
Alan Cox [Sat, 3 Dec 2016 21:44:10 +0000 (21:44 +0000)]
coco2cart: add link file

7 years agococo2cart: fix swapping logic
Alan Cox [Sat, 3 Dec 2016 21:43:29 +0000 (21:43 +0000)]
coco2cart: fix swapping logic

7 years agobcpl: tidy up problems with Z80 from changes, add split int/linker
Alan Cox [Sat, 3 Dec 2016 21:03:38 +0000 (21:03 +0000)]
bcpl: tidy up problems with Z80 from changes, add split int/linker

Need to merge the split one and the paging logic

7 years agobcpl: remove a stdio usage and a pointless indirection
Alan Cox [Sat, 3 Dec 2016 20:19:41 +0000 (20:19 +0000)]
bcpl: remove a stdio usage and a pointless indirection

Faster faster..

7 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Wed, 30 Nov 2016 18:50:59 +0000 (18:50 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

7 years agoscc: turn arguments the right way round
Alan Cox [Wed, 30 Nov 2016 18:44:37 +0000 (18:44 +0000)]
scc: turn arguments the right way round

Small C has an irritating design feature that means it stacks arguments left
to right not right to left. Rather than working around this use a spool file
so we can put the code fragments in right to left order.

This totally changes the ABI, which is fine because we aren't using it for
anything and the old ABI is a PITA. With this done we can actually write sane
syscall stubs.

Would benefit from optimisations to also use the internal buffer as a stack
not just flush to the spool file as we stack code fragments.

Needless to say all the old varargs gunge is now a) broken and b) not needed

7 years agoMerge pull request #467 from beretta42/netdb
EtchedPixels [Sun, 27 Nov 2016 17:16:26 +0000 (17:16 +0000)]
Merge pull request #467 from beretta42/netdb

netd: fix gethostbyname: only add dns answers that are inet addrs.

7 years agonetd: fix gethostbyname: only add answsers that are inet addrs.
Brett Gordon [Sun, 27 Nov 2016 14:46:32 +0000 (09:46 -0500)]
netd: fix gethostbyname: only add answsers that are inet addrs.

7 years agoMerge pull request #466 from nealcrook/v7-man-pages
EtchedPixels [Thu, 24 Nov 2016 16:10:16 +0000 (16:10 +0000)]
Merge pull request #466 from nealcrook/v7-man-pages

V7 man pages (all platforms)

7 years agoV7 man pages (all platforms)
nealcrook [Thu, 24 Nov 2016 08:15:25 +0000 (08:15 +0000)]
V7 man pages (all platforms)
Add man pages (origin: nordier distribution, like the source code) for all
V7 stuff where they exist.
In all cases man pages are in a separate package within the same package
file; this allows a space-limited system to disable the man packages.

7 years agoMerge pull request #465 from nealcrook/BCPL
EtchedPixels [Wed, 23 Nov 2016 13:26:32 +0000 (13:26 +0000)]
Merge pull request #465 from nealcrook/BCPL

Application BCPL updates for all platforms.

7 years agoAdd simple example programs
nealcrook [Wed, 23 Nov 2016 11:45:51 +0000 (11:45 +0000)]
Add simple example programs

7 years agoAdd files from BCPL kit.
nealcrook [Wed, 23 Nov 2016 11:45:11 +0000 (11:45 +0000)]
Add files from BCPL kit.

7 years agoMerge branch 'BCPL' of https://github.com/nealcrook/FUZIX into BCPL
nealcrook [Wed, 23 Nov 2016 11:41:40 +0000 (11:41 +0000)]
Merge branch 'BCPL' of https://github.com/nealcrook/FUZIX into BCPL

Conflicts:
Applications/BCPL/README

7 years agoremove duplicated "#ifdef PAGEDMEM"
nealcrook [Wed, 23 Nov 2016 09:47:42 +0000 (09:47 +0000)]
remove duplicated "#ifdef PAGEDMEM"

7 years agoimplement least-recently-used page replacement scheme in place of the
nealcrook [Tue, 22 Nov 2016 22:25:29 +0000 (22:25 +0000)]
implement least-recently-used page replacement scheme in place of the
fixed scheme used during debug. Removed per-page access count which I
formerly considered using as part of the replacement algo.

7 years agoDo proper status checking on all the file operations.
nealcrook [Tue, 22 Nov 2016 22:09:38 +0000 (22:09 +0000)]
Do proper status checking on all the file operations.

7 years agoMerge pull request #462 from nealcrook/sh
EtchedPixels [Tue, 22 Nov 2016 22:06:09 +0000 (22:06 +0000)]
Merge pull request #462 from nealcrook/sh

Modifications to sh, all platforms: support for comments, add man-page, fix some build warnings, tweak package files

7 years agobcpl is a script to automate the build process. The first FUZIX shell
nealcrook [Tue, 22 Nov 2016 21:42:19 +0000 (21:42 +0000)]
bcpl is a script to automate the build process. The first FUZIX shell
script!! Expand README to describe its use and caveats.

7 years agoAdd opensolaris license that applies to some parts of this set of
nealcrook [Tue, 22 Nov 2016 21:15:23 +0000 (21:15 +0000)]
Add opensolaris license that applies to some parts of this set of
files, in particular stuff originating from the heirloom project.

7 years agoMerge pull request #463 from beretta42/dwinit
EtchedPixels [Tue, 22 Nov 2016 19:28:45 +0000 (19:28 +0000)]
Merge pull request #463 from beretta42/dwinit

coco3: better/conditional initialization of drivewire

7 years agoMerge pull request #464 from beretta42/netd
EtchedPixels [Tue, 22 Nov 2016 19:28:27 +0000 (19:28 +0000)]
Merge pull request #464 from beretta42/netd

coco3: make netd device module talk proper lwwire

7 years agococo3: better/conditional initialization of drivewire
Brett Gordon [Tue, 22 Nov 2016 18:28:33 +0000 (13:28 -0500)]
coco3: better/conditional initialization of drivewire

7 years agoBCPL package file.
nealcrook [Tue, 22 Nov 2016 17:15:33 +0000 (17:15 +0000)]
BCPL package file.

7 years agoDual-build. Working but need to add checks for return status after
nealcrook [Tue, 22 Nov 2016 17:13:59 +0000 (17:13 +0000)]
Dual-build. Working but need to add checks for return status after
file operation.

7 years agoBuild infrastructure
nealcrook [Tue, 22 Nov 2016 17:13:23 +0000 (17:13 +0000)]
Build infrastructure

7 years agococo3: make netd device module talk proper lwwire
Brett Gordon [Thu, 17 Nov 2016 22:42:56 +0000 (17:42 -0500)]
coco3: make netd device module talk proper lwwire

7 years agoabstract read and write into macros. Code almost identical.. one place
nealcrook [Tue, 22 Nov 2016 15:30:53 +0000 (15:30 +0000)]
abstract read and write into macros. Code almost identical.. one place
that it differs is the byte write in blibc which used to use a pointer
and which is now a plainer access.

7 years agoseoarate physical from virtual address space. Set up defines for
nealcrook [Tue, 22 Nov 2016 14:33:03 +0000 (14:33 +0000)]
seoarate physical from virtual address space. Set up defines for
host and target systems.

7 years agoMistakenly made a branch from my BCPL work instead of from master. Unwind the bcpl...
nealcrook [Tue, 22 Nov 2016 09:51:20 +0000 (09:51 +0000)]
Mistakenly made a branch from my BCPL work instead of from  Unwind the bcpl stuff from here.
Revert "expand the instructions for using the original bcpl kit files. Add"

This reverts commit 8934c001c5f9a270c08a6516e3da2e2a3b4f3d9e.

7 years agoMistakenly made a branch from my BCPL work instead of from master. Unwind
nealcrook [Tue, 22 Nov 2016 09:50:22 +0000 (09:50 +0000)]
Mistakenly made a branch from my BCPL work instead of from  Unwind
the bcpl stuff from here.
Revert "Refernece cgtest.b"

This reverts commit e327d0297d52d098441fda7cdc7c2e4866323577.

7 years agoRevert "Add files from BCPL kit and some simple example programs."
nealcrook [Tue, 22 Nov 2016 09:47:14 +0000 (09:47 +0000)]
Revert "Add files from BCPL kit and some simple example programs."

This reverts commit 7eec99c7ec337818e34a3c782c093f3f1e1b0e8a.

7 years agoAdd sh.1 manpage to fuzix-sh package.
nealcrook [Tue, 22 Nov 2016 09:39:30 +0000 (09:39 +0000)]
Add sh.1 manpage to fuzix-sh package.
Add hard link of /usr/bin/[ to /usr/bin/test in fuzix-cmd package.

7 years agoremove unsupported nroff at the start, document #-delimited comments.
nealcrook [Tue, 22 Nov 2016 09:32:40 +0000 (09:32 +0000)]
remove unsupported nroff at the start, document #-delimited comments.

7 years agosh.1 manpage retrieved from archival V7 distribution.
nealcrook [Tue, 22 Nov 2016 09:26:45 +0000 (09:26 +0000)]
sh.1 manpage retrieved from archival V7 distribution.

7 years agoRevert "sh manpage from heirloom-sh - describes a superset of the functionality in"
nealcrook [Tue, 22 Nov 2016 09:25:58 +0000 (09:25 +0000)]
Revert "sh manpage from heirloom-sh - describes a superset of the functionality in"

This reverts commit 731eb043e49277bb062d8ac5965c15ba37f5c27b.

7 years agosh manpage from heirloom-sh - describes a superset of the functionality in
nealcrook [Tue, 22 Nov 2016 09:17:35 +0000 (09:17 +0000)]
sh manpage from heirloom-sh - describes a superset of the functionality in
the FUZIX V7-origin sh.

7 years agoPort support for comment-to-end-of-line via '#' from heirloom-sh: while
nealcrook [Tue, 22 Nov 2016 09:15:47 +0000 (09:15 +0000)]
Port support for comment-to-end-of-line via '#' from heirloom-sh: while
loop added to the start of word() in word.c

7 years agoUsing assignments as truth values seems to have been a favoured
nealcrook [Tue, 22 Nov 2016 08:39:07 +0000 (08:39 +0000)]
Using assignments as truth values seems to have been a favoured
programming style of Mr Bourne. gcc moans about it though:

"suggest parentheses around assignment used as truth value"

so in the interests of fewer compile warnings I have complied with the
suggestion.

7 years agoAdd files from BCPL kit and some simple example programs.
nealcrook [Mon, 21 Nov 2016 22:25:49 +0000 (22:25 +0000)]
Add files from BCPL kit and some simple example programs.

7 years agoRefernece cgtest.b
nealcrook [Mon, 21 Nov 2016 22:24:01 +0000 (22:24 +0000)]
Refernece cgtest.b

7 years agoexpand the instructions for using the original bcpl kit files. Add
nealcrook [Mon, 21 Nov 2016 15:55:03 +0000 (15:55 +0000)]
expand the instructions for using the original bcpl kit files. Add
description of icintv.

7 years agofuzix: netd
Brett Gordon [Tue, 15 Nov 2016 20:27:50 +0000 (15:27 -0500)]
fuzix: netd

enclosed is a patch for netd.  Have fun figuring out netd.c :)  This gives me
(active open only) native networking.  Me and Ron Klein have been testing
this with success.  Please advise,

brett

7 years agoselect test tool
Alan Cox [Sun, 20 Nov 2016 17:49:53 +0000 (17:49 +0000)]
select test tool

7 years agovfscanf/fprintf_m: push missing stubs
Alan Cox [Sat, 19 Nov 2016 12:39:30 +0000 (12:39 +0000)]
vfscanf/fprintf_m: push missing stubs

7 years ago6502: switch to current cc65 not mine with hacks
Alan Cox [Sat, 19 Nov 2016 12:02:23 +0000 (12:02 +0000)]
6502: switch to current cc65 not mine with hacks

7 years agoexecl: 6502 support
Alan Cox [Sat, 19 Nov 2016 11:42:53 +0000 (11:42 +0000)]
execl: 6502 support

7 years agoMerge pull request #454 from nealcrook/apps-tidy
EtchedPixels [Wed, 16 Nov 2016 12:48:07 +0000 (12:48 +0000)]
Merge pull request #454 from nealcrook/apps-tidy

levee cleanup, and various other app tweaks and tidies

7 years agoMerge pull request #458 from beretta42/dw
EtchedPixels [Wed, 16 Nov 2016 12:46:39 +0000 (12:46 +0000)]
Merge pull request #458 from beretta42/dw

coco3: drivewire: dynamic polling back-off.

7 years agococo3: drivewire: dynamic polling back-off.
Brett Gordon [Wed, 16 Nov 2016 01:53:54 +0000 (20:53 -0500)]
coco3: drivewire: dynamic polling back-off.

7 years agoplatforms: all. Revise .gitignore to add dwdate.
nealcrook [Tue, 15 Nov 2016 16:53:55 +0000 (16:53 +0000)]
platforms: all. Revise .gitignore to add dwdate.

7 years agoBring in line with master so that this will merge cleanly
nealcrook [Tue, 15 Nov 2016 10:25:15 +0000 (10:25 +0000)]
Bring in line with master so that this will merge cleanly

7 years agoRevert "change 6809 makefiles to point to Library/include/6809 rather than"
nealcrook [Tue, 15 Nov 2016 08:19:39 +0000 (08:19 +0000)]
Revert "change 6809 makefiles to point to Library/include/6809 rather than"

This reverts commit 78a3da526b98b974b305f97d03d606d3bd280548.

Reverting becasue this change had already been applied from elsewhere by the
time I tried to push this branch upstream.

7 years agov65: update todo list
Alan Cox [Sun, 13 Nov 2016 00:17:52 +0000 (00:17 +0000)]
v65: update todo list

7 years agoMakefile: add new targets coco2cart and v65
Alan Cox [Sun, 13 Nov 2016 00:13:47 +0000 (00:13 +0000)]
Makefile: add new targets coco2cart and v65

7 years agotermcap: move buffers off stack
Alan Cox [Sun, 13 Nov 2016 00:12:49 +0000 (00:12 +0000)]
termcap: move buffers off stack

7 years agouptime: fix sign of passed buffer
Alan Cox [Sun, 13 Nov 2016 00:12:39 +0000 (00:12 +0000)]
uptime: fix sign of passed buffer

7 years agoumount: move buffers off stack
Alan Cox [Sun, 13 Nov 2016 00:12:27 +0000 (00:12 +0000)]
umount: move buffers off stack

7 years agotar: unBrettify
Alan Cox [Sun, 13 Nov 2016 00:12:05 +0000 (00:12 +0000)]
tar: unBrettify

7 years agotar: fix ANSI prototypes, declarations mid flow etc
Alan Cox [Sun, 13 Nov 2016 00:11:34 +0000 (00:11 +0000)]
tar: fix ANSI prototypes, declarations mid flow etc

7 years agoman: move buffers to static for cc65
Alan Cox [Sun, 13 Nov 2016 00:11:21 +0000 (00:11 +0000)]
man: move buffers to static for cc65

7 years agoprtroot: move DIR to static for cc65
Alan Cox [Sun, 13 Nov 2016 00:11:07 +0000 (00:11 +0000)]
prtroot: move DIR to static for cc65

7 years agoll: move DIR to static for cc65
Alan Cox [Sun, 13 Nov 2016 00:10:53 +0000 (00:10 +0000)]
ll: move DIR to static for cc65

7 years agosocktest: move buffer to static
Alan Cox [Sun, 13 Nov 2016 00:10:37 +0000 (00:10 +0000)]
socktest: move buffer to static

7 years agosed: shrink pools and buffers to fit smaller boxes
Alan Cox [Sun, 13 Nov 2016 00:10:20 +0000 (00:10 +0000)]
sed: shrink pools and buffers to fit smaller boxes

7 years agops: move big structures off stack
Alan Cox [Sun, 13 Nov 2016 00:10:11 +0000 (00:10 +0000)]
ps: move big structures off stack

7 years agofsck: fix wrong check
Alan Cox [Sun, 13 Nov 2016 00:09:59 +0000 (00:09 +0000)]
fsck: fix wrong check