[NTLK] Calling out to all developers...
Clu
drclu at swbell.net
Thu Jan 28 18:43:15 EST 2010
BTw, I think this is a great idea!!
. . Doctor Clu (member of...)
)\,,/ PRISON BOARD BBS==972-329-0781 / telnet://rdfig.net
/(- _O) Fido/Dovenet Messages, Games, chat, newsgroup & Mail
( \____ ) Old School Computer BBS list (X at main then A or C)
On Jan 28, 2010, at 7:14 AM, Matthias Melcher wrote:
>
> There we have it, the iPad. Nice shape, OK software, but not a
> Newton - of course.
>
> Since we have a working Newton Emulator for OS X and the iPhone SDK
> is pretty much only a reorganized Cocoa interface, and since the
> iPad's now running at 1 GHz, it may actually be the time to *move
> Einstein to the iPad*.
>
> It would still be a slow emulation, and that's where my call to all
> of you comes in: can we go from emulation to simulation to native
> code? Can we accelerate Einstein to run ten times faster, a hundred
> times? Can it be a made to run on *all* handheld devices out there?
>
> Sure, we just need to focus! It's all there.
>
> TASK 1: the MMU need over 50% of the emulation time. Remove all
> dependencies on the MMU from the Newton ROM.
> 1.1: find the code in ROM that creates memory pages that are not
> mapped to RAM yet
> 1.2: intercept all callers and make them allocate true RAM
> instead of MMU pages
> 1.3: verify in Einstein that no more MMU hits are created at run
> time
> 1.4: remove 90% of MMU emulation from Einstein, doubling
> emulation speed
>
> TASK 2: emulating the CPU is the next bottle neck. generate pseudo C
> ++ code and manually replace the most time consuming functions
> 2.1: use the symbol table and the ROM to create a complete C++
> source tree
> 2.2: use analysis tools and hit counting to find the functions
> that are called most often
> 2.3: compile those into Einstein and patch the ROM (we already do
> that)
>
> TASK 3: auto-generate C++ code
> 3.1: use the knowledge from task 2 to improve the interpreter
> from 2.1
> 3.2: fill in the missing information that is not in the symbol table
> 3.2.1: find return values where they are needed
> 3.2.2: replace all access to fixed addresses in RAM with symbols
> 3.3: remove the remaining MMU emulation
> 3.4: compile natively and relocatable code and make NewtonOS into
> a user-space application
>
> TASK 4: driver for al platforms
> 4.1: with NewtonOS running natively at full speed, create a
> standardized driver interface
> 4.2: write screen/touch//sound/etc. drivers for all target platforms
> 4.3: enjoy!
>
> As a result, NewtonOS will run on any platform with over 200 MB of
> RAM, a pointing device, and a graphics screen. In terms of 2010: on
> pretty much anything - including the iPad.
>
> If enough capable people would get involved, I'd be happy to set up
> the development environment and dedicate a fixed amount of time per
> week. Much of the work has been done already, but has not been
> focused enough. This would be a great chance.
>
> How about it?
>
> Matthias
>
>
> ====================================================================
> The NewtonTalk Mailing List - http://newtontalk.net/
> The Official Newton FAQ - http://splorp.com/newton/faq/
> The Newton Glossary - http://splorp.com/newton/glossary/
> WikiWikiNewt - http://tools.unna.org/wikiwikinewt/
> ====================================================================
More information about the NewtonTalk
mailing list