Menu

Port to Macintosh/Apple Newton

Anonymous
2002-05-03
2012-09-22
  • Anonymous

    Anonymous - 2002-05-03

    Hello,

      I'd like eventually to try to port a speech recognition system to the Apple Newton 2001.  The processor is a 162 MHz StrongARM 110 RISC chip that can do 150 MIPS.  It has 4MB internal DRAM, which can perhaps be expanded, and can have about as much external flash ram as you want (through a virtual memory paging system - although there is a nasty bug in the pager that pops up from time to time)

      Dragon Systems made a demo of their voice rec system for the N2001, but it never got past the demo stage after the Newton was canned.  The main programming environment is Newtonscript, a bytecode language based on Smalltalk, but C++ programming is possible with some restrictions (no static data for one, which may be able to be gotten around with the help of various internal Apple info that never made it out).  Currently, sound input and output has to be done through Newtonscript (using a sample buffer array, but I really want to figure out how to do it directly from C.

      How specific is the Sphinx system to the particulars of the C environment, and how hard would it be to port the core to something else?  Are there any other open-source speech rec engines out there that are "less capable" than Sphinx but are smaller in terms of code complexity and CPU requirements that might be easier to work with?

     
    • anselme dewavrin

      Hi,

      I have some experience of SphinxII pn a PC. It takes a lot of RAM to run. At least it allocates a lot. Some of the data "uncompressed" into this allocated RAM could eventually be stored in Flash, but not all I'm affraid. On the other hand the code should fit in 1 MB.

      I don't know NewtonScript. If it's an interpreted language, I think the result would be too slow on 150 MIPS. Even the C version would be just real-time. But you can speed up the code (at the cost of performance) for small vocabubularies (100 words) by not doing the optional passes (3 passes by default, 2 of them are optional).

      As a conclusion, I think SphinxII is relatively portable as long as you stay in C.

       

Log in to post a comment.