FUZIX.git
9 years agozx128: Fix stacking of arguments on switchin/switchout
Alan Cox [Sun, 8 Mar 2015 19:27:24 +0000 (19:27 +0000)]
zx128: Fix stacking of arguments on switchin/switchout

With this fixed we can get to the point of trying to load init properly

9 years agozx128: update for tty_sleeping
Alan Cox [Sun, 8 Mar 2015 18:58:16 +0000 (18:58 +0000)]
zx128: update for tty_sleeping

9 years agoplus3: tag in progres devfd seek so I remember to add error handling
Alan Cox [Sun, 8 Mar 2015 18:04:07 +0000 (18:04 +0000)]
plus3: tag in progres devfd seek so I remember to add error handling

Once it works at all anyway...

9 years ago6502: video needs to be in SEG3 to make stuff fit
Alan Cox [Sun, 8 Mar 2015 18:03:49 +0000 (18:03 +0000)]
6502: video needs to be in SEG3 to make stuff fit

9 years agotgl6502: remove bogus NMI bit
Alan Cox [Sun, 8 Mar 2015 18:03:33 +0000 (18:03 +0000)]
tgl6502: remove bogus NMI bit

9 years agolowlevel-6502: Fix NMI confusion
Alan Cox [Sun, 8 Mar 2015 18:03:00 +0000 (18:03 +0000)]
lowlevel-6502: Fix NMI confusion

We never use NMI which is forunate as half the code though the NMI trap
was a string to print and half code to execute.

9 years agomtx: bring up to date with tty_sleeping change
Alan Cox [Sun, 8 Mar 2015 18:02:26 +0000 (18:02 +0000)]
mtx: bring up to date with tty_sleeping change

9 years ago6502: cc65 doesn't grok inline
Alan Cox [Sun, 8 Mar 2015 18:02:08 +0000 (18:02 +0000)]
6502: cc65 doesn't grok inline

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sun, 8 Mar 2015 18:01:54 +0000 (18:01 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agoMerge pull request #134 from erkinalp/utils
EtchedPixels [Sun, 8 Mar 2015 17:53:33 +0000 (17:53 +0000)]
Merge pull request #134 from erkinalp/utils

gets_s() from C11,
factor from toybox

9 years agoFixed prototype macro
Erkin Alp Güney [Sun, 8 Mar 2015 16:49:20 +0000 (18:49 +0200)]
Fixed prototype macro

This is a macro, space is illegal here

9 years agoxputc() does not exist in FUZIX
Erkin Alp Güney [Sun, 8 Mar 2015 16:46:12 +0000 (18:46 +0200)]
xputc() does not exist in FUZIX

9 years agofactor: main() signature corrected, header fixup
Erkin Alp Güney [Sun, 8 Mar 2015 16:43:32 +0000 (18:43 +0200)]
factor: main() signature corrected, header fixup

9 years agoC11: gets_s() prototype added
Erkin Alp Güney [Sun, 8 Mar 2015 16:40:46 +0000 (18:40 +0200)]
C11: gets_s() prototype added

9 years agomodified factor
Erkin Alp Güney [Sun, 8 Mar 2015 16:36:45 +0000 (18:36 +0200)]
modified factor

9 years agoC11 improvements and factor
Erkin Alp Güney [Sun, 8 Mar 2015 15:38:25 +0000 (17:38 +0200)]
C11 improvements and factor
C11: gets_s() added
prime factorisation utility added

9 years agoC11 improvements and factor
Erkin Alp Güney [Sun, 8 Mar 2015 15:38:25 +0000 (17:38 +0200)]
C11 improvements and factor
C11: gets_s() added
prime factorisation utility added

9 years agovt: allow for platforms whose keyboard is not a scan map
Alan Cox [Sat, 7 Mar 2015 21:20:36 +0000 (21:20 +0000)]
vt: allow for platforms whose keyboard is not a scan map

9 years agonc100: tty_sleeping
Alan Cox [Sat, 7 Mar 2015 20:01:34 +0000 (20:01 +0000)]
nc100: tty_sleeping

9 years agoMerge pull request #132 from willsowerbutts/dietsd
EtchedPixels [Sat, 7 Mar 2015 12:41:14 +0000 (12:41 +0000)]
Merge pull request #132 from willsowerbutts/dietsd

devsd: Do not pass drive number as function argument

9 years agoMerge pull request #133 from skiselev/master
EtchedPixels [Sat, 7 Mar 2015 12:40:58 +0000 (12:40 +0000)]
Merge pull request #133 from skiselev/master

zeta-v2: RAM disk cleanup, README fixes

9 years agodevsd msx2: Restore previous drive selection behaviour
Will Sowerbutts [Fri, 6 Mar 2015 23:08:16 +0000 (23:08 +0000)]
devsd msx2: Restore previous drive selection behaviour

9 years agozeta-v2: Update block device names and numbers
Sergey Kiselev [Fri, 6 Mar 2015 17:14:20 +0000 (09:14 -0800)]
zeta-v2: Update block device names and numbers

9 years agozeta-v2: README typo fix
Sergey Kiselev [Fri, 6 Mar 2015 17:10:35 +0000 (09:10 -0800)]
zeta-v2: README typo fix

9 years agozeta-v2: Update shadow MPGSEL registers copy, so that RAM disk can run with interrupt...
Sergey Kiselev [Fri, 6 Mar 2015 01:42:27 +0000 (17:42 -0800)]
zeta-v2: Update shadow MPGSEL registers copy, so that RAM disk can run with interrupts enabled; Misc clean-ups (README file, config.h)

9 years agodevsd: Do not pass drive number as function argument
Will Sowerbutts [Fri, 6 Mar 2015 10:28:07 +0000 (10:28 +0000)]
devsd: Do not pass drive number as function argument

None of our existing platforms support multiple cards. This change moves
the SD drive number into a global variable which platform drivers can
access if required.

This change reduces code size by just over 200 bytes.

9 years agoMerge pull request #131 from skiselev/master
EtchedPixels [Thu, 5 Mar 2015 19:12:33 +0000 (19:12 +0000)]
Merge pull request #131 from skiselev/master

zeta-v2: Initial support for Zeta SBC V2 platform

9 years agozeta-v2: Initial support for Zeta SBC V2 platform
Sergey Kiselev [Thu, 5 Mar 2015 18:16:07 +0000 (10:16 -0800)]
zeta-v2: Initial support for Zeta SBC V2 platform

9 years agodragon: Build with simple.c instead of single.c
Tormod Volden [Sun, 1 Mar 2015 12:46:41 +0000 (13:46 +0100)]
dragon: Build with simple.c instead of single.c

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years agodragon: Add missing .globl directive
Tormod Volden [Sun, 1 Mar 2015 12:46:39 +0000 (13:46 +0100)]
dragon: Add missing .globl directive

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years agodragon: Add empty tty_sleeping()
Tormod Volden [Sun, 1 Mar 2015 12:46:38 +0000 (13:46 +0100)]
dragon: Add empty tty_sleeping()

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years ago6809: Remove stray #endif in cpu.h
Tormod Volden [Sun, 1 Mar 2015 12:46:37 +0000 (13:46 +0100)]
6809: Remove stray #endif in cpu.h

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
9 years agoplus3: Initial files for spectrum +3
Alan Cox [Sat, 28 Feb 2015 14:04:06 +0000 (14:04 +0000)]
plus3: Initial files for spectrum +3

This is just development in progress to make it easier to see how to split
the 128 and the plus 3 features.

9 years agopcw8256: Get back building
Alan Cox [Fri, 27 Feb 2015 17:36:35 +0000 (17:36 +0000)]
pcw8256: Get back building

The floppy driver is still not behaving and I'm not sure why

9 years agosimple: no cache flusher needed
Alan Cox [Thu, 26 Feb 2015 22:43:50 +0000 (22:43 +0000)]
simple: no cache flusher needed

9 years agoMerge pull request #130 from willsowerbutts/fixes
EtchedPixels [Thu, 26 Feb 2015 09:59:36 +0000 (09:59 +0000)]
Merge pull request #130 from willsowerbutts/fixes

Fixes

9 years agop112, n8vem-mark4: Drop BOOT_TTY in favour of TTYDEV.
Will Sowerbutts [Sun, 22 Feb 2015 21:41:29 +0000 (21:41 +0000)]
p112, n8vem-mark4: Drop BOOT_TTY in favour of TTYDEV.

9 years agomonitor-z80: Record entry SP
Will Sowerbutts [Sun, 22 Feb 2015 23:50:27 +0000 (23:50 +0000)]
monitor-z80: Record entry SP

9 years agon8vem-mark4: Stub for tty_sleeping()
Will Sowerbutts [Tue, 24 Feb 2015 21:10:46 +0000 (21:10 +0000)]
n8vem-mark4: Stub for tty_sleeping()

9 years agodevide: Reset all drives before initialisation
Will Sowerbutts [Tue, 24 Feb 2015 21:11:23 +0000 (21:11 +0000)]
devide: Reset all drives before initialisation

9 years agoKernel: Bug fix for failed _open on devices
Will Sowerbutts [Wed, 25 Feb 2015 00:13:04 +0000 (00:13 +0000)]
Kernel: Bug fix for failed _open on devices

9 years agoKernel: Minor bug fix for tty_open
Will Sowerbutts [Wed, 25 Feb 2015 00:17:03 +0000 (00:17 +0000)]
Kernel: Minor bug fix for tty_open

9 years agoMerge pull request #129 from willsowerbutts/bugfixes
EtchedPixels [Sun, 22 Feb 2015 18:07:33 +0000 (18:07 +0000)]
Merge pull request #129 from willsowerbutts/bugfixes

Bugfixes

9 years agoKernel: Bug fix: _execve() did not dereference executable's inode when successful.
Will Sowerbutts [Sun, 22 Feb 2015 17:58:45 +0000 (17:58 +0000)]
Kernel: Bug fix: _execve() did not dereference executable's inode when successful.

9 years agoKernel: Improve idump() output
Will Sowerbutts [Sun, 22 Feb 2015 17:59:20 +0000 (17:59 +0000)]
Kernel: Improve idump() output

9 years agoRevert "devio: sync before we flush"
Alan Cox [Sun, 22 Feb 2015 17:35:12 +0000 (17:35 +0000)]
Revert "devio: sync before we flush"

This reverts commit 19be9812a23c618b71b8d9a224c4de18260ca053.

We can't handle it this way

9 years agotrs80: add tty_sleeping
Alan Cox [Sat, 21 Feb 2015 23:20:02 +0000 (23:20 +0000)]
trs80: add tty_sleeping

9 years agoMerge pull request #128 from geijoenr/master
EtchedPixels [Sat, 21 Feb 2015 20:00:16 +0000 (20:00 +0000)]
Merge pull request #128 from geijoenr/master

boot with R800 CPU mode and README update

9 years agomsx2: update README
geijoenr [Sat, 21 Feb 2015 19:20:03 +0000 (19:20 +0000)]
msx2: update README

9 years agomsx2: switch to R800 cpu on boot if available
geijoenr [Sat, 21 Feb 2015 19:19:03 +0000 (19:19 +0000)]
msx2: switch to R800 cpu on boot if available

We want to boot fast on TurboR.

9 years agomsx2: add tty_sleeping
geijoenr [Sat, 21 Feb 2015 19:18:20 +0000 (19:18 +0000)]
msx2: add tty_sleeping

9 years agoMerge pull request #127 from geijoenr/master
EtchedPixels [Sat, 21 Feb 2015 15:33:11 +0000 (15:33 +0000)]
Merge pull request #127 from geijoenr/master

msx2: generate 8k banked ascii rom

9 years agoMerge pull request #126 from willsowerbutts/typo
EtchedPixels [Sat, 21 Feb 2015 15:32:48 +0000 (15:32 +0000)]
Merge pull request #126 from willsowerbutts/typo

README: typo

9 years agoMerge pull request #125 from willsowerbutts/p112serial
EtchedPixels [Sat, 21 Feb 2015 15:32:27 +0000 (15:32 +0000)]
Merge pull request #125 from willsowerbutts/p112serial

Improved P112 serial support

9 years agomsx2: move memory sizing to bootstrap
geijoenr [Sat, 21 Feb 2015 12:57:45 +0000 (12:57 +0000)]
msx2: move memory sizing to bootstrap

9 years agomsx2: generate 8k banked ascii rom
geijoenr [Fri, 20 Feb 2015 20:44:11 +0000 (20:44 +0000)]
msx2: generate 8k banked ascii rom

Switching to a banked rom simplifies the bootstrap, allows us to
discard it and also opens the possibility of appending a romfs
after the kernel

9 years agoplatform: standardise the offset checks for raw, and use BLKMASK
Alan Cox [Sat, 21 Feb 2015 00:34:17 +0000 (00:34 +0000)]
platform: standardise the offset checks for raw, and use BLKMASK

9 years agoinode: use BLKOFF
Alan Cox [Sat, 21 Feb 2015 00:32:38 +0000 (00:32 +0000)]
inode: use BLKOFF

This saves a bit of memory

9 years agofilesys: use BLKOFF
Alan Cox [Sat, 21 Feb 2015 00:32:22 +0000 (00:32 +0000)]
filesys: use BLKOFF

9 years agokernel: Add a definition for BLKOFF(x) which does the right casting
Alan Cox [Sat, 21 Feb 2015 00:31:09 +0000 (00:31 +0000)]
kernel: Add a definition for BLKOFF(x) which does the right casting

This avoids promotion to long and ugly code coming out of the Z80 compiler
in particular (and excessive code on 6502).

9 years agoinode: use psleep_flags helper
Alan Cox [Sat, 21 Feb 2015 00:02:05 +0000 (00:02 +0000)]
inode: use psleep_flags helper

In doing so also corrects sleep behaviour

9 years agoREADME: typo
Will Sowerbutts [Fri, 20 Feb 2015 23:56:50 +0000 (23:56 +0000)]
README: typo

9 years agoinode: Fix bug in direct I/O with holes
Alan Cox [Fri, 20 Feb 2015 23:55:07 +0000 (23:55 +0000)]
inode: Fix bug in direct I/O with holes

9 years agop112: README update
Will Sowerbutts [Fri, 20 Feb 2015 23:51:42 +0000 (23:51 +0000)]
p112: README update

9 years agoREADME: update
Alan Cox [Fri, 20 Feb 2015 23:50:26 +0000 (23:50 +0000)]
README: update

9 years agodevio: sync before we flush
Alan Cox [Fri, 20 Feb 2015 22:27:37 +0000 (22:27 +0000)]
devio: sync before we flush

We should sync just this device and invalidate in the close but this is a start

9 years agofilesys: use inline for baddev
Alan Cox [Fri, 20 Feb 2015 22:24:56 +0000 (22:24 +0000)]
filesys: use inline for baddev

Saves us 0x40 bytes or so

9 years agop112: Pad floppy boot images to sector boundary
Will Sowerbutts [Fri, 20 Feb 2015 21:34:35 +0000 (21:34 +0000)]
p112: Pad floppy boot images to sector boundary

9 years agoFilesystem tools: Create tty5 through tty8 as standard
Will Sowerbutts [Fri, 20 Feb 2015 21:34:11 +0000 (21:34 +0000)]
Filesystem tools: Create tty5 through tty8 as standard

9 years agop112: Improved ESCC, 16550A serial port support
Will Sowerbutts [Fri, 20 Feb 2015 21:33:43 +0000 (21:33 +0000)]
p112: Improved ESCC, 16550A serial port support

9 years agoKernel: Fix tty race condition, introduce new tty_sleeping() function.
Will Sowerbutts [Fri, 20 Feb 2015 21:21:29 +0000 (21:21 +0000)]
Kernel: Fix tty race condition, introduce new tty_sleeping() function.

There are a few cases where a process goes to sleep while waiting for
the UART to be ready to transmit. We want to be able to use interrupts
to alert us to the UART becoming ready again (for example once the UART
has drained or the flow control pins have changed).

There was a race to put the process to sleep after tty_writeready()
reports that it the UART is busy but before psleep() is called; the
waking interrupt may arrive in that interval, wakeup() will not find
any sleeping process, and no further interrupts will arrive after
psleep() returns.

The solution adopted here is to normally run with these waking
interrupts disabled. When we put the process to sleep we enable the
waking interrupts and call psleep() atomically. A new platform
tty_sleeping() function is required to do the work of enabling the
relevant interrupts for the given tty. The platform interrupt handler
then disables these interrupts when calling tty_outproc() to awaken the
process.

9 years agoKernel: wakeup() now uses pwake() function
Will Sowerbutts [Fri, 20 Feb 2015 21:20:36 +0000 (21:20 +0000)]
Kernel: wakeup() now uses pwake() function

9 years agoreadonly: Initial pieces for read-only mounts
Alan Cox [Fri, 20 Feb 2015 20:45:25 +0000 (20:45 +0000)]
readonly: Initial pieces for read-only mounts

9 years agotrs80: note you need -model 4p
Alan Cox [Fri, 20 Feb 2015 20:43:12 +0000 (20:43 +0000)]
trs80: note you need -model 4p

Small but important detail

9 years agobanking: fix panic uses
Alan Cox [Fri, 20 Feb 2015 20:39:45 +0000 (20:39 +0000)]
banking: fix panic uses

9 years agobankfixed: fix panic use
Alan Cox [Fri, 20 Feb 2015 20:38:47 +0000 (20:38 +0000)]
bankfixed: fix panic use

9 years agosimple: panic on corrupted swap
Alan Cox [Thu, 19 Feb 2015 23:22:10 +0000 (23:22 +0000)]
simple: panic on corrupted swap

9 years agobankfixed: adopt panic behaviour of other map types on swap bug
Alan Cox [Thu, 19 Feb 2015 23:20:53 +0000 (23:20 +0000)]
bankfixed: adopt panic behaviour of other map types on swap bug

9 years agobank32k: add reminder about stack
Alan Cox [Thu, 19 Feb 2015 23:20:35 +0000 (23:20 +0000)]
bank32k: add reminder about stack

9 years agobank16k_low: first cut at swap
Alan Cox [Thu, 19 Feb 2015 23:15:13 +0000 (23:15 +0000)]
bank16k_low: first cut at swap

There are a couple of 6502 crawly horrors around the stack left to resolve!

9 years agobank16k: first pass swap logic
Alan Cox [Thu, 19 Feb 2015 23:05:58 +0000 (23:05 +0000)]
bank16k: first pass swap logic

Do the swap in four requests so that each I/O is one mapping in memory space
and the drivers can stay sane. Right now swap passes the process ptr and
that should probably change to the page number (or for the simpler cases
the bank is the same thing).

9 years agosimple: swap policy
Alan Cox [Thu, 19 Feb 2015 23:05:07 +0000 (23:05 +0000)]
simple: swap policy

Nice and easy, no common memory magic, no splitting buffers, it's either
mapped or its swapped

9 years agokernel.h: swapmap prototypes
Alan Cox [Thu, 19 Feb 2015 23:04:49 +0000 (23:04 +0000)]
kernel.h: swapmap prototypes

9 years agoswap, bankfixed: move the swapin/out methods to the memory manager
Alan Cox [Thu, 19 Feb 2015 22:49:47 +0000 (22:49 +0000)]
swap, bankfixed: move the swapin/out methods to the memory manager

9 years agozx128: kill stale swap defines
Alan Cox [Thu, 19 Feb 2015 22:43:52 +0000 (22:43 +0000)]
zx128: kill stale swap defines

9 years agoswap: Make various methods global ready for further movements
Alan Cox [Thu, 19 Feb 2015 22:43:26 +0000 (22:43 +0000)]
swap: Make various methods global ready for further movements

9 years agoswap: remove UDATA_BLOCKS and friends
Alan Cox [Thu, 19 Feb 2015 22:38:56 +0000 (22:38 +0000)]
swap: remove UDATA_BLOCKS and friends

Nothing uses them and we need a better interface for split up swap anyway.

9 years agoMerge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Thu, 19 Feb 2015 11:52:07 +0000 (11:52 +0000)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX

9 years agofstomdv: turn an fs image into a microdrive cartridge
Alan Cox [Thu, 19 Feb 2015 11:51:44 +0000 (11:51 +0000)]
fstomdv: turn an fs image into a microdrive cartridge

9 years agoblankmdv: make a blank 'disk' microdrive
Alan Cox [Thu, 19 Feb 2015 11:51:17 +0000 (11:51 +0000)]
blankmdv: make a blank 'disk' microdrive

9 years agozx128: first bits of trying to build a betadisk driver
Alan Cox [Thu, 19 Feb 2015 11:35:25 +0000 (11:35 +0000)]
zx128: first bits of trying to build a betadisk driver

This is ugly stuff, we can only access it via the ROM and the ROM doesn't
contain the functionality we need.

9 years agozx128: update main for final memory mappings
Alan Cox [Thu, 19 Feb 2015 11:35:08 +0000 (11:35 +0000)]
zx128: update main for final memory mappings

9 years agozx128: further tricks.s updating
Alan Cox [Thu, 19 Feb 2015 11:34:44 +0000 (11:34 +0000)]
zx128: further tricks.s updating

This gets us closer to the point we can do userspace usefully

9 years agozx128: tidy up traps
Alan Cox [Thu, 19 Feb 2015 11:34:11 +0000 (11:34 +0000)]
zx128: tidy up traps

9 years agozx128: correct pagemap docs
Alan Cox [Thu, 19 Feb 2015 11:33:54 +0000 (11:33 +0000)]
zx128: correct pagemap docs

9 years agoMerge pull request #122 from willsowerbutts/devsdfix
EtchedPixels [Mon, 16 Feb 2015 13:21:08 +0000 (13:21 +0000)]
Merge pull request #122 from willsowerbutts/devsdfix

devsd: Fix for picky cards

9 years agodevsd: Fix for picky cards
Will Sowerbutts [Sun, 15 Feb 2015 22:20:57 +0000 (22:20 +0000)]
devsd: Fix for picky cards

9 years agozx128: update README
Alan Cox [Sun, 15 Feb 2015 22:30:57 +0000 (22:30 +0000)]
zx128: update README

9 years agozx128: real fd first, mdv gets its own slot
Alan Cox [Sun, 15 Feb 2015 22:27:34 +0000 (22:27 +0000)]
zx128: real fd first, mdv gets its own slot

9 years agozx128: fix bugs in the microdrive layer
Alan Cox [Sun, 15 Feb 2015 22:27:15 +0000 (22:27 +0000)]
zx128: fix bugs in the microdrive layer