Designing around a 6502 (was Re: Assembly on a Apple IIc+)

From: Jim Keohane <jimkeo_at_multi-platforms.com>
Date: Sat Feb 8 17:40:25 2003

Pat,

    Now I'll really get into trouble by trusting my infamously poor memory.
I played with a plug-in 6809 processor for Apple ]['s. I used it mostly for
a faster Apple Pascal P-System but there also was an OS9 implementation that
did the context switching to which you referred.

    Where my memory comes in is that I recall someone implementing OS9 on
Apple ][e (?) with original 6502 only. That would imply they implemented the
onerous but livable context switching overhead mentioned.

    Trying to recall from my BIX (Bytemag Information eXchange
teleconferencing system) days who was Mr. OS9. Maybe my fellow BIX moderator
Steve Ciarca (sp?) of Ciarca's Cellar fame.

Have fun and let us know how you do. - Jim


Jim Keohane, Multi-Platforms, Inc.

   "It's not whether you win or lose. It's whether you win!"
----- Original Message -----
From: "Patrick Finnegan" <pat_at_purdueriots.com>
To: <cctalk_at_classiccmp.org>
Sent: Saturday, February 08, 2003 16:41
Subject: Designing around a 6502 (was Re: Assembly on a Apple IIc+)


> On Sat, 8 Feb 2003, Jim Keohane wrote:
>
> > =====excerpt=2======================
> >
> > A 6502 task context
> > would therefore require moving about 1KB, which would take about 4,500
> > instructions (at one instruction per cycle.) On a circa-1980's machine,
> > with a 1MHz clock, that would take about 4.5 msec.
>
> This gives me awfully devious ideas... First, were there any 'multitasking
> machines' designed around the 6502? If you wanted to do multitasking, it
> seems like you could design a fairly simple MMU that would swap out the
> zero-page and stack (or all of the memory pages) for different ones,
> depending on the running task. Leaving only a few registers that need to
> be saved, it would leave a very small overhead for task swapping. You
> could even implement kernel and user mode into the MMU, making it swap
> pages automatically on an interrupt or 'memory write' to signal a syscall
> (and a swapping of pages, interrupt to the CPU and transition to 'kernel
> mode').
>
> I think I'm going to need to start playing with designing a 6502-based
> machine now... Or maybe I should just get back to working on putting
> machines into racks so I have some floorspace around here to work in.
>
> Pat
> --
> Purdue Universtiy ITAP/RCS
> Information Technology at Purdue
> Research Computing and Storage
> http://www-rcd.cc.purdue.edu
Received on Sat Feb 08 2003 - 17:40:25 GMT

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:35:54 BST