[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