On Mon, 10 Feb 2003, Dwight K. Elvey wrote:
Hi
There was some software multitasking done on 6502's, as well
as other machines. This was done in Forth ( both preemptive
Yes, I figured that much, but I meant some sort of hardware multitasking,
with an MMU like Sun did on MC68k systems. Are there any 6502-based
machines that used an MMU for hardware-based multitasking?
Pat
--
Purdue Universtiy ITAP/RCS
Information Technology at Purdue
Research Computing and Storage
http://www-rcd.cc.purdue.edu
>From: "Patrick Finnegan" <pat(a)purdueriots.com>
>
>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