Jump to content
kisrael

batari Basic - READ ME FIRST

Recommended Posts

Batari Basic is Fred "Batari" Quimby's "BASIC" compiler for creating Atari 2600 games.

from the original README.txt:

 

Atari 2600 BASIC is intended as a beginner's platform so that one may become accustomed to the intricacies of the system. Although Atari 2600 BASIC is a viable development platform on its own, its real purpose is as a stepping stone toward 2600 programming using assembly language.

Atari 2600 BASIC "lowers the bar" so that others with limited programming experience can write games that can run on a real Atari 2600 or an emulator.

This forum is for latest news and releases, programming talk, showing off of creations, and general conversation about this cool new 2600 programming tool. Sharing tips and source code is encouraged.

Here are the most important links:

Other links:

I will work to keep this list relevant and up to date. Please post suggestions for links in this thread.

UPDATE: Random Terrain writes:
You could add links to Stella (http://stella.sourceforge.net/) and JAVATARI (http://javatari.org/) . JAVATARI is very good emulator that can also be embedded on a web site. It's much better than JStella.

UPDATE 2: Sadly,
batariBasic.com was the official homepage and download location but now seems to be offline

Edited by kisrael

Share this post


Link to post
Share on other sites
...is encouraged. Whining...or begging for custom kernals is not.

I dunno. I mean, whining and begging are generally not pleasant to listen to or read, but a discussion of what kinds of kernels people want would probably be a good thing; as it would focus the development of future kernels in a productive direction.

 

Writing good kernels is hard, time-consuming work, with little payback for whoever writes them; it would be a waste of that work to write kernels that aren't wanted and won't get used.

 

So I think there should be a thread devoted to discussion of new kernels. Preferably without the whining and begging. :D

 

(Plus, if new kernel discussion has its own thread it will help keep the whining/begging out of other threads.)

Share this post


Link to post
Share on other sites

Here's what is probably a dopey question about 2600 basic. I used to mess around in Basic on the Vic 20 when I was a kid. I made a couple of simple games. Is the 2600 Basic similar to that Basic in the Vic? I'm assuming there are some differences but I'm wondering if any of the old stuff I did is useful for this.

 

Sorry if this is a dumb question but programming still seems like magic to me for the most part.

Share this post


Link to post
Share on other sites
Here's what is probably a dopey question about 2600 basic.  I used to mess around in Basic on the Vic 20 when I was a kid.  I made a couple of simple games.  Is the 2600 Basic similar  to that Basic in the Vic?  I'm assuming there are some differences but I'm wondering if any of the old stuff I did is useful for this.

 

Sorry if this is a dumb question but programming still seems like magic to me for the most part.

The short answer is no, not too useful, just the experience of breaking a problem (like a game) into a series of bitesize steps and a little bit of familiarity with the way the language looks. Like, you probably won't be able to recycle much old code.

 

The 2600 has some sever limitations...it doesn't have Print or anything like that, just some graphics stuff to play with. Vic20 was also limited, but in different ways.

Share this post


Link to post
Share on other sites
The 2600 has some sever limitations...it doesn't have Print or anything like that, just some graphics stuff to play with. Vic20 was also limited, but in different ways.

914661[/snapback]

 

That's what I thought the answer would be. Thanks. :)

Share this post


Link to post
Share on other sites
Here's what is probably a dopey question about 2600 basic.  I used to mess around in Basic on the Vic 20 when I was a kid.  I made a couple of simple games.  Is the 2600 Basic similar  to that Basic in the Vic?  I'm assuming there are some differences but I'm wondering if any of the old stuff I did is useful for this.

 

Sorry if this is a dumb question but programming still seems like magic to me for the most part.

The short answer is no, not too useful, just the experience of breaking a problem (like a game) into a series of bitesize steps and a little bit of familiarity with the way the language looks. Like, you probably won't be able to recycle much old code.

 

The 2600 has some sever limitations...it doesn't have Print or anything like that, just some graphics stuff to play with. Vic20 was also limited, but in different ways.

914661[/snapback]

While it's true that BASIC is generally not portable from one platform to another, I think that if you were able to program a VIC-20 at one time, after messing with bB for a while, it will soon start to feel comfortable like an old pair of shoes.

Share this post


Link to post
Share on other sites
The 2600 has some sever limitations...it doesn't have Print or anything like that, just some graphics stuff to play with.

 

Uh, sure it does. bB may not support "Print", but the original 2600 BASIC did. To be sure, its usefulness was limitted by the fact that everything that was printed, plus the program, plus the variables and stack, had to all fit in 64 bytes, but there was a print command and it did work.

Share this post


Link to post
Share on other sites
The 2600 has some sever limitations...it doesn't have Print or anything like that, just some graphics stuff to play with.

 

Uh, sure it does. bB may not support "Print", but the original 2600 BASIC did. To be sure, its usefulness was limitted by the fact that everything that was printed, plus the program, plus the variables and stack, had to all fit in 64 bytes, but there was a print command and it did work.

Ok, the "it" there was supposed to be batariBASIC, not "the 2600"

 

Though a more correct but less helpful sentence would have been.

 

"The 2600 has some severe limitations...it [the 2600] doesn't even have character mapped screens (unlike every popular 8bit homecomputer of the late 70s / early 80s, including the VIC20) so something that seems simple, like a Print statement, doesn't exist in (the current version of) Batari BASIC. (And was just a big graphics hack in the programming cart.)"

Share this post


Link to post
Share on other sites

Hello,

I've been going through the tutorials and great web resources on programming

in asm for the 2600. My question is.. is bB still considered as

"a stepping stone toward 2600 programming using assembly language." ?

Has it evolved so since it's creation that the general homebrew community now

accepts it complete? I see this section of the forums active a lot.

I'm trying to figure if it's worth continuing to go down the asm road or should I

invite my learning time in bB?

Share this post


Link to post
Share on other sites
I'm trying to figure if it's worth continuing to go down the asm road or should I invite my learning time in bB?

 

Learning BB would probably not be a bad idea. Trying to write a game in assembly language generally requires that you have an fair bit of code written before you can see anything working. Using bB from that perspective is much simpler. Further, bB does allow the integration of assembly-language routines within a bB program, so as you get proficient with assembly code you can have more and more of your game written in that, and less and less in bB.

Share this post


Link to post
Share on other sites

bB might also be a good way of "how do I do *this*"....with my own ASM game I was always having to consult simple 6502 documentation when doing simple subtraction or numeric comparison, but bB sticks close rnough to the ASM that I could probably just write a tiny program and run it through bB to remind myself what the ASM looks like...

Share this post


Link to post
Share on other sites

Are there any programming tutorials? I have an idea for a game, and would like to "rough one up" as it were, with bB

Share this post


Link to post
Share on other sites

I read those, and what I was wanting was more of a language tutorial.

Share this post


Link to post
Share on other sites
I'm not sure where I should post this but read the links:

 

http://www.bogost.com/books/video_computer_system.shtml

 

http://www.bogost.com/games/student_atari_games.shtml

 

This guy was just on Steven Colbert.

 

Allan

BTW, you can view the clip here.

 

Hey guys, thanks for the links. I really need to drop in here more.

 

I'm struggling to prepare for the semester, but i have at least a dozen student Batari games I am going to post, as well as a half dozen or so 6502 asm games from my grad class last term. The VCS book is just about finished and should be out next fall (yeah, it takes forever).

Share this post


Link to post
Share on other sites

Heh.. (evil grin here) What I like about coding programs with Batari Basic is using Crimson Editor it looks like I'm doing real work. I can install everything

at work and code a game and it'll look like I am busy.

 

I wonder if there's anyway to browse the forums without all the graphics. This way I can download tutorials and code samples while looking busy too!

Share this post


Link to post
Share on other sites
Heh.. (evil grin here) What I like about coding programs with Batari Basic is using Crimson Editor it looks like I'm doing real work. I can install everything

at work and code a game and it'll look like I am busy.

 

I wonder if there's anyway to browse the forums without all the graphics. This way I can download tutorials and code samples while looking busy too!

 

Yes, you can. Just click on "Lo-Fi Version" towards the bottom of this page.

Share this post


Link to post
Share on other sites

Using Crimson Editor, whenever i try to compile Zombie Chase, it says"

 

> "C:\Program Files\Atari Programming Tools\Batari Basic\2600bas.bat" C:\Program Files\Atari Programming Tools\Batari Basic\samples\zombie_chase.bas

Files\Atari was unexpected at this time.

 

> Terminated with exit code 255.

 

When it should terminate with exit code 0. I've tried everything i can think of and cannot find a way to correct this. And I know i have to fix this, because it won't run any bB programs because it's obviously not able to correctly compile the .bas files because of some unknown error i have made in setting up Crimson Editor as directed in Session 3 of the tutorial on the Batari Basic site.

Share this post


Link to post
Share on other sites
Using Crimson Editor, whenever i try to compile Zombie Chase, it says"

 

> "C:\Program Files\Atari Programming Tools\Batari Basic\2600bas.bat" C:\Program Files\Atari Programming Tools\Batari Basic\samples\zombie_chase.bas

Files\Atari was unexpected at this time.

 

> Terminated with exit code 255.

 

When it should terminate with exit code 0. I've tried everything i can think of and cannot find a way to correct this. And I know i have to fix this, because it won't run any bB programs because it's obviously not able to correctly compile the .bas files because of some unknown error i have made in setting up Crimson Editor as directed in Session 3 of the tutorial on the Batari Basic site.

The problem is with your directory path, which contains spaces. Both the batari Basic compiler and the DASM assembler use parameters to tell them what to compile/assemble, so if you have spaces in the directory path, the spaces are taken as separating different parameters from each other-- e.g., "C:\Program" is taken as one parameter, "Files\Atari" is taken as another parameter, "Programming" is taken as another parameter, and so forth.

 

The good news is, you can keep your installation setup and directory path as is, as long as you put quotes around things.

 

In Crimson Editor, you'll need to put quotes around your Argument for the tool you've set up to compile with. For example, the Argument for my compile tool is "$(FilePath)" (in quotes, as shown). You might be using a different variable for your Argument, but whatever it is, the whole thing must be enclosed in quotes.

 

In the batari Basic compile batch (2600bas.bat), if you've added the SET command to set the bB variable to the directory where you've installed batari Basic, and if the path contains any spaces, (I think) you'll also need to put it in quotes, as follows:

 

SET bB="C:\Program Files\Atari Programming Tools\Batari Basic"
SET PATH=%PATH%;%bB%

Michael

Edited by SeaGtGruff

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...