Decoding the AVG test program [LONG]

From: David Shoemaker <davids_at_oz.net>
Date: Tue Aug 24 1999 - 05:28:45 EDT

OK looking over Jess's docs I am starting to get a handle on this. But I
am getting confused when I try to decode the test program.

It looks like it starts off with a center beam, which makes sense. But it
then appears to start into a short draw

Starting at 0x2000
WRITE @ 2000 = 40
WRITE @ 2001 = 80
WRITE @ 2002 = 00
WRITE @ 2003 = 70
WRITE @ 2004 = 00
WRITE @ 2005 = 1E
WRITE @ 2006 = 00
WRITE @ 2007 = 1E
WRITE @ 2008 = 00
WRITE @ 2009 = 60
WRITE @ 200A = FF
WRITE @ 200B = 03
WRITE @ 200C = FF
WRITE @ 200D = 03
WRITE @ 200E = 00
WRITE @ 200F = 62
WRITE @ 2010 = 40
WRITE @ 2011 = 80
WRITE @ 2012 = 80
WRITE @ 2013 = 00
WRITE @ 2014 = 00
WRITE @ 2015 = 00
WRITE @ 2016 = 01
WRITE @ 2017 = 1F
WRITE @ 2018 = 00
WRITE @ 2019 = 40
WRITE @ 201A = 80
WRITE @ 201B = 00
WRITE @ 201C = 80
WRITE @ 201D = 1F
WRITE @ 201E = 00
WRITE @ 201F = 00
WRITE @ 2020 = FF
WRITE @ 2021 = 40
WRITE @ 2022 = 00
WRITE @ 2023 = E0

So in the way the AVG executes this (doing the odd addresses first)

2001 = 80 100 0 0000 Center Beam (2? bytes) Beam at 0,0
2000 = 40 010 0 0000 ignore
2003 = 70 011 1 0000 Scale (2 bytes) Binary scaling data = 0
2002 = 00 000 0 0000 Linear scale data = 0
2005 = 1E 000 1 1110 short draw (2 bytes) (move Y -E)
2004 = 00 000 0 0000 x data (move X 0) Beam @ 0, -14
2007 = 1E 000 1 1110 short draw (2 bytes) (move Y -E)
2006 = 00 000 0 0000 x data (move X 0) Beam @ 0, -28
2009 = 60 111 1 1111 Jump (2 bytes)
2008 = 00 011 0 0000 jump data Jump A=1 1111 0110 0000 (Jump (1F60 <1) + 1
= 3EC1 vector ROM
200B = 03 111 1 1111 Jump (2 bytes)
200A = FF 000 0 0011 jump data Jump A=1 1111 0000 0011 (jump (1F03 < 1) +1 =
3E07 vector ROOM

At this point I give up because its not making a lot of sense to me. The
AVG test program draws "A large + sign in the middle of the screen".

I am wondering if perhaps the center beam op code actually only uses 1 byte.
Not sure why they would just throw in a 40 just to ignore it.

But then maybe its just getting dang late.

David
Received on Tue Aug 24 04:21:02 1999

This archive was generated by hypermail 2.1.8 : Thu Jul 31 2003 - 23:01:00 EDT