FUZIX.git
7 years agop68000: fix vdso copy
Alan Cox [Thu, 20 Oct 2016 18:04:09 +0000 (19:04 +0100)]
p68000: fix vdso copy

7 years agoREADME.md: update for 68K
Alan Cox [Thu, 20 Oct 2016 17:00:50 +0000 (18:00 +0100)]
README.md: update for 68K

7 years agoprocess: note a problem to revisit
Alan Cox [Thu, 20 Oct 2016 16:50:59 +0000 (17:50 +0100)]
process: note a problem to revisit

7 years agoexec32: fixes
Alan Cox [Thu, 20 Oct 2016 16:49:29 +0000 (17:49 +0100)]
exec32: fixes

Firstly botch the stack value because elf2flt defaults to 4K which is usually
insufficient as in our case it includes brk() space. Just add 32K for now.

Also fix the argument aligmnet.

7 years ago68000: fix tricks up
Alan Cox [Thu, 20 Oct 2016 16:48:23 +0000 (17:48 +0100)]
68000: fix tricks up

With this we seem to have nice working switching

7 years agop68000: add vdso, turn off signals for the moment
Alan Cox [Thu, 20 Oct 2016 16:48:03 +0000 (17:48 +0100)]
p68000: add vdso, turn off signals for the moment

7 years ago68000: add a sort of vdso over the headers
Alan Cox [Thu, 20 Oct 2016 16:46:57 +0000 (17:46 +0100)]
68000: add a sort of vdso over the headers

This lets us change the trap# and the like if we make syscalls call the stub
handler, and also lets us put the signal unwinder somewhere useful

Experimenting for now

7 years ago68000: Fix irqrestore handler and tidy some logging
Alan Cox [Thu, 20 Oct 2016 16:46:23 +0000 (17:46 +0100)]
68000: Fix irqrestore handler and tidy some logging

7 years agov7: add a Makefile for the v7 games
Alan Cox [Thu, 20 Oct 2016 16:45:56 +0000 (17:45 +0100)]
v7: add a Makefile for the v7 games

7 years ago68000: add MWC makefile
Alan Cox [Thu, 20 Oct 2016 16:45:09 +0000 (17:45 +0100)]
68000: add MWC makefile

7 years agolibs: 68000 startup files
Alan Cox [Thu, 20 Oct 2016 16:44:35 +0000 (17:44 +0100)]
libs: 68000 startup files

7 years agoelf2flt: remove signal experiment
Alan Cox [Thu, 20 Oct 2016 16:43:57 +0000 (17:43 +0100)]
elf2flt: remove signal experiment

7 years agosyscall68000: Special fork handling
Alan Cox [Thu, 20 Oct 2016 16:43:29 +0000 (17:43 +0100)]
syscall68000: Special fork handling

7 years agoinit: oops commit the right version
Alan Cox [Wed, 19 Oct 2016 22:06:35 +0000 (23:06 +0100)]
init: oops commit the right version

7 years agoinit: trivial error path fix
Alan Cox [Wed, 19 Oct 2016 20:05:26 +0000 (21:05 +0100)]
init: trivial error path fix

7 years ago68000: make fork a special case
Alan Cox [Wed, 19 Oct 2016 19:59:20 +0000 (20:59 +0100)]
68000: make fork a special case

By defining _fork() as trashing all registers we can implement multiple udata
pointer based 68K platforms without having to save the CPU registers on syscall
entry. Instead the child does a direct supervisor a7 fixup and rte to user space
with d0/d1 correct. The rest is handled by the wrapper.

Now this isn't perfect and we probably need to adjust the rules a bit if
anyone is doing clever register resident relative code because if you take a
signal handler just at the wrong moment.

I guess as we have to save A5, you'll have to use A5 8) for Amiga style
resident code if we ever get that far.

7 years ago68000: add all the pieces for the signal return path helper
Alan Cox [Wed, 19 Oct 2016 19:53:48 +0000 (20:53 +0100)]
68000: add all the pieces for the signal return path helper

7 years agosyscall_exec32: Multiple fixes
Alan Cox [Wed, 19 Oct 2016 19:53:06 +0000 (20:53 +0100)]
syscall_exec32: Multiple fixes

With these in place it now seems to work

7 years agosyscall_proc: 32bit clean
Alan Cox [Wed, 19 Oct 2016 19:51:31 +0000 (20:51 +0100)]
syscall_proc: 32bit clean

7 years agosimple: Allow udata to be more than one sector
Alan Cox [Wed, 19 Oct 2016 19:50:39 +0000 (20:50 +0100)]
simple: Allow udata to be more than one sector

We need this for 68K

7 years agoswap: 32bit clean
Alan Cox [Wed, 19 Oct 2016 19:50:11 +0000 (20:50 +0100)]
swap: 32bit clean

7 years agov68: clean up config.h
Alan Cox [Wed, 19 Oct 2016 19:49:30 +0000 (20:49 +0100)]
v68: clean up config.h

7 years agov68: task switching
Alan Cox [Wed, 19 Oct 2016 19:49:06 +0000 (20:49 +0100)]
v68: task switching

All the bits needed for pure swap

7 years agov68: fix up the low level code, add pre-emption and signals
Alan Cox [Wed, 19 Oct 2016 19:48:19 +0000 (20:48 +0100)]
v68: fix up the low level code, add pre-emption and signals

7 years agov68: remove more fluff
Alan Cox [Wed, 19 Oct 2016 19:48:03 +0000 (20:48 +0100)]
v68: remove more fluff

7 years ago68000: first cut at signal handling
Alan Cox [Wed, 19 Oct 2016 19:47:00 +0000 (20:47 +0100)]
68000: first cut at signal handling

This needs a fixed position user space helper which will follow in the lib
patches

7 years agov68: remove un-needed fluff
Alan Cox [Wed, 19 Oct 2016 19:46:26 +0000 (20:46 +0100)]
v68: remove un-needed fluff

7 years ago68000: for 32bit platforms we need a codebase field
Alan Cox [Wed, 19 Oct 2016 19:46:00 +0000 (20:46 +0100)]
68000: for 32bit platforms we need a codebase field

7 years agotty: Use ugeti/uputi for int * ioctls
Alan Cox [Wed, 19 Oct 2016 19:45:37 +0000 (20:45 +0100)]
tty: Use ugeti/uputi for int * ioctls

7 years agocpu: introduce uputi/ugeti
Alan Cox [Wed, 19 Oct 2016 19:44:56 +0000 (20:44 +0100)]
cpu: introduce uputi/ugeti

There are syscalls that use an int *, and also ioctls. For those we can't
use uputw/getw as we were. Add new helper defines.

7 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Tue, 18 Oct 2016 22:06:33 +0000 (23:06 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

7 years ago68000: elf2flt linker rules
Alan Cox [Tue, 18 Oct 2016 22:02:24 +0000 (23:02 +0100)]
68000: elf2flt linker rules

7 years ago68000: Library fixes
Alan Cox [Tue, 18 Oct 2016 22:02:06 +0000 (23:02 +0100)]
68000: Library fixes

7 years ago68000: Application build files
Alan Cox [Tue, 18 Oct 2016 22:01:43 +0000 (23:01 +0100)]
68000: Application build files

7 years agosyscall_exec32: various fixes/hacks to get it to work for testing only
Alan Cox [Tue, 18 Oct 2016 21:59:52 +0000 (22:59 +0100)]
syscall_exec32: various fixes/hacks to get it to work for testing only

7 years ago68000: build fixes
Alan Cox [Tue, 18 Oct 2016 21:59:40 +0000 (22:59 +0100)]
68000: build fixes

7 years ago68000: set traps properly
Alan Cox [Tue, 18 Oct 2016 21:59:12 +0000 (22:59 +0100)]
68000: set traps properly

7 years ago68000: syscall path debug
Alan Cox [Tue, 18 Oct 2016 21:58:57 +0000 (22:58 +0100)]
68000: syscall path debug

7 years agoutils: build for M68K
Alan Cox [Wed, 12 Oct 2016 18:37:56 +0000 (19:37 +0100)]
utils: build for M68K

7 years agosync: fix compile error
Alan Cox [Wed, 12 Oct 2016 18:37:31 +0000 (19:37 +0100)]
sync: fix compile error

sync() is void and now correctly defined so return sync() fails.

7 years agoMerge pull request #444 from beretta42/keyboard
EtchedPixels [Wed, 12 Oct 2016 10:33:29 +0000 (11:33 +0100)]
Merge pull request #444 from beretta42/keyboard

coco3: define KEY_ROWS to compile vt ioctls

7 years agoMerge pull request #443 from beretta42/sync
EtchedPixels [Wed, 12 Oct 2016 10:29:34 +0000 (11:29 +0100)]
Merge pull request #443 from beretta42/sync

sync: gcc complains about sync being void

7 years agococo3: define KEY_ROWS to compile vt ioctls
Brett Gordon [Tue, 11 Oct 2016 14:23:42 +0000 (10:23 -0400)]
coco3: define KEY_ROWS to compile vt ioctls

7 years agosync: gcc complains about sync being void
Brett Gordon [Tue, 11 Oct 2016 14:16:14 +0000 (10:16 -0400)]
sync: gcc complains about sync being void

7 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Tue, 11 Oct 2016 12:00:18 +0000 (13:00 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

7 years agomarksman: fix a small newline handling bug
Alan Cox [Tue, 11 Oct 2016 12:00:01 +0000 (13:00 +0100)]
marksman: fix a small newline handling bug

7 years ago68000: Add the syscalls and libraries
Alan Cox [Tue, 11 Oct 2016 11:56:36 +0000 (12:56 +0100)]
68000: Add the syscalls and libraries

This is sufficient to build the C and supporting libraries plus the syscalls
for 68000. We can't load and run a 68K binary yet but this gets us closer as
we can now begin to build some test binaries.

7 years agoMerge pull request #440 from beretta42/bank_vid3
EtchedPixels [Mon, 10 Oct 2016 20:07:23 +0000 (21:07 +0100)]
Merge pull request #440 from beretta42/bank_vid3

coco3: shuffle memory to let us actually use kernel memory past 0xc000

7 years agoMerge pull request #441 from beretta42/keyboard
EtchedPixels [Mon, 10 Oct 2016 20:06:57 +0000 (21:06 +0100)]
Merge pull request #441 from beretta42/keyboard

simple util to set console key repeat rates

7 years agokbdrate.c: simple sanity.
Brett Gordon [Sun, 9 Oct 2016 15:18:23 +0000 (11:18 -0400)]
kbdrate.c: simple sanity.

7 years agovt.c: fix ioctl: flipped src/dest in uget
Brett Gordon [Sun, 9 Oct 2016 14:28:27 +0000 (10:28 -0400)]
vt.c: fix ioctl: flipped src/dest in uget

7 years agoadd util to set vt's keyboard's rates
Brett Gordon [Sun, 9 Oct 2016 14:27:21 +0000 (10:27 -0400)]
add util to set vt's keyboard's rates

7 years agococo3: make sure to reset mmu when done copying!
Brett Gordon [Sat, 8 Oct 2016 16:32:28 +0000 (12:32 -0400)]
coco3: make sure to reset mmu when done copying!

7 years agococo3: bank 6 copy: use *correct* end ptr
Brett Gordon [Sat, 8 Oct 2016 15:54:10 +0000 (11:54 -0400)]
coco3: bank 6 copy: use *correct* end ptr

7 years agococo3: copy 8k bank at cpu $c000 to new bank freeing 0x6 for init
Brett Gordon [Sat, 8 Oct 2016 15:01:43 +0000 (11:01 -0400)]
coco3: copy 8k bank at cpu $c000 to new bank freeing 0x6 for init

7 years agoMerge pull request #438 from beretta42/video_blip
EtchedPixels [Mon, 3 Oct 2016 09:02:12 +0000 (10:02 +0100)]
Merge pull request #438 from beretta42/video_blip

coco3: init bug: skip scanning screen memory

7 years agoMerge pull request #437 from beretta42/video
EtchedPixels [Mon, 3 Oct 2016 09:01:36 +0000 (10:01 +0100)]
Merge pull request #437 from beretta42/video

coco3: redirect tty queueing

7 years agococo3: whitespace
Brett Gordon [Sun, 2 Oct 2016 22:22:26 +0000 (18:22 -0400)]
coco3: whitespace

7 years agococo3: init bug: skip scanning screen memory
Brett Gordon [Sun, 2 Oct 2016 20:57:08 +0000 (16:57 -0400)]
coco3: init bug: skip scanning screen memory

7 years agococo3: add prototypes for queue access functions
Brett Gordon [Sun, 2 Oct 2016 20:24:52 +0000 (16:24 -0400)]
coco3: add prototypes for queue access functions

7 years agococo3: use indirect queues
Brett Gordon [Sun, 2 Oct 2016 19:36:49 +0000 (15:36 -0400)]
coco3: use indirect queues

7 years agoMerge pull request #436 from dfffffff/master
EtchedPixels [Sun, 25 Sep 2016 15:32:22 +0000 (16:32 +0100)]
Merge pull request #436 from dfffffff/master

fixed compile error: added ssize_t, changed size_t to unsigned

7 years agofixed compile error: added ssize_t, changed size_t to unsigned
dfffffff [Sun, 25 Sep 2016 12:02:07 +0000 (08:02 -0400)]
fixed compile error: added ssize_t, changed size_t to unsigned

7 years agoMerge pull request #435 from erkinalp/patch-3
EtchedPixels [Sat, 24 Sep 2016 19:59:57 +0000 (20:59 +0100)]
Merge pull request #435 from erkinalp/patch-3

cut: fix output

7 years agooops, one letter missing
Erkin Alp Güney [Sat, 24 Sep 2016 15:57:27 +0000 (18:57 +0300)]
oops, one letter missing

7 years agofix output
Erkin Alp Güney [Sat, 24 Sep 2016 15:55:24 +0000 (18:55 +0300)]
fix output

replace printf() with just a string by a puts()
no need to go on formatting just to print unmodified string

7 years agosyscalls: more manual pages
Alan Cox [Sat, 24 Sep 2016 15:18:01 +0000 (16:18 +0100)]
syscalls: more manual pages

7 years agosyscalls: sync is void
Alan Cox [Sat, 24 Sep 2016 15:16:24 +0000 (16:16 +0100)]
syscalls: sync is void

7 years agoman2: add a couple more entries
Alan Cox [Sat, 24 Sep 2016 13:19:01 +0000 (14:19 +0100)]
man2: add a couple more entries

One by one...

7 years agomarksman: allow the use of \ on line ends for 'newline' suppression
Alan Cox [Sat, 24 Sep 2016 13:18:09 +0000 (14:18 +0100)]
marksman: allow the use of \ on line ends for 'newline' suppression

7 years agoread/write: error oversized requests
Alan Cox [Sat, 24 Sep 2016 13:17:25 +0000 (14:17 +0100)]
read/write: error oversized requests

We could allow it but it's undefined behaviour in the standard and in some
of our driver code, so force a nice clear error.

7 years agoMerge pull request #433 from dfffffff/master
EtchedPixels [Fri, 23 Sep 2016 16:34:03 +0000 (17:34 +0100)]
Merge pull request #433 from dfffffff/master

fixed compile error

oops

7 years agofixed compile error
dfffffff [Fri, 23 Sep 2016 15:59:04 +0000 (11:59 -0400)]
fixed compile error

7 years agoMerge pull request #432 from beretta42/nocpm
EtchedPixels [Fri, 23 Sep 2016 13:36:47 +0000 (14:36 +0100)]
Merge pull request #432 from beretta42/nocpm

util: patchcpm no longer exists to install

7 years agoutil: patchcpm no longer exists to install
Brett Gordon [Fri, 23 Sep 2016 13:26:51 +0000 (09:26 -0400)]
util: patchcpm no longer exists to install

7 years agomarksman: table formatting with width correctly handled
Alan Cox [Fri, 23 Sep 2016 11:36:16 +0000 (12:36 +0100)]
marksman: table formatting with width correctly handled

8 years agoclose: update man page for stuff we fixed
Alan Cox [Thu, 22 Sep 2016 21:52:02 +0000 (22:52 +0100)]
close: update man page for stuff we fixed

8 years agoopen: fix truncating on read only open
Alan Cox [Thu, 22 Sep 2016 21:50:20 +0000 (22:50 +0100)]
open: fix truncating on read only open

Also note another point where we need to fix up refcount handling for FIFO
nodes

8 years agofilesys.c: add a TODO
Alan Cox [Thu, 22 Sep 2016 21:50:06 +0000 (22:50 +0100)]
filesys.c: add a TODO

8 years agosyscall_other: fix up various rename problems
Alan Cox [Thu, 22 Sep 2016 21:49:52 +0000 (22:49 +0100)]
syscall_other: fix up various rename problems

8 years agolibc: add dummies for fsync and fdatasync
Alan Cox [Thu, 22 Sep 2016 21:48:40 +0000 (22:48 +0100)]
libc: add dummies for fsync and fdatasync

We don't need syscalls for these on smaller boxes (and it's surprisingly hard
to get right) so just wrap sync. That way a future bigger box that does need
fsync/fdatasync can be done properly.

8 years agosys/types.h: add major/minor/makedev trio
Alan Cox [Thu, 22 Sep 2016 21:48:14 +0000 (22:48 +0100)]
sys/types.h: add major/minor/makedev trio

8 years agoman2: a beginning
Alan Cox [Thu, 22 Sep 2016 21:42:57 +0000 (22:42 +0100)]
man2: a beginning

And some test material for marksman

8 years agomarksman: fix various buglets
Alan Cox [Thu, 22 Sep 2016 21:11:56 +0000 (22:11 +0100)]
marksman: fix various buglets

Still need to sort out width() for tables to work properly

8 years agoMerge pull request #430 from beretta42/level2_3
EtchedPixels [Thu, 22 Sep 2016 14:25:33 +0000 (15:25 +0100)]
Merge pull request #430 from beretta42/level2_3

bring coco3 up to level 2

8 years agococo3: bring platform up to level 2 w/ coredumps + networking
Brett Gordon [Thu, 22 Sep 2016 14:12:34 +0000 (10:12 -0400)]
coco3: bring platform up to level 2 w/ coredumps + networking

8 years agosyscall_net: various bug fixes.
Brett Gordon [Thu, 22 Sep 2016 14:10:53 +0000 (10:10 -0400)]
syscall_net: various bug fixes.

8 years agosyscall_exec: gcc doesn't like subtracting a ptr from a int
Brett Gordon [Thu, 22 Sep 2016 14:08:58 +0000 (10:08 -0400)]
syscall_exec: gcc doesn't like subtracting a ptr from a int

8 years agosocket: fix typpo
Brett Gordon [Thu, 22 Sep 2016 14:06:52 +0000 (10:06 -0400)]
socket: fix typpo

8 years agonetdev.h: make declaration match implementations (net_wiz, net_native, etc..)
Brett Gordon [Thu, 22 Sep 2016 14:06:12 +0000 (10:06 -0400)]
netdev.h: make declaration match implementations (net_wiz, net_native, etc..)

8 years agonet_native: make defs/decs match calls from Kernel/devsys.c
Brett Gordon [Thu, 22 Sep 2016 14:00:48 +0000 (10:00 -0400)]
net_native: make defs/decs match calls from Kernel/devsys.c

8 years agoselect: make _select match level2.h
Brett Gordon [Thu, 22 Sep 2016 13:54:20 +0000 (09:54 -0400)]
select: make _select match level2.h

8 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Wed, 21 Sep 2016 23:05:12 +0000 (00:05 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

8 years agomarksman: first pass at a modern take on manual pages
Alan Cox [Wed, 21 Sep 2016 22:56:28 +0000 (23:56 +0100)]
marksman: first pass at a modern take on manual pages

Stuff nroff, it's slow complicated and produces wonderful typeset paper manual
pages when what we actually need are fast online ones.

manscan is a simple tool to hoik blocks of markdown out of code

marksman is a first pass at a tool for outputting markdown in a sort of man
page format.

It understands the line based mark ups

````

1. Foo
2. Foo

* Foo
* Bar

+ Foo
+ Bar

- Foo
- Bar

Along with double space indenting

[link][foo]
[link](foo)
[link]
[link]: foo

![text][picture]
![text](picture)

````

inline markup: * ** _ __ ~ ~~

| table |

but not a lot of the nicer formatting options, and it doesn't handle lengths
correctly yet either.

It's missing subtables, inline ````, inline HTML (as we don't use HTML) and
some other oddments

It also supports \* etc to quote meta symbols for inline formatting and it
has an extension for name/content (HTML DT/DD style) lists

8 years agoMerge pull request #429 from dfffffff/master
EtchedPixels [Wed, 21 Sep 2016 22:54:38 +0000 (23:54 +0100)]
Merge pull request #429 from dfffffff/master

fixed v7 ed not compiling on gcc6809, added v7 ed to build.mk

8 years agofixed v7 ed not compiling on gcc6809, added v7 ed to build.mk
dfffffff [Wed, 21 Sep 2016 18:33:51 +0000 (14:33 -0400)]
fixed v7 ed not compiling on gcc6809, added v7 ed to build.mk

8 years agoed: Add V7 ed - it's better than our existing one IMHO
Alan Cox [Wed, 21 Sep 2016 13:23:15 +0000 (14:23 +0100)]
ed: Add V7 ed - it's better than our existing one IMHO

8 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Fri, 16 Sep 2016 11:53:52 +0000 (12:53 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

8 years agoMakefile: parallel build fixes take two
Alan Cox [Fri, 16 Sep 2016 11:52:25 +0000 (12:52 +0100)]
Makefile: parallel build fixes take two

From: David Flamand

Fix the parallel build

8 years agonc100: updates - basics of suspend/resume NMI path and some cleaning
Alan Cox [Thu, 15 Sep 2016 20:02:27 +0000 (21:02 +0100)]
nc100: updates - basics of suspend/resume NMI path and some cleaning