Jump to content
decle

Killer Bees - David Rolfe's Trivial Intellivision Game

Recommended Posts

How long does it take to port 200 lines from one assembler to another?

 

Well, for me, just short of 15 years would seem to be the answer. I first found Killer Bees, David Rolfe's trivial Intellivision game, early in 2002, as noted here:

 

https://beta.groups.yahoo.com/neo/groups/intvprog/conversations/topics/981

 

Having rediscovered it a couple of days ago, thanks to Joe, I figured it had to be doable. It's less than 200 lines right? How hard could it be? Well it proved to be tougher than I thought (the bit I found hard was locating the EXEC entry point for DETSTPOB). So here it is:

 

killerbees.asm

 

an annotated version of Killer Bees that assembles under as1600.

 

 

Enjoy!

 

decle

 

2019-12 - unfortunately Yahoo started to sunset Groups at the end of 2019, which seems to have resulted in intvprog no longer being searchable, and the original conversation being lost.  David Rolfe's Earthlink page also seems to have been taken down.  Happily, unlike IntvProg, this can still be found on the Wayback machine here:

 

https://web.archive.org/web/20041113102531/http://home.earthlink.net/~davidrolfe/trivia.htm

 

Edited by decle
Add link to David Rolfe's original page
  • Like 4

Share this post


Link to post
Share on other sites

And here is a dictionary I put together of EXEC entry points I turned up, with DOS line endings ;)

 

This cross references the names and addresses within dis1600 (taken from exec_interp.c) with the names found in Your Friend the EXEC and addresses inferred from my poking around a disassembly of the EXEC. The YFTE entries should probably be viewed as tentative unless they are found in Killer Bees

 

execentry.txt

 

 

Cheers

 

decle

  • Like 1

Share this post


Link to post
Share on other sites

And here is a dictionary I put together of EXEC entry points I turned up, with DOS line endings ;)

 

This cross references the names and addresses within dis1600 (taken from exec_interp.c) with the names found in Your Friend the EXEC and addresses inferred from my poking around a disassembly of the EXEC. The YFTE entries should probably be viewed as tentative unless they are found in Killer Bees

 

attachicon.gifexecentry.txt

 

 

Cheers

 

decle

 

Here's one I had put together after reverse-engineering World Series Baseball. It is a "constants" file compatible that can be imported to an as1600 source.

 

I haven't cross-referenced both to see if there are any discrepancies. I suspect yours is more comprehensive. I reconstructed this one based on a disassembly of the source and information gleaned from the "Your Friend The EXEC" document.

 

I include also a set of macros I reverse-engineered based on that document, but I'm afraid I didn't complete them. They may help someone else's efforts.

 

-dZ.

 

symtbl.asm

macro.txt

  • Like 2

Share this post


Link to post
Share on other sites

Hey dZ,

 

This is very cool. A symbol table is a much more sensible way of enumerating this information :) . I've taken the liberty of stripping the EXEC entry points from symtbl.asm, adding in the YFTE names (starting with Y_ rather than X_ to make them easy to spot) and sorting them into the same order as YFTE. This is the result:

 

execentry.asm

 

Looking through the symtbl.asm addresses they all matched up with those from dis1600 and the ones I found. I've added all the functions mentioned in appendix E of YFTE. Where an address is not known I've commented the symbol out with an address of $UNKNOWN. It appears we are a little over half way to having all the documented entry points. Of the 109 functions described in YFTE addresses are defined for 69.

 

 

Cheers

 

decle

  • Like 1

Share this post


Link to post
Share on other sites

Hey dZ,

 

This is very cool. A symbol table is a much more sensible way of enumerating this information :) . I've taken the liberty of stripping the EXEC entry points from symtbl.asm, adding in the YFTE names (starting with Y_ rather than X_ to make them easy to spot) and sorting them into the same order as YFTE. This is the result:

 

attachicon.gifexecentry.asm

 

Looking through the symtbl.asm addresses they all matched up with those from dis1600 and the ones I found. I've added all the functions mentioned in appendix E of YFTE. Where an address is not known I've commented the symbol out with an address of $UNKNOWN. It appears we are a little over half way to having all the documented entry points. Of the 109 functions described in YFTE addresses are defined for 69.

 

 

Cheers

 

decle

 

Yeah, I had forgotten that I left most of the names from dis1600 (X_...) instead of changing them to the ones in the EXEC document. I always meant to do that, but I guess you did now. :cool: :thumbsup:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...