FUZIX.git
6 years agoubee: stuck the initializer block somewhere out of the way
Alan Cox [Wed, 31 Jan 2018 12:49:31 +0000 (12:49 +0000)]
ubee: stuck the initializer block somewhere out of the way

6 years agoubee: Updates
Alan Cox [Tue, 30 Jan 2018 00:24:50 +0000 (00:24 +0000)]
ubee: Updates

This gets us to the point we prompt for a keyboard response and have IRQ
events running. The 256TC keyboard half works (shift and control seem busted
and we've yet to work out what to do with alt anyway).

Next stop disk drivers

6 years agoubee: first draft of printer driver
Alan Cox [Tue, 30 Jan 2018 00:23:59 +0000 (00:23 +0000)]
ubee: first draft of printer driver

6 years agoubee: update notes
Alan Cox [Tue, 30 Jan 2018 00:23:42 +0000 (00:23 +0000)]
ubee: update notes

6 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sun, 28 Jan 2018 15:22:03 +0000 (15:22 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

6 years agoubee: make room for initializers
Alan Cox [Sun, 28 Jan 2018 15:21:14 +0000 (15:21 +0000)]
ubee: make room for initializers

With this changed we get the bootdev: prompt but don't have any working
interrupt handling in order to process keystrokes

6 years agobinman: spot discard/initializer overlap
Alan Cox [Sun, 28 Jan 2018 15:20:47 +0000 (15:20 +0000)]
binman: spot discard/initializer overlap

6 years agoubee: some further initial work
Alan Cox [Sun, 28 Jan 2018 00:48:07 +0000 (00:48 +0000)]
ubee: some further initial work

Thi is enough to get us loaded into memory and run through the early
assembly entry code. We don't get far yet though.

6 years agoubee: update notes
Alan Cox [Sun, 28 Jan 2018 00:47:19 +0000 (00:47 +0000)]
ubee: update notes

6 years agoappleiie: more filling out of initial bits and pieces
Alan Cox [Sun, 28 Jan 2018 00:45:01 +0000 (00:45 +0000)]
appleiie: more filling out of initial bits and pieces

6 years agokernel: add keycodes for F11/F12 as we'll need them soon
Alan Cox [Sun, 28 Jan 2018 00:44:09 +0000 (00:44 +0000)]
kernel: add keycodes for F11/F12 as we'll need them soon

6 years agoMerge pull request #582 from beretta42/ramrom
EtchedPixels [Fri, 26 Jan 2018 17:05:23 +0000 (17:05 +0000)]
Merge pull request #582 from beretta42/ramrom

coco3: poke RAM mode on init, just in case.

6 years agococo3: poke RAM mode on init, just in case.
Brett Gordon [Fri, 26 Jan 2018 07:05:14 +0000 (02:05 -0500)]
coco3: poke RAM mode on init, just in case.

6 years agoappleiie: more sketching out of the platform code
Alan Cox [Mon, 22 Jan 2018 21:46:40 +0000 (21:46 +0000)]
appleiie: more sketching out of the platform code

6 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Mon, 22 Jan 2018 00:11:06 +0000 (00:11 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

6 years agoplatform-appleiie: Initial sketches on how a IIe port might look
Alan Cox [Mon, 22 Jan 2018 00:10:29 +0000 (00:10 +0000)]
platform-appleiie: Initial sketches on how a IIe port might look

6 years agostrlcpy: make more robust
Alan Cox [Mon, 22 Jan 2018 00:09:09 +0000 (00:09 +0000)]
strlcpy: make more robust

6 years ago6502,libs: callax 65c02 would also need to do a 16bit dec - not worth it
Alan Cox [Mon, 22 Jan 2018 00:08:31 +0000 (00:08 +0000)]
6502,libs: callax 65c02 would also need to do a 16bit dec - not worth it

6 years agosyscall_net: move endif to the right place
Alan Cox [Mon, 22 Jan 2018 00:08:17 +0000 (00:08 +0000)]
syscall_net: move endif to the right place

6 years agoswap: fix build with fussy compilers
Alan Cox [Mon, 22 Jan 2018 00:08:03 +0000 (00:08 +0000)]
swap: fix build with fussy compilers

6 years ago65c816: update documentation
Alan Cox [Mon, 22 Jan 2018 00:07:52 +0000 (00:07 +0000)]
65c816: update documentation

6 years agoMerge pull request #580 from beretta42/fortune
EtchedPixels [Tue, 16 Jan 2018 19:34:20 +0000 (19:34 +0000)]
Merge pull request #580 from beretta42/fortune

fortune: bug: main doesn't return success.

6 years agofortune: bug: main doesn't return success.
Brett Gordon [Tue, 16 Jan 2018 03:54:12 +0000 (22:54 -0500)]
fortune: bug: main doesn't return success.

6 years agoMerge pull request #579 from beretta42/bogo
EtchedPixels [Fri, 12 Jan 2018 17:31:00 +0000 (17:31 +0000)]
Merge pull request #579 from beretta42/bogo

Add 6809 bogomips delay loop

6 years agoutil: 6809 bogomips
Brett Gordon [Fri, 12 Jan 2018 05:21:33 +0000 (00:21 -0500)]
util: 6809 bogomips

6 years agov65c816: add the graphics mode ioctls remove a debug output to uart for vt
Alan Cox [Sun, 7 Jan 2018 23:10:16 +0000 (23:10 +0000)]
v65c816: add the graphics mode ioctls remove a debug output to uart for vt

We still hack the input side while I debug the SDL input logic on the
emulator.

6 years agov65c816: add support for the new kbd/framebuffer code in v65c816
Alan Cox [Thu, 4 Jan 2018 22:18:16 +0000 (22:18 +0000)]
v65c816: add support for the new kbd/framebuffer code in v65c816

So we can start the console work.

6 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Thu, 4 Jan 2018 22:17:55 +0000 (22:17 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

6 years agoMerge pull request #578 from beretta42/fixes
EtchedPixels [Thu, 4 Jan 2018 22:17:40 +0000 (22:17 +0000)]
Merge pull request #578 from beretta42/fixes

Easy fixes

6 years agococo3: actually declare defmode.
Brett Gordon [Thu, 4 Jan 2018 05:06:20 +0000 (00:06 -0500)]
coco3: actually declare defmode.

6 years agoutils: remount: easy bugfix
Brett Gordon [Thu, 4 Jan 2018 04:19:34 +0000 (23:19 -0500)]
utils: remount: easy bugfix

6 years agov65c816-big: fix memory scribble
Alan Cox [Wed, 3 Jan 2018 21:55:15 +0000 (21:55 +0000)]
v65c816-big: fix memory scribble

6 years agov65c816-big: DMA protection
Alan Cox [Wed, 3 Jan 2018 21:45:32 +0000 (21:45 +0000)]
v65c816-big: DMA protection

6 years agov65c816: DMA protection for disk DMA
Alan Cox [Wed, 3 Jan 2018 21:45:09 +0000 (21:45 +0000)]
v65c816: DMA protection for disk DMA

6 years ago65c816: Fixes for non bank 0
Alan Cox [Tue, 2 Jan 2018 21:03:23 +0000 (21:03 +0000)]
65c816: Fixes for non bank 0

With this fixed the large mode seems to work (not heavily tested) and
an 8MB boot works to a shell prompt and some test commands at least.

6 years agov65c816: update notes
Alan Cox [Tue, 2 Jan 2018 19:22:32 +0000 (19:22 +0000)]
v65c816: update notes

6 years agov65c816-big: update notes
Alan Cox [Tue, 2 Jan 2018 19:22:13 +0000 (19:22 +0000)]
v65c816-big: update notes

6 years agov65c816-big: callax replacement for big memory
Alan Cox [Tue, 2 Jan 2018 19:21:52 +0000 (19:21 +0000)]
v65c816-big: callax replacement for big memory

6 years ago65c816: use brk helper
Alan Cox [Tue, 2 Jan 2018 19:20:45 +0000 (19:20 +0000)]
65c816: use brk helper

6 years ago65c816: fix wrap on DP computation, and add brk handling
Alan Cox [Tue, 2 Jan 2018 19:20:28 +0000 (19:20 +0000)]
65c816: fix wrap on DP computation, and add brk handling

6 years ago65c816: fix bank 0 error
Alan Cox [Tue, 2 Jan 2018 19:20:08 +0000 (19:20 +0000)]
65c816: fix bank 0 error

6 years agov65c816: Fix usermem
Alan Cox [Mon, 1 Jan 2018 23:59:16 +0000 (23:59 +0000)]
v65c816: Fix usermem

With this fixed we can start init but we blow up on syscalls.

Be warned - this port tends to eat the disk as well so keep a copy!

6 years agov65c816-big: formatting
Alan Cox [Mon, 1 Jan 2018 23:59:02 +0000 (23:59 +0000)]
v65c816-big: formatting

6 years agov65c816-big: allow more stack
Alan Cox [Mon, 1 Jan 2018 23:57:56 +0000 (23:57 +0000)]
v65c816-big: allow more stack

6 years agov65c816: make platform code split I/D safe
Alan Cox [Mon, 1 Jan 2018 23:16:44 +0000 (23:16 +0000)]
v65c816: make platform code split I/D safe

6 years agov65c816: update memory map from C, set pages right
Alan Cox [Mon, 1 Jan 2018 23:16:24 +0000 (23:16 +0000)]
v65c816: update memory map from C, set pages right

6 years agov65c816-big: adapt devhd to use peek/poke for the I/O bank
Alan Cox [Mon, 1 Jan 2018 23:15:51 +0000 (23:15 +0000)]
v65c816-big: adapt devhd to use peek/poke for the I/O bank

6 years agov65c816-big: fix bug in devtty introduced in peek conversion
Alan Cox [Mon, 1 Jan 2018 23:15:16 +0000 (23:15 +0000)]
v65c816-big: fix bug in devtty introduced in peek conversion

6 years agov65c816-big: Update loading code and add trampolines for exceptions/ints
Alan Cox [Mon, 1 Jan 2018 23:14:42 +0000 (23:14 +0000)]
v65c816-big: Update loading code and add trampolines for exceptions/ints

6 years agov65c816-big: sort out the memory mapping and file build
Alan Cox [Mon, 1 Jan 2018 23:14:20 +0000 (23:14 +0000)]
v65c816-big: sort out the memory mapping and file build

6 years ago65c816: add new def for split I/D capable code
Alan Cox [Mon, 1 Jan 2018 23:13:47 +0000 (23:13 +0000)]
65c816: add new def for split I/D capable code

6 years ago65c816: make the usermem code any bank and split I/D safe
Alan Cox [Mon, 1 Jan 2018 23:12:51 +0000 (23:12 +0000)]
65c816: make the usermem code any bank and split I/D safe

It's not tested at this point so expect a bug or two

6 years ago65c816: make the task switch code safe for any bank and split I/D
Alan Cox [Mon, 1 Jan 2018 23:12:18 +0000 (23:12 +0000)]
65c816: make the task switch code safe for any bank and split I/D

6 years agov65c816-big: Further fixups
Alan Cox [Mon, 1 Jan 2018 20:00:38 +0000 (20:00 +0000)]
v65c816-big: Further fixups

This is enough to get os to taking an interrupt at which point it all goes
down the pan.

- Added a hack for the cc65 jmpvec problem
- Corrected data segment packing (was 512 bytes out)
- Fixed stack locations (I think)

6 years agoREADME.md: update for 65C816
Alan Cox [Mon, 1 Jan 2018 19:03:24 +0000 (19:03 +0000)]
README.md: update for 65C816

6 years agoREADME: update
Alan Cox [Mon, 1 Jan 2018 18:13:43 +0000 (18:13 +0000)]
README: update

6 years agov65c816-big: get to the point it starts up
Alan Cox [Mon, 1 Jan 2018 17:58:18 +0000 (17:58 +0000)]
v65c816-big: get to the point it starts up

With these changes the image is loaded and appears to get put in the right
places. We enter the discard code hit start, hit d_open and then the compiler
generates self modifying code

store to jmpvec+1/+2
jmp jmpvec

So it looks like  little bit of compiler hacking will be needed next, or
possibly a dirty hack of putting jmpvec in stubs in bank 1 and bank 2 so
that it writes the address into bank 2 and jumps to a bank 1 stub that can
then fix up the mess.

(Even better of course would be if someone was nuts enough to port the ANSI
pcc compiler to 65C816)

6 years agov65c816-big: propogate changes from v65c816
Alan Cox [Mon, 1 Jan 2018 16:32:29 +0000 (16:32 +0000)]
v65c816-big: propogate changes from v65c816

6 years agov65c816: use the new DMA mappings for fast disk I/O
Alan Cox [Mon, 1 Jan 2018 16:29:41 +0000 (16:29 +0000)]
v65c816: use the new DMA mappings for fast disk I/O

Needs the latest version of v65C816

6 years ago65c816: support multiple disk devices
Alan Cox [Sun, 31 Dec 2017 23:09:58 +0000 (23:09 +0000)]
65c816: support multiple disk devices

6 years agoMakefile.6502: Fix minor buglet
Alan Cox [Sun, 31 Dec 2017 23:02:18 +0000 (23:02 +0000)]
Makefile.6502: Fix minor buglet

6 years agoutils: update remount to handle mtab etc
Alan Cox [Sun, 31 Dec 2017 23:01:28 +0000 (23:01 +0000)]
utils: update remount to handle mtab etc

Add a -n option for boot time

6 years agoutils: remove umount unused define and old comment
Alan Cox [Sun, 31 Dec 2017 23:01:13 +0000 (23:01 +0000)]
utils: remove umount unused define and old comment

6 years agodf; use mntent
Alan Cox [Sun, 31 Dec 2017 23:00:30 +0000 (23:00 +0000)]
df; use mntent

6 years agoremount: use mntent files
Alan Cox [Sun, 31 Dec 2017 22:24:33 +0000 (22:24 +0000)]
remount: use mntent files

This isn't sufficient for a proper remount but is a straight port of the
current usage model.

6 years agoutil: update fsck to use mntent facilities
Alan Cox [Sun, 31 Dec 2017 22:24:18 +0000 (22:24 +0000)]
util: update fsck to use mntent facilities

6 years agoutils: Make mount/umount do all the right things
Alan Cox [Sun, 31 Dec 2017 22:22:57 +0000 (22:22 +0000)]
utils: Make mount/umount do all the right things

Now uses mntent, does proper locking and correctly allows mount and umount -a

6 years agomntent: Continue work
Alan Cox [Sun, 31 Dec 2017 22:21:47 +0000 (22:21 +0000)]
mntent: Continue work

- Fix bugs in draft code
- Introduce getmntent_r

With these we have the calls needed to do the right thing.

6 years ago65c816: update TODO
Alan Cox [Sun, 31 Dec 2017 15:32:43 +0000 (15:32 +0000)]
65c816: update TODO

6 years agofilesys: fix typo
Alan Cox [Sun, 31 Dec 2017 15:31:58 +0000 (15:31 +0000)]
filesys: fix typo

6 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Thu, 21 Dec 2017 14:12:50 +0000 (14:12 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

6 years agomntent: add to build rules
Alan Cox [Thu, 21 Dec 2017 14:12:32 +0000 (14:12 +0000)]
mntent: add to build rules

6 years agomntent: Library methods for managing mtab and fstab
Alan Cox [Thu, 21 Dec 2017 14:11:38 +0000 (14:11 +0000)]
mntent: Library methods for managing mtab and fstab

We don't use these or hook them in yet but add them ready

6 years agoMerge pull request #575 from beretta42/vtmode
EtchedPixels [Tue, 19 Dec 2017 19:55:36 +0000 (19:55 +0000)]
Merge pull request #575 from beretta42/vtmode

coco3: take cmd line for default video mode

6 years agoMerge pull request #576 from beretta42/signal
EtchedPixels [Tue, 19 Dec 2017 19:55:12 +0000 (19:55 +0000)]
Merge pull request #576 from beretta42/signal

signals: fix precedence to report correct signal no.

6 years agosignals: fix precedence to report correct signal no.
Brett Gordon [Tue, 19 Dec 2017 05:06:18 +0000 (00:06 -0500)]
signals: fix precedence to report correct signal no.

6 years agococo3: take cmd line for default video mode
Brett Gordon [Mon, 18 Dec 2017 13:58:47 +0000 (08:58 -0500)]
coco3: take cmd line for default video mode

6 years ago65c816-big: We can't build it all -Oi, but we can do the core code
Alan Cox [Fri, 15 Dec 2017 13:05:31 +0000 (13:05 +0000)]
65c816-big: We can't build it all -Oi, but we can do the core code

6 years agov65c816-big: A development configuration for a 65C816 with loads of RAM
Alan Cox [Fri, 15 Dec 2017 00:09:49 +0000 (00:09 +0000)]
v65c816-big: A development configuration for a 65C816 with loads of RAM

8MB RAM testing work.

Lots to do here (plus some of the core code like the scheduler doesn't really
scale to 128 processes!)

6 years agolevel2: fix build errors from previous changes
Alan Cox [Fri, 15 Dec 2017 00:09:21 +0000 (00:09 +0000)]
level2: fix build errors from previous changes

6 years agov65c816: README
Alan Cox [Fri, 15 Dec 2017 00:08:50 +0000 (00:08 +0000)]
v65c816: README

Signals (from kernel side at least) are done

6 years ago65c816: fix bank != 0 case
Alan Cox [Fri, 15 Dec 2017 00:08:36 +0000 (00:08 +0000)]
65c816: fix bank != 0 case

6 years ago65c816: fix lib code when bank != 0
Alan Cox [Fri, 15 Dec 2017 00:08:19 +0000 (00:08 +0000)]
65c816: fix lib code when bank != 0

6 years agoinode: another SDCC size-ism fixup
Alan Cox [Thu, 14 Dec 2017 21:55:30 +0000 (21:55 +0000)]
inode: another SDCC size-ism fixup

6 years agokernel: another pipe 16bit fix
Alan Cox [Thu, 14 Dec 2017 21:38:31 +0000 (21:38 +0000)]
kernel: another pipe 16bit fix

6 years agoinode: do some more pipe maths in 16bit
Alan Cox [Thu, 14 Dec 2017 21:31:10 +0000 (21:31 +0000)]
inode: do some more pipe maths in 16bit

6 years ago65c816: documentation update
Alan Cox [Thu, 14 Dec 2017 21:25:23 +0000 (21:25 +0000)]
65c816: documentation update

6 years agov65c816: turn on more features, fix memory map bugs
Alan Cox [Thu, 14 Dec 2017 17:10:51 +0000 (17:10 +0000)]
v65c816: turn on more features, fix memory map bugs

Turn on networking core support
Correct the definitions so we are not 0x200 bytes off on the stacks
Move the IRQ DP into $FFxx as it can share with the vectors
Move discard into the upper bits of the stacks where it can be reclaimed

6 years ago65c816: add hints for process.c and also fix up the waitpid loop
Alan Cox [Thu, 14 Dec 2017 15:22:58 +0000 (15:22 +0000)]
65c816: add hints for process.c and also fix up the waitpid loop

Without this fix we can end up stalling in weird corner cases

6 years ago65c816: add register hints
Alan Cox [Thu, 14 Dec 2017 15:22:43 +0000 (15:22 +0000)]
65c816: add register hints

6 years ago65c816: use register ops here and there
Alan Cox [Thu, 14 Dec 2017 15:21:34 +0000 (15:21 +0000)]
65c816: use register ops here and there

We need this to get better performance out of cc65.

We may be able to justify -Oi but the code grows a lot so it may become a
size problem if we did.

6 years agolseek: Fix signed/unsigned complaint from cc65
Alan Cox [Thu, 14 Dec 2017 14:20:26 +0000 (14:20 +0000)]
lseek: Fix signed/unsigned complaint from cc65

6 years agofcntl: Fix F_GETFL bug
Alan Cox [Thu, 14 Dec 2017 13:54:59 +0000 (13:54 +0000)]
fcntl: Fix F_GETFL bug

6 years agokernel: fix typo in process change
Alan Cox [Thu, 14 Dec 2017 13:45:29 +0000 (13:45 +0000)]
kernel: fix typo in process change

6 years ago6502/65c816: introduce a regptr hint
Alan Cox [Thu, 14 Dec 2017 13:43:52 +0000 (13:43 +0000)]
6502/65c816: introduce a regptr hint

We need this because cc65 writes *far* better code if you tell it to mark
key structure pointers as register so it can then use zp based offset addressing
on them

6 years agoz80pack: map is always 8bit.. so use an 8bit value
Alan Cox [Thu, 14 Dec 2017 13:43:12 +0000 (13:43 +0000)]
z80pack: map is always 8bit.. so use an 8bit value

6 years agoprocess: re-arrange code for clarity
Alan Cox [Thu, 14 Dec 2017 13:42:49 +0000 (13:42 +0000)]
process: re-arrange code for clarity

6 years agokernel: introduce a u_done counter set to 0 in rwsetup
Alan Cox [Thu, 14 Dec 2017 13:42:16 +0000 (13:42 +0000)]
kernel: introduce a u_done counter set to 0 in rwsetup

We then use this to clean up psleep_flags_io and some other code. This also
saves us a few bytes

6 years agosignals: correct SIGCONT, optimize code slightly
Alan Cox [Thu, 14 Dec 2017 12:58:24 +0000 (12:58 +0000)]
signals: correct SIGCONT, optimize code slightly

6 years agofilesys: use the getmode helper in i_deref instead
Alan Cox [Thu, 14 Dec 2017 12:20:00 +0000 (12:20 +0000)]
filesys: use the getmode helper in i_deref instead

Cleans up a bit, uses 8bit compares and saves us another 26 bytes