Alan Cox [Wed, 25 Apr 2018 13:04:39 +0000 (14:04 +0100)]
graphics: updates on notes and UBEE format
Alan Cox [Wed, 25 Apr 2018 13:04:24 +0000 (14:04 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Wed, 25 Apr 2018 13:03:47 +0000 (14:03 +0100)]
ubee: fix memory probing for banked video
With this change no TC ubees get to the point you can type keys at which point
the keyboard driver returns crap.
Alan Cox [Wed, 25 Apr 2018 13:03:17 +0000 (14:03 +0100)]
ubee: lay foundations for graphic mode support
Alan Cox [Wed, 25 Apr 2018 13:02:44 +0000 (14:02 +0100)]
ubee: fix crt0 handling of non TC
EtchedPixels [Tue, 24 Apr 2018 22:13:48 +0000 (23:13 +0100)]
Merge pull request #609 from davidgiven/nc200
Amstrad NC boot fixes, raw disk I/O fixes
Alan Cox [Tue, 24 Apr 2018 19:58:54 +0000 (20:58 +0100)]
ubee: Fix TC shift/ctrl keys
David Given [Tue, 24 Apr 2018 19:54:29 +0000 (21:54 +0200)]
Rework the bootblock to avoid several how-did-this-ever-work style bugs where
pages of code weren't being mapped in the right place.
David Given [Tue, 24 Apr 2018 19:01:27 +0000 (21:01 +0200)]
Actually read data into user memory, rather than scribbling randomly across the
address space (which never works).
Alan Cox [Mon, 23 Apr 2018 22:43:26 +0000 (23:43 +0100)]
ubee: update README
Alan Cox [Mon, 23 Apr 2018 22:39:02 +0000 (23:39 +0100)]
ubee: sketch out the revised backscroll
Alan Cox [Mon, 23 Apr 2018 22:31:51 +0000 (23:31 +0100)]
inode: fix silly bug in direct I/O fix attempt
Maybe this time it'll actually work
EtchedPixels [Mon, 23 Apr 2018 22:21:30 +0000 (23:21 +0100)]
Merge pull request #608 from davidgiven/nc200
NC200 screen and floppy support
David Given [Mon, 23 Apr 2018 20:42:41 +0000 (22:42 +0200)]
Update documentation.
David Given [Mon, 23 Apr 2018 20:27:03 +0000 (22:27 +0200)]
Post-merge fixing to make the floppy driver work.
David Given [Mon, 23 Apr 2018 19:00:12 +0000 (21:00 +0200)]
In-progress (non-building) merge of the NC200 floppy driver.
David Given [Mon, 23 Apr 2018 18:52:26 +0000 (20:52 +0200)]
Correctly set the location and size of the video memory on the NC200.
Alan Cox [Mon, 23 Apr 2018 13:24:48 +0000 (14:24 +0100)]
ubee: update the vt code to make the 6545 hardware cursor work
Alan Cox [Mon, 23 Apr 2018 13:24:37 +0000 (14:24 +0100)]
start: its 2018
Alan Cox [Mon, 23 Apr 2018 13:24:19 +0000 (14:24 +0100)]
filesys: note where locking changes will be needed
EtchedPixels [Sun, 22 Apr 2018 12:10:39 +0000 (13:10 +0100)]
Merge pull request #607 from davidgiven/nc200
Rearrange platform-nc100 and platform-nc200
Alan Cox [Sun, 22 Apr 2018 12:09:12 +0000 (13:09 +0100)]
ubee: more oddments on the display code etc
David Given [Sat, 21 Apr 2018 14:32:52 +0000 (16:32 +0200)]
Bodge the prototype NC200 port into at least building (although it doesn't
work).
David Given [Sat, 21 Apr 2018 13:57:47 +0000 (15:57 +0200)]
Stage #1 of moving the NC200 stuff into the amstradnc directory.
David Given [Sat, 21 Apr 2018 13:48:02 +0000 (15:48 +0200)]
Merge from master.
David Given [Sat, 21 Apr 2018 11:02:38 +0000 (13:02 +0200)]
Refactor the Amstrad NC directory so that the NC100 build stuff is in its own
subdirectory --- this is to allow a hypothetical NC200 port to have different
build scripts but share as much code as possible.
This changes the platform name from nc100 to amstradnc/nc100.
David Given [Fri, 20 Apr 2018 22:22:50 +0000 (00:22 +0200)]
First draft conversion of the floppy driver away from the block device
framework --- smaller and hopefully faster; but it looks like this is revealing
some awful memory corrupt bug and the root filesystem doesn't reliably mount
any more.
Alan Cox [Fri, 20 Apr 2018 12:32:09 +0000 (13:32 +0100)]
ubee: fix up the display code bugs
We still don't do all the scrolling right but this will do for testing other
bits of the code
Alan Cox [Fri, 20 Apr 2018 12:31:22 +0000 (13:31 +0100)]
ubee: turn on clearing vt now the port bug is fixed
Alan Cox [Fri, 20 Apr 2018 12:31:02 +0000 (13:31 +0100)]
ubee: set display to 80x25
Alan Cox [Fri, 20 Apr 2018 12:30:34 +0000 (13:30 +0100)]
ubee: call map_kernel in start up to initialize shadow port copy
Alan Cox [Fri, 20 Apr 2018 12:30:18 +0000 (13:30 +0100)]
ubee: NMOS Z80 with bugs
Alan Cox [Thu, 19 Apr 2018 22:50:37 +0000 (23:50 +0100)]
ubee: Next stages to get from prototype to usable
- Draft code for lpen keyboard
- Fix various platform detection bugs
- Rework video to bank it out when not used (in progress)
- Support attributes and colour
- Memory map re-arrange and buffer recovery
- Turn on networking and other stuff that is useful
Not yet working (still debugging the video changes)
Alan Cox [Thu, 19 Apr 2018 22:45:00 +0000 (23:45 +0100)]
vt: vtattr_notify missing cases
Set sensible colours on startup and notify the platform code so it can set up
the correct properties.
Also do a notify on a vt switch as the attributes are per vt.
Alan Cox [Thu, 19 Apr 2018 22:44:40 +0000 (23:44 +0100)]
vt: should define vtattr in the headers
This didn't show up as everyone currently uses it in asm files only
David Given [Thu, 19 Apr 2018 21:11:17 +0000 (23:11 +0200)]
Merge from master.
Alan Cox [Wed, 18 Apr 2018 22:44:45 +0000 (23:44 +0100)]
kernel: hopefully fix the busy block panic
Do make backups before you test this!
David Given [Wed, 18 Apr 2018 21:49:23 +0000 (23:49 +0200)]
Add motor spindown and multisector transfer support (although we only ever seem
to be asked for a single sector at a time). Fix so, so many bugs.
Alan Cox [Tue, 17 Apr 2018 22:17:28 +0000 (23:17 +0100)]
inode: and a quick fixup for the fixup
This is too ugly to live long term but will do for the moment while I figure
out the proper way to deal with this and avoid things like the double search.
Possibly we need a unified 'bread' related operation that gets the contents
of a buffer into user space, by any means needed.
Something like
bp = bfind(...)
if (bp || !user) {
if (bp == NULL)
bread_no_lookup()
update fields
copy to user
unlock
return
}
issue raw copy to user page
Alan Cox [Tue, 17 Apr 2018 22:13:51 +0000 (23:13 +0100)]
inode: Fix double locking
This was a long lurking buglet caught by the new inode locking code and
chased down by Tormod. I think this approach is correct. The old inefficiency
of doing a bfind to find the buffer does not exist and the a bread discovering
this again is still present.
Alan Cox [Tue, 17 Apr 2018 22:13:27 +0000 (23:13 +0100)]
z80pack: update README
Alan Cox [Tue, 17 Apr 2018 22:13:07 +0000 (23:13 +0100)]
ubee: first sketch out of light pen keyboard support
David Given [Tue, 17 Apr 2018 21:07:27 +0000 (23:07 +0200)]
Add bare-bones work-in-progress floppy disk driver: no spindown, and everything
is a sector at a time, but it'll boot and load init.
Alan Cox [Sun, 15 Apr 2018 13:48:01 +0000 (14:48 +0100)]
input: add BUTTON(n) define for the button byte
Alan Cox [Sun, 15 Apr 2018 13:47:45 +0000 (14:47 +0100)]
z80pack: turn on direct I/O for execve etc
Alan Cox [Sun, 15 Apr 2018 13:47:10 +0000 (14:47 +0100)]
pcw8256: further update/work
Still need to tackle the rest of the bootloader and the fork bug
EtchedPixels [Fri, 13 Apr 2018 21:32:34 +0000 (22:32 +0100)]
Merge pull request #606 from beretta42/inputfix
input: fix ifdef typo
Brett Gordon [Fri, 13 Apr 2018 05:53:43 +0000 (01:53 -0400)]
input: fix ifdef typo
Alan Cox [Thu, 12 Apr 2018 10:46:00 +0000 (11:46 +0100)]
pcw8256: Example (in progress) devinput device
- Mice need changing to do their work each vblank and accumulate
- No suport for all up/down events yet
- Still need to work out what mode 1 will mean and define in a globally meaningful way - or add a matches ioctl for say up to 8 'grabbed' keycodes
Hopefully enough of a sketch to start getting joystick support into platforms
at least.
Note: the basic idea of all of this is to bind together all the input events
into a single device so that we don't need all the overhead of poll and big
unixisms. Thus a game can grab the keyboard, and get keyboard/joystick/mouse
events all down one channel
Alan
Alan Cox [Thu, 12 Apr 2018 10:45:52 +0000 (11:45 +0100)]
kernel: build devinput if needed
Alan Cox [Thu, 12 Apr 2018 10:44:54 +0000 (11:44 +0100)]
devinput: the input device layer
This is designed to be as trivial as possible. The real complexity if any is
in tweaking platform tty code to queue all the up/down events when the keyboard
is grabbed.
Alan Cox [Thu, 12 Apr 2018 10:44:44 +0000 (11:44 +0100)]
devsys: hooks for input device
Alan Cox [Thu, 12 Apr 2018 10:44:32 +0000 (11:44 +0100)]
input: definitions for input device
Alan Cox [Thu, 12 Apr 2018 10:44:06 +0000 (11:44 +0100)]
input: reserve an ioctl range for the input device
Alan Cox [Wed, 11 Apr 2018 22:37:52 +0000 (23:37 +0100)]
pcw8256: add initial cut at hard disk drivers
Update some notes
Add some of the swap bits (more is needed see the COCO3)
Alan Cox [Tue, 10 Apr 2018 22:25:44 +0000 (23:25 +0100)]
super: tweak a bit
Still don't rely upon this
Alan Cox [Tue, 10 Apr 2018 22:21:19 +0000 (23:21 +0100)]
superblock: Add geometry proposal
Don't use or rely on this yet!
Alan Cox [Tue, 10 Apr 2018 22:16:42 +0000 (23:16 +0100)]
superblock: get the kernel inoptr out of the superblock
Put it in the memory only area where it belongs
Alan Cox [Tue, 10 Apr 2018 21:51:02 +0000 (22:51 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Tue, 10 Apr 2018 21:50:32 +0000 (22:50 +0100)]
6502: first attempt at a proper push/pop signal stacking handler
EtchedPixels [Tue, 10 Apr 2018 13:38:07 +0000 (14:38 +0100)]
Merge pull request #605 from beretta42/time
debug new api for RTC's
Mostly overlaps other fixes, just merging remainder
EtchedPixels [Tue, 10 Apr 2018 13:37:44 +0000 (14:37 +0100)]
Merge branch 'master' into time
Alan Cox [Tue, 10 Apr 2018 12:30:17 +0000 (13:30 +0100)]
z80pack: update to platform_rtc_ naming
Alan Cox [Tue, 10 Apr 2018 12:29:57 +0000 (13:29 +0100)]
nc100: remove dead functionality breaking build
Alan Cox [Tue, 10 Apr 2018 12:29:42 +0000 (13:29 +0100)]
pcw8256: README
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
Alan Cox [Tue, 10 Apr 2018 12:28:57 +0000 (13:28 +0100)]
z80pack-lite: Fix typo breaking build
Alan Cox [Mon, 9 Apr 2018 20:37:22 +0000 (21:37 +0100)]
ds1302: move to platform_rtc_ naming
Alan Cox [Mon, 9 Apr 2018 20:37:09 +0000 (21:37 +0100)]
z180: fix rename of monitor entry
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.
Alan Cox [Sun, 8 Apr 2018 23:05:22 +0000 (00:05 +0100)]
6502: fix make clean
Alan Cox [Sun, 8 Apr 2018 23:05:04 +0000 (00:05 +0100)]
6502: fix make clean
Alan Cox [Sun, 8 Apr 2018 23:04:28 +0000 (00:04 +0100)]
65c816: align with platform_ change for monitor call
Alan Cox [Sun, 8 Apr 2018 23:04:14 +0000 (00:04 +0100)]
rtc: change rtc to platform_
Brett Gordon [Sun, 8 Apr 2018 22:28:27 +0000 (18:28 -0400)]
coco3: redo drivewire time rtc / simplify.
Alan Cox [Sun, 8 Apr 2018 20:42:43 +0000 (21:42 +0100)]
coco3: move to platform_rtc
Alan Cox [Sun, 8 Apr 2018 20:38:55 +0000 (21:38 +0100)]
asz80: fix Makefile clean for 6809
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
Alan Cox [Sun, 8 Apr 2018 20:35:25 +0000 (21:35 +0100)]
timer: start switching platforms to platform_ naming
Alan Cox [Sun, 8 Apr 2018 20:31:24 +0000 (21:31 +0100)]
z80: build gpt tools
Alan Cox [Sun, 8 Apr 2018 20:30:55 +0000 (21:30 +0100)]
Library: fix builds on systems not using gcc
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.
EtchedPixels [Sun, 8 Apr 2018 19:55:08 +0000 (20:55 +0100)]
Merge pull request #600 from beretta42/apple
lib: fix 6502 syscall generator
Alan Cox [Sun, 8 Apr 2018 19:54:06 +0000 (20:54 +0100)]
Merge branch 'master' of https://github.com/EtchedPixels/FUZIX
Alan Cox [Sun, 8 Apr 2018 19:52:03 +0000 (20:52 +0100)]
pdp11: commit makefile and crt0 code
Alan Cox [Sun, 8 Apr 2018 19:51:21 +0000 (20:51 +0100)]
crt0: Fix return propogation to exit
Reported by David Given
EtchedPixels [Sun, 8 Apr 2018 19:43:24 +0000 (20:43 +0100)]
Merge pull request #604 from beretta42/tar
tar: issue fixes
Brett Gordon [Sun, 8 Apr 2018 16:42:12 +0000 (12:42 -0400)]
tar: truncate existing files.
Brett Gordon [Sun, 8 Apr 2018 16:41:29 +0000 (12:41 -0400)]
tar: make parent directories
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.
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!
Alan Cox [Fri, 6 Apr 2018 18:38:01 +0000 (19:38 +0100)]
kernel: Pre-emption rate is supposed to be tick rate independent!
Alan Cox [Fri, 6 Apr 2018 18:37:04 +0000 (19:37 +0100)]
z80pack: swap define
Alan Cox [Fri, 6 Apr 2018 18:36:46 +0000 (19:36 +0100)]
z80: allow fixedbank to used swapless
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
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.
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
Alan Cox [Mon, 2 Apr 2018 22:01:02 +0000 (23:01 +0100)]
filesys: fix errno 0 failure with overlong path
Alan Cox [Mon, 2 Apr 2018 21:39:37 +0000 (22:39 +0100)]
mkfs: make it clearer how block free list is set up
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)