I,Robot Mathbox Question...

From: Jess Askey <jess_at_askey.org>
Date: Sun Feb 09 2014 - 00:54:50 EST

Im sending this to vectorlist since rasterlist doesn't have any
Mathboxes except I,Robot and Im not sure who subscribes where. I know
everyone that might know the answer to this is here tho. Apologies....

 

Im attempting to understand the I,Robot mathbox instructions using the
MAME Source and the Memory Window of MAME so I can fix an I,Robot PCB
with a bad mathbox issue. Im in the process of getting MAME compiling so
I can set DISASSEMBLE_MB_ROM = 1 to examine more.

The MAME source is here...
http://mamedev.org/source/src/mame/machine/irobot.c.html

 

Upon boot, the CPU does some basic tests (thank you Frito) of Pitch,
Roll and Yaw rotations of 5 degrees and checks the result. If the number
matches the predetermined value stored in ROM, then the test passes. If
not, the Self Test shows the various 'Y Bad Data' or 'X Bad Data' etc.

 

The CPU puts this code into the Mathbox RAM for the YAW_5_DEGREES test
(the first test)

 

9000

8000

0B40

00E0

0000

FF00

00EE

0590

3FC2

 

I have been trying to map instruction set to the Mathbox instructions in
the MAME source above, which only consists of ADD, SUBTRACTS, OR, AND,
XOR and some inverted variants.

 

Caveat: I got a C in Linear Algebra, so Im not that smart. J

 

Since the mathbox is doing rotations/translations and from what I read
in Jed's nice write-ups like this one
(http://www.jmargolin.com/uvmath/uvmath.htm)

There needs to be some multiplication/division... I see the shifts in
the DESTX Defines, which Im guessing covers that?

 

Can anyone help me understand how the MAME source commands relate to
this binary sequence?

 

Thank you! Jess

 

---------------------------------------------------------------------------
** Unsubscribe, subscribe, or view the archives at http://www.vectorlist.org
** Please direct other questions, comments, or problems to chris@westnet.com
Received on Sun Feb 9 01:14:59 2014

This archive was generated by hypermail 2.1.8 : Tue Feb 18 2014 - 17:50:00 EST