Jump to content

Photo

Programming the Bally Arcade/Astrocade


66 replies to this topic

#51 hxlnt OFFLINE  

hxlnt

    Space Invader

  • 19 posts

Posted Fri Jun 1, 2018 3:17 PM

Very cool! I love the idea of an Astrocade port of Bad Apple. :)

 

Regarding the color conversion, the script converts the image to a static color palette of eight colors: red, magenta, blue, cyan, green, yellow, black, and white. This works well for full-color images but will miss grays on grayscale images. I could probably add some kind of grayscale detection to the script someday, but in the meantime, a quick hack would be to recolor your gray pixels to, for example, red (#FF0000) and green (#00FF00) in an image editor. Then you can tweak the palette in the .asm back to grays.

 

On the other hand, you could probably do some nice compression on the Bad Apple graphic data if it's only two-color, as you'd only need one bit per pixel to represent it... 



#52 nitrofurano OFFLINE  

nitrofurano

    Moonsweeper

  • 299 posts
  • meditating
  • Location:porto

Posted Thu Jun 7, 2018 11:06 AM

btw, i immediately deleted my github account today (guess why! :D ) - migrated to https://gitlab.com/nitrofurano(Bally Astrocade stuff at  https://gitlab.com/n.../ballyastrocade



#53 Knarfian OFFLINE  

Knarfian

    Space Invader

  • 10 posts
  • Location:Michigan, USA

Posted Fri Sep 14, 2018 9:32 AM

Jamie Fenton is the creator of the arcade games Gorf and Robby Roto, as well as the Astrocade game system, OS and Bally Basic.  
 
She recently donated a bunch of items to the Computer History Museum in Mountain View, CA.  Along with various documents, the collection contains 
an original development system that was used to create and debug software for these platforms.
 
The development system is called an "icebox" - a floppy disk-based Z80 system used as a substitute "CPU and memory", working with the target system hardware.  It was used to write programs in Z80 assembly, as well as Terse - a version of the Forth programming language.  An early version of the system ran CP/M, but later it was modified to boot a Terse-based OS.
 
Information from this collection is available here:
 
The MAME team is now working on emulating the development system.  It can already boot the Terse-based OS in emulation.
 
A number of disk images were also donated, and they are currently being looked at.  They contain source code snippets and binaries for various arcade machines and Astrocade programs, tools for assembly and cross-compiling, as well as some possibly unreleased stuff, such as source code for the unreleased prototype of Ms. Gorf.
 
At this time, it's not clear exactly how much stuff there is, or how much we can get working in emulation.  But this is a fairly exciting development and I wanted to share the news!


#54 128Kgames OFFLINE  

128Kgames

    Dragonstomper

  • 970 posts
  • Victory is mine! I am the Worrior!
  • Location:The Dungeons of Wor

Posted Fri Sep 14, 2018 10:26 AM

 

Jamie Fenton is the creator of the arcade games Gorf and Robby Roto, as well as the Astrocade game system, OS and Bally Basic.  
 
She recently donated a bunch of items to the Computer History Museum in Mountain View, CA.  Along with various documents, the collection contains 
an original development system that was used to create and debug software for these platforms.
 
The development system is called an "icebox" - a floppy disk-based Z80 system used as a substitute "CPU and memory", working with the target system hardware.  It was used to write programs in Z80 assembly, as well as Terse - a version of the Forth programming language.  An early version of the system ran CP/M, but later it was modified to boot a Terse-based OS.
 
Information from this collection is available here:
 
The MAME team is now working on emulating the development system.  It can already boot the Terse-based OS in emulation.
 
A number of disk images were also donated, and they are currently being looked at.  They contain source code snippets and binaries for various arcade machines and Astrocade programs, tools for assembly and cross-compiling, as well as some possibly unreleased stuff, such as source code for the unreleased prototype of Ms. Gorf.
 
At this time, it's not clear exactly how much stuff there is, or how much we can get working in emulation.  But this is a fairly exciting development and I wanted to share the news!

 

 

I know we'd all like to see the original version of Robby Roto and maybe even Ms. Gorf if you find them on those disk images!



#55 ballyalley OFFLINE  

ballyalley

    Stargunner

  • Topic Starter
  • 1,745 posts
  • Location:Albuquerque, NM

Posted Fri Sep 14, 2018 11:18 AM

[Jamie Fenton] recently donated a bunch of items to the Computer History Museum in Mountain View, CA. Along with various documents, the collection contains an original development system that was used to create and debug software for these platforms.


The CP/M development system can be seen in a couple of videos on YouTube with Jay Fenton. Jamie has done so much for the arcade community. Jamie, if you're reading this... you're awesome!
 

The development system is called an "icebox" [...] An early version of the system ran CP/M, but later it was modified to boot a Terse-based OS.


TERSE is such an odd language. If a TERSE compiler can be found in this documentation, then that would be a windfall! I understand that Gorf actually has a TERSE interpreter built into it.  I wonder if Jamie had any ZGRASS stuff in there? There is a system that needs to be emulated-- but that's hard to emulate when the system hardware and software are not easy to come across.
 

Information from this collection is available here:
http://bitsavers.org/pdf/nuttingAssoc/

 

I urge all readers here to take a look through the above link. You'll find that the source code for "AstroBASIC" is called "Bally BASIC 3.5. The final version of the source code (which seems to be from the same document source as the one on BallyAlley.com) is December 4, 1980.  It's also really neat to see the way Jay set up the source code as code snippets that are linked together.  I have to take a much closer look at all of this documentation.

 

I didn't notice any source code for the extended BASICs (Vipersoft BASIC, Blue Ram BASIC, and Hot Rod BASIC) for the Astrocade.  If you any of that is available, then that would be so cool too!

I find it rather neat (and a great compliment!) that there are resources in that archive that Jamie donated that are from BallyAlley.com-- even some documents that I wrote. How very weird!

Please, if you get a chance, then look at the wonderful resources that are now online. Maybe (hopefully!) there will be more to come!
 

The MAME team is now working on emulating the development system. It can already boot the Terse-based OS in emulation.

 

MAME programmers/authors; you're all wunderkind! Good luck getting the OS running, and maybe finding the source code to some of the arcade games.

"128Kgames" games said, "I know we'd all like to see the original version of Robby Roto." That might be a weird statement. What Michael meant by that is that in comments made by Tom Meeks in 2001 (http://www.ballyalle...s/tom_meeks.txt), he said:

"Robby Roto, BTW, wasn't created until just before we filed for Chapter 11. While in development, it was THE most fun game I have ever played. Unfortunately, the Midway brass force DNA to change it so that it played shorter... and, it absolutely ruined the game. The game released to the field was, to me, only a poor shadow of what it had been in the latter stages of development. If anyone could find THAT code then they would really have something."

 

I doubt that this "missing" game will ever surface, but if it did, then it would be similar to the early version of Wizard of Wow that came out of nowhere a few years ago.
 

A number of disk images were also donated, and they are currently being looked at. [...] At this time, it's not clear exactly how much stuff there is, or how much we can get working in emulation. But this is a fairly exciting development and I wanted to share the news!

 

Thanks for letting us all know about this great donation and for continuing to save the heritage of the videogame community.

Adam



#56 ubersaurus OFFLINE  

ubersaurus

    Quadrunner

  • 5,284 posts
  • Location:Maryland

Posted Fri Sep 14, 2018 11:27 AM

 

Jamie Fenton is the creator of the arcade games Gorf and Robby Roto, as well as the Astrocade game system, OS and Bally Basic.  
 
She recently donated a bunch of items to the Computer History Museum in Mountain View, CA.  Along with various documents, the collection contains 
an original development system that was used to create and debug software for these platforms.
 
The development system is called an "icebox" - a floppy disk-based Z80 system used as a substitute "CPU and memory", working with the target system hardware.  It was used to write programs in Z80 assembly, as well as Terse - a version of the Forth programming language.  An early version of the system ran CP/M, but later it was modified to boot a Terse-based OS.
 
Information from this collection is available here:
 
The MAME team is now working on emulating the development system.  It can already boot the Terse-based OS in emulation.
 
A number of disk images were also donated, and they are currently being looked at.  They contain source code snippets and binaries for various arcade machines and Astrocade programs, tools for assembly and cross-compiling, as well as some possibly unreleased stuff, such as source code for the unreleased prototype of Ms. Gorf.
 
At this time, it's not clear exactly how much stuff there is, or how much we can get working in emulation.  But this is a fairly exciting development and I wanted to share the news!

 

 

Very cool! I saw one of the folders in that link is for ZGRASS - did Jamie actually still have the source code on hand to run that? Could it actually get emulated?



#57 Al Kossow OFFLINE  

Al Kossow

    Combat Commando

  • 1 posts

Posted Fri Sep 14, 2018 11:56 AM

There were only fragments of an early zGrass in the boxes of paper.

I thought it was important to get that saved, though.



#58 ubersaurus OFFLINE  

ubersaurus

    Quadrunner

  • 5,284 posts
  • Location:Maryland

Posted Fri Sep 14, 2018 1:30 PM

There were only fragments of an early zGrass in the boxes of paper.

I thought it was important to get that saved, though.

 

Definitely. I guess it comes back around to trying to get Tom DeFanti to agree to donate/dump his data tapes of ZGRASS, since it seems as though he's the only one who has the full thing. This is still really cool, though. Will her materials eventually be made available to researchers?


Edited by ubersaurus, Fri Sep 14, 2018 1:31 PM.


#59 ballyalley OFFLINE  

ballyalley

    Stargunner

  • Topic Starter
  • 1,745 posts
  • Location:Albuquerque, NM

Posted Fri Sep 14, 2018 1:53 PM

[Jamie Fenton] recently donated a bunch of items to the Computer History Museum in Mountain View, CA.  Along with various documents, the collection contains an original development system that was used to create and debug software for these platforms.


I've been going through the pictures and documentation. The TERSE source code for is for "BASEBALL."  I think it's for Tornado Baseball.  Is TERSE one of the earliest uses of programming arcade games NOT in assembly language?

 

I love the pictures of the development system that Jay Fenton used for programming in the late-1970s/early-1980s!

 

Adam



#60 AguyinarRPG OFFLINE  

AguyinarRPG

    Space Invader

  • 33 posts
  • Historian, searching for uncertainties!
  • Location:Chicago, IL

Posted Fri Sep 14, 2018 4:51 PM

I don't think TERSE was an arcade game language, though I don't know if Fenton used it on Gorf. Tom McHugh always coded in assembly, up to and including Wizard of Wor. By the 80s I believe that Forth had an adherence in some places and Atari had definitely developed an internal scripting language of some sort.

 

Jamie told me about some of this stuff she had accrued so I'm stoked it's going to a good home. CHM is quickly becoming the technical counterpoint to the sociological bent of the Strong Museum.



#61 ranger_lennier OFFLINE  

ranger_lennier

    Chopper Commander

  • 156 posts

Posted Sun Sep 16, 2018 9:26 PM

I was really glad to hear this. I also immediately thought about Ms. Gorf and the fabled better version of Robby Roto that didn't try to eat your quarters quite so much. There are three versions of Robby Roto source code on-line now, dated 11-20-1981, 12-7-1981, and 12-9-1981. I don't know when those changes were made, but that seems promising.

 

What's the status of archiving Jamie Fenton's disks? I believe there was some trouble with these before. I'm not quite sure if it was actually a problem reading the disks, or if all the binary data was captured and it was merely a question of how to interpret it. In the latter case, I imagine the development system would help quite a lot.



#62 AguyinarRPG OFFLINE  

AguyinarRPG

    Space Invader

  • 33 posts
  • Historian, searching for uncertainties!
  • Location:Chicago, IL

Posted Sun Sep 16, 2018 9:48 PM

Funny about the Roto thing, in the footage out there with Jamie back in 1982 she said they retooled the game after a showing at the AOE show in March. It might be that all the versions of the source code were before that point but I don't think anyone's tried to compile that yet.



#63 MoonTurtle OFFLINE  

MoonTurtle

    Space Invader

  • 16 posts

Posted Tue Sep 25, 2018 2:44 PM

What is the color palette for the Bally Astrocade? 



#64 Knarfian OFFLINE  

Knarfian

    Space Invader

  • 10 posts
  • Location:Michigan, USA

Posted Tue Sep 25, 2018 3:11 PM

When I was first working on the Astrocade driver in MESS, I generated this HTML file with the equation I was using in the emulator:

 

http://www.ballyalle...de_palette.html

 

I'm honestly not sure if it's been approved upon since then, and I'm not sure I have the python script anymore :(

That said, MAME still uses the same (maybe identical) code to generate the palette:

 

https://github.com/m...strocde.cpp#L78

 

-Frank



#65 ballyalley OFFLINE  

ballyalley

    Stargunner

  • Topic Starter
  • 1,745 posts
  • Location:Albuquerque, NM

Posted Tue Sep 25, 2018 3:11 PM

What is the color palette for the Bally Astrocade? 

 

The Astrocade has a palette of 256 different colors.  Here's a link to them all:

 

http://www.ballyalle...de_palette.html

 

Without using any machine language "tricks," a normal screen can display eight colors.  The left and right sides of the screen can be divided anyplace (many games do this right down the center of the screen, but this doesn't have to be the case).  This allows four colors on the left side of the Horizontal Color Boundary and and four colors on the right side of it.  Most games usually choose to share some colors on both sides of the screen. This means that many games, effectively, use just six colors.  However, using interrupts, it's possible to get all 256 colors on the screen at one time.  I can't think of any games that use all the colors at once, but there are a few demos that show all the colors at once, such as the aptly named 256 Color Display, which was reprinted in the "AstroBASIC" manual.

 

Some games, such as the title screen for Treasure Cove

 

 

and the gameplay of War

 

 

do show off quite a bit of color.  For a game system that finally was released in January 1978, this was very impressive for the time.

 

Adam



#66 ballyalley OFFLINE  

ballyalley

    Stargunner

  • Topic Starter
  • 1,745 posts
  • Location:Albuquerque, NM

Posted Tue Sep 25, 2018 3:18 PM

When I was first working on the Astrocade driver in MESS, I generated this HTML file with the equation I was using in the emulator:

 

http://www.ballyalle...de_palette.html

 

We're two ships crossing in the night!  While I was writing a reply to this palette question, Frank came along and posted the same link.  It's cool that people are paying attention to this thread.  Oh, and, Frank, thanks for making that color listing so many years ago.

 

As an aside, since this is a programming thread, this morning I tested a high-res cartridge using the Astrocade emulation in MAME.  It doesn't work quite right (I suspect because the Astrocade emulator doesn't technically support hi-res mode, even though the Astrocade chipset used in arcade games does use hi-res), but this cartridge does work a real Astrocade that has been upgraded to use hi-res mode.  I'll be testing this program more as the week progresses.  The demo isn't ready for public use yet (it'll be quite a while, actually), but when it is, I'll be sure to post more about it.  Oh, and I didn't write it.  It was written by Michael Matte, who upgrade his Astrocade to be able to use hi-res mode in about 1986 or so.

 

Adam



#67 ballyalley OFFLINE  

ballyalley

    Stargunner

  • Topic Starter
  • 1,745 posts
  • Location:Albuquerque, NM

Posted Tue Sep 25, 2018 3:35 PM

What is the color palette for the Bally Astrocade? 

 

Here is an example of the 256 Color programming running under the Machine Language Manager cartridge:

 

https://www.youtube....RyCpfWQo&t=649s

 

This program will also run under "AstroBASIC."  This 256 color program was captured via an Astrocade hooked up via RF, into an RF demodulator (getting composite out) and then converted to HDMI.  By the time the video is uploaded to YouTube, there is a bit of screen tearing that you would not see on an actual CRT TV.  The only way to get a more accurate picture, I guess, is to take a picture of the program running with a camera using a slow shutter speed.

 

I hope that this gives a rough idea of the colors that are available on the Astrocade.  With so many color to choose from, how will we ever use all these colors in one program?!?  ;-)

 

Adam






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users