Visual batari Basic Guide
The faster, easier, more fun way to make Atari 2600 games.
Page last updated on: 2013y_03m_22d_1332t
If you haven't yet, be sure to check out the batari Basic Commands page. That page tells you all about batari Basic. This page only tells you about VbB.
Click here to download Visual batari Basic
Before downloading, read the requirements. After downloading, check out How to 'Install' Visual batari Basic, and Troubleshooting.
This Visual batari Basic Guide contains text from Jeff Wierer, the creator of Visual batari Basic, mixed with text from Duane Alan Hahn, the maintainer of this guide. Some text is also from the batari Basic Commands page.
To help you instantly know what type of link you're looking at, links that jump to other places on this page are blue, while links that lead to other pages and web sites are red.
Requirements
Minimum system requirements: Any dual core system or better, with at least 2GB of RAM.
If you are not running Vista or Windows 7, you'll need to make sure the .NET Framework 3.0 is installed.
If you are running Vista, you may need to Run As Administrator. If you are logged in with admin privileges or have turned off UAC, then it should work just fine.
Troubleshooting
- The file default.bas.bin can't be found.
You probably have a space in the name of the path where bB is located. Get rid of the space or spaces and see if it works. - The sprite or playfield editor is all black.
Does it seem like nothing is happening when you try to draw in the sprite or playfield editors? Right click and make sure the foreground and background colors aren't the same. - I can't open any files with VbB.
If you discover that you can't open a playfield, sprite, or program file, or that they want to open with Notepad, missing registry settings might be causing the problem. Download the fix here. Unzip the file and make sure Visual bB is closed. Also make sure you don't have an anti-virus program blocking registry changes. Double Click the .reg file. If it asks if you want to do this, click yes. Reopen Visual bB. If it doesn't work, you're running something that blocks editing the registry and/or you aren't a local administrator. You may need to enter the values manually. See this post at AtariAge for more information. - Opening the Music and Sound Editor causes an error.
This post at AtariAge might fix the problem. - VbB won't work with my Windows 7 64-bit computer.
If you're using Windows 7 64-bit, you'll need to update your bB files. Download a copy of jwierer's bB folder: bBWin7_64bit.zip (scroll down to Optional). It's not just for 64-bit Windows, the files should work fine with any 32-bit versions of Windows. - I have some weird, random problem not listed above.
It seems most problems can be fixed by downloading a copy of jwierer's bB folder: bBWin7_64bit.zip (scroll down to Optional). It will work with 32-bit and 64-bit versions of Windows. - None of the fixes above helped!
If you are still having trouble, you may want to try a different 2600bas.bat (scroll down to Optional). - My VbB bookmarks are gone!
If you put the latest version of VbB in a new folder like I do, your bookmarks will disappear. You'll need to copy the file visualvb.mdb from your last VbB folder and paste it into the new folder. That's where your bookmarks are stored. After restarting VbB, your bookmarks should be back to normal.
Learn to Love Project Folders
To save yourself some time and trouble, every new game you make should be in a separate folder. Having a separate folder for each project will keep your files organized. Any sprites and playfields you save will be for that specific project and you won't have a ton of unrelated files to deal with. You do not want to have a folder full of unrelated sprites when you go to use the Sprite Animator since you'd have to browse through a huge list looking for the sprites you need.
The Project Explorer is Your Friend
You'll be opening your project folders in the Project Explorer, so learn to love it because you'll be using it a lot. Double click on a file in the Project Explorer and it will open in the appropriate editor. And when you have a program open in the Code Editor, you can drag sprite or playfield files from the Project Explorer and drop them right into your program. Double clicking and dragging and dropping; it can't get much easier than that.
VbB Isn't Just for Programmers
Your artist friends can use the VbB Sprite Editor to make some cool multicolored sprites. They can then save the sprites and send them to you and all you'll have to do is drag and drop them into your game. No more spending hours trying to recreate sprites by looking at GIFs or PNGs. The same can be done with playfields using the VbB Playfield Editor. Once programmers and artists start using VbB together, a lot of time and energy will be saved.
If you like to create free sprites for the fun of it, instead of only posting images and expecting people to redraw what you have created and guess at the colors you used, please post the sprite files too (you may need to put them in a ZIP file). Then VbB users can download your sprites and either edit them or drag and drop them right into their programs. Over time, sprite artists who love to make free sprites can build up a whole VbB library of sprite files (with corresponding GIF or PNG images). If the sprite files are given good file names, they'll be easy to deal with. For example, instead of this:
walking_tomato_1.spr
You'd use this:
walking_tomato_01.spr (with a two digit number)
If an animation would ever be more than 9 frames, the files would always be in the correct order.
If you are an AtariAge member, instead of attaching files in a big glob at the end of a post, you can use Add to Post to pair up your images with your files. So you'd have an image, the file below it, a couple of blank lines, the next image and file below it, a couple of blank lines, and so on.
Working with Sprites and Playfields
Sprites
You can add a blank sprite file to a project from the File menu or by right clicking in the Project Explorer and selecting Add > New Item.
So one way to create a sprite file is to click on File from the main menu, go down to Add, then select New Item. Just select the type of file (Sprite in this case), give it a name, and left click the Add button. Now you'll have a blank sprite file to work with that will be sitting in a fake sprite folder in the Project Explorer.
To open your new sprite file, left click on the little plus sign next to the Sprites folder, then double click on the sprite file and it will open in the Sprite Editor.
Once you have a sprite open in the Sprite Editor, you can use Save As to make copies of the sprite. I hardly ever create a blank sprite once I have at least one sprite file in my project folder. Instead, I use Save As frequently (maybe even excessively) to create new sprite files. Save As is especially useful when working on animations.
If you want to insert a sprite into a program, just have a program open in the Code Editor, then drag a sprite file over from the Project Explorer and drop it where you want it to go in your program.
Playfields
You can add a blank playfield file to a project from the File menu or by right clicking in the Project Explorer and selecting Add > New Item.
So one way to create a playfield file is to click on File from the main menu, go down to Add, then select New Item. Just select the type of file (Playfield in this case), give it a name, and left click the Add button. Now you'll have a blank playfield file to work with that will be sitting in a fake playfield folder in the Project Explorer.
To open your new playfield file, left click on the little plus sign next to the Playfields folder, then double click on the playfield file and it will open in the playfield Editor.
Once you have a playfield open in the playfield Editor, you can use Save As to make copies of the playfield. I hardly ever create a blank playfield once I have at least one playfield file in my project folder. Instead, I use Save As frequently (maybe even excessively) to create new playfield files.
If you want to insert a playfield into a program, just have a program open in the Code Editor, then drag a playfield file over from the Project Explorer and drop it where you want it to go in your program.
How to 'Install' Visual batari Basic on a Windows PC
|
Step #1: |
Do not use the old Tinkernut installer! Click here to go to the Visual batari Basic thread at AtariAge and once you are there, scroll down to Optional and download bBWin7_64bit.zip, then unzip it and put the folder where you want it. (It's jwierer's personal batari Basic folder, in case you were wondering.) The Optional section looks like this:
Jwierer's batari Basic folder contains dasm and sed.exe and all the other files you should need for batari Basic to work properly. This is what the folder looks like after you unzip it:
Click here if you don't know how to unzip a zip folder. The bBWin7_64bit.zip folder is not just for 64-bit Windows. It should also work fine with any 32-bit versions of Windows.
|
|
Step #2: |
Download the latest version of VbB and the sound library and put the VbB folder where you want it. I have the bB folder and the VbB folder in a folder called Atari2600 (the actual location on my computer is C:\Atari2600). And since some people have received errors by having spaces in file names, I either use no spaces or I use underscores when I want separation between words in all of the bB and VbB-related files and folders that I create.
If you want the absolute latest beta version of VbB, you might want to check out jwierer's blog.
To recap step 1 and step 2, all you need are three things: the bBWin7_64bit zip folder, the VisualbB zip folder of your choosing and the VisualbB.SoundLib zip folder. Unless you want to play around with the buggy and broken DPC+ version of batari Basic, you don't need anything else. You don't have to randomly download files from 20 different places. You only need three zip folders.
|
|
Step #3: |
Open VbB and run the Configuration Wizard.
|
|
Step #4: |
When you are done with the Configuration Wizard, close and restart VbB.
Note: If this isn't the first time you've tried to 'install' VbB, and folder locations have changed, be sure to click on the Settings tab and make sure the various paths are pointing to the correct locations. Then close and restart VbB.
|
|
Step #5: |
Left click on File and select New Project. That will allow you to create a new project folder and default files.
Note: Every game you want to work on should be in its own folder. That way all of the files for that game will be in one place and separate from other game files. You can put your game folders wherever you want. I keep all of my game folders in a folder called My_Projects. (As you might expect, I keep My_Projects in the Atari2600 folder along with the bB folder and the VbB folder.)
|
|
Step #6: |
Once you've created a new project folder with default files, you should see the default files in the Project Explorer. Double click on a file to open it in the appropriate editor. For example, double clicking on a .bas file will open it in the Code Editor.
|
|
Step #7: |
When working on a new game, be sure to use Save As and name your .bas file something other than 'default' in case you need to post it in the future. Even if you don't know the name of the game yet, you can always use your username mixed with the type of project. For example, if your username is Mr. Giggle Snort and you're working on an unnamed maze game, you could call it: "giggle_snort_maze_game_2011y_06m_17d_0342t.bas"
See Easy Software Versioning for more information. |
Remember, if you ever need to select a new version of the 2600basic.exe bB compiler under the Settings tab, you must uncheck and recheck Add bB Environment Variable and Add bB Compiler to System Path, click the Save Settings button, and it might be a good idea to close VbB and open it again.
How To Make Atari Games
Below is an introductory tutorial by Daniel Davis from Tinkernut. He said that he made several mistakes, so be aware of that when you watch it. He also created an installer, but it's outdated. Ignore the installer and get the latest files from the VbB thread at AtariAge. See Troubleshooting and How to 'Install' Visual batari Basic on a Windows PC for more information.
Settings
Allows you to quickly customize VbB to your liking, so you can start having fun. The items on the settings page now have a brief description that pops up if you hover your mouse pointer over them, and if that isn't enough, there is a new Configuration Wizard, so make sure you have downloaded the latest version of Visual batari Basic.
- Replaces AND, OR, and NOT with &&, ||, and ! respectively.
- Places a space before and after the equal sign (=) so keywords are recognized and color coded.
- Makes sure each line is properly indented.
- Makes sure each end is not indented.
Emulator
This setting should point to the location of the executable (.exe) of the emulator you would like to run.
Example:
C:\Program Files\Stella\stella.exe
This is required if you want to be able to test your binary after compiling. This will also be used if you are previewing sprites or playfields in those editors. Multiple emulators can be added in case you want to test binaries in different emulators.
bB Compiler
Enter the location of 2600basic.exe.
Example:
C:\Atari2600\bB\2600basic.exe
Commands
Commands are useful if you want to extend the list of commands which you can access from the Command tab in the Project Explorer pane on the right side. Those commands can literally be anything such as snippets of code that you reuse. You can right click from the commands pane to generate the basic commands.xml file. From there all changes will be saved to that file and reapplied every time you load Visual bB. If you create a custom commands.xml file, it will overwrite any loaded by VbB.
You can leave this blank and use the default command list. It's only necessary if you want to make modifications.
Dictionary
The Dictionary is for custom terms you want to show up with color codes in the Code Editor. Click the dictionary button to see the current list of terms, edit as you choose and then save. It will create an XML file with your settings.
You can leave this blank and use the default dictionary. It's only necessary if you want to make modifications.
Add bB Environment Variable
If you've been using bB for a while, you've probably already figured out how to set this. If you're a novice user, checking this box sets the environment variable for you so you never have to worry about doing it yourself. Keeping this checked doesn't hurt anything, it just makes sure it's set every time.
Add bB Compiler to System Path
If you've been using bB for a while, you've probably already figured out how to set this. If you're a novice user, checking this box sets the system path for you so you never have to worry about doing it yourself. Keeping this checked doesn't hurt anything, it just makes sure it's set every time.
Save Open File Before Compiling
When checked, this will make sure you're using the latest copy of the source, even if it's currently being edited. If you introduce a bug while editing, you can always use the undo feature in the Code Editor and save again.
Clean Up Post Compilation Files
When you compile, you actually create a set of assembly files that are then assembled and linked into the Atari binary. Most folks aren't going to go back and look at the ASM files, so check the box to have them cleaned up for you. If left unchecked, nothing is removed so you can go back and look at the assembly files.
Backup projects on Open
This will create a backup folder (_BACKUP) where visualbB.exe is located. Any project that is set as the default project will be copied to this folder upon loading so that if something happens during the course of editing, or if you want to revert back to the project source before you started editing it, you'll have a copy. It literally just copies all the project folders.
Load Start Web Page on Open
If checked, the AtariAge batari Basic forum will be displayed on the Start Page when VbB is loaded.
Enable Autosave
If you're the type of person who doesn't save often enough, you'll probably want to turn this on and choose how often it saves. If you can remember to save frequently, you might want to try using Save As every time you're about to significantly change your code. You could use the name of the program, year, month, day, and military time (the clock on the PC taskbar can be changed to military time for this purpose). Here's an example:
magical_bouncing_doorknob_jelly_2008y_10m_06d_1545t
Then you'll always have a record of how the program evolved and can go back to a specific time before you deleted something or completely mangled the code because you were sleepy.
Enable Syntax Checking
This *optional* setting will check for proper syntax while you are typing in the editor. Syntax Checking does the following:
Auto Indentation
Type the number of spaces or tabs you want to use as the default when using Syntax Checking.
Enable Peephole Optimizer
If you compile with -O, a peephole optimizer will be invoked which will remove all "CMP #0" and some other things such as loads right after a store to the same variable. If using bB code only, you may use -O without consequences (all CMP #0 are redundant in bB). It's not automatic because the peephole optimizer does not know if it's looking at inline asm. If you use CMP #0 in a non-redundant fashion in your inline asm, it will remove it.
If you're using the original compiler, vbB disables it. Grab the latest and you can turn it on/off.
Enable Color Coding
Color codes your program in the Code Editor so your code is easier to read. If you don't like the default colors, you can change them. Just left click the little button next to Keywords, Compiler Directives, Registers, Comments, or Graphics and select any color you want.
Code Editor Font
If you'd like to change the font used in the Code Editor, just left click the Select Font button and you can select the font, style, and size.
Start Page
The main area of the Start Page is the browser where help files and web pages are displayed. There is also a Recent Projects Launch Pad and a Getting Started Launch Pad to the left of the browser.
Recent Projects Launch Pad
On the left side of the Start Page browser is the Recent Projects Launch Pad. Once you have created or opened at least one project in the past, you'll be able to left click on a project listed under Recent Projects and it will open in the Project Explorer. There are two buttons near the bottom of the Recent Projects Launch Pad, one to create a project and the other to open a project.
Right Click Menu
Getting Started Launch Pad
The Getting Started Launch Pad is below the Recent Projects Launch Pad and contains a list of useful links. Left click on a link to open it in the Start Page browser. Right click on a link and you can select Open from the right click menu which opens the link in the Start Page browser. Select Open in Web Browser to open the link in your default Web browser.
Project Explorer
The Project Explorer is the pane on the right side of VbB that lists your open project folders. For your convenience, it also displays two fake folders within each project folder that contain any sprite or playfield files you may have.
Double click on a file in the Project Explorer and it will open in the appropriate editor. When you have a program open in the Code Editor, you can drag sprite or playfield files from the Project Explorer and drop them right into your program. It can't get much easier than that.
Right clicking on various types of files or folders brings up different options. Most of the options don't really need an explanation, but there are a few you might want to know a little more about and they are listed below:
- Highlight a section of code.
- Right click, then select Add Bookmark from the menu.
- Your bookmark will be added to the new Bookmarks section within the Project Explorer.
Generate Items From Code
This will extract plain and multicolored sprites and playfields from the highlighted batari Basic program in the Project Explorer. Extract items from any older games you might have or from .bas files posted online so you can study their sprites and playfields.
Exclude from Project
This does not delete a file, it just makes it disappear from the Project Explorer. You can get back any excluded file by right clicking on the project folder it belongs to and selecting Refresh Project. Anything you excluded from that project will be visible again.
Edit in Notepad
If you ever have the need to look at one of your files in Notepad, no problem. Just right click on the file and select Edit in Notepad.
Delete
There are no worries when deleting files from the Project Explorer. Deleted files will be sent to the Recycle Bin, so if you make a mistake or change your mind, you can open the Recycle Bin folder and restore any files you deleted and they'll pop right back up in the Project Explorer.
Commands Tab
Commands are useful if you want to extend the list of commands. Those commands can literally be anything such as snippets of code that you reuse. You can right click from the commands pane to generate the basic commands.xml file. From there all changes will be saved to that file and reapplied every time you load Visual bB. If you create a custom commands.xml file, it will overwrite any loaded by VbB.
You can easily add, edit, or remove commands and code snippets by right clicking and selecting options from the right-click menu. Change the whole thing to your liking, add every possible bB command that you could ever want to use, or add frequently used code snippets for quick and easy access.
Bookmarks Tab
As your code grows, it can be difficult to easily navigate it. Bookmarks provide a convenient way to mark sections of code so you can quickly jump to that location. Here is a quick guide to using bookmarks:
Alternatively, you can manually enter a search term in the text box and use the Add button to add a new bookmark.
Any time you want to jump to a bookmark, just left click on the appropriate Go button in the Bookmarks list. You can also left click on a bookmark term in the Bookmarks list to select it, then right click to bring up a menu that will let you jump to, remove, or reorder that bookmark. You can also move a bookmark up or down the list with keyboard shortcuts. Just left click on a term to highlight it, then hold down the Ctrl key and use the up or down arrow keys to move the bookmark.
Bookmarks are saved so when you reopen a project they will automatically be loaded. Additionally, as you switch between different programs the list of bookmarks will change based on your previous settings. And don't worry, when you use Save As to make a new copy of your program to work on, your bookmarks will be copied along with it.
Note from Random Terrain: I recommend using something unique to start out your bookmarks. For example, I use rem @# to start out my bookmarks since that combination isn't usually found in bB programs and the characters @# are easy to type and easy to find. (They're next to each other on a computer keyboard above the 2 and 3 keys.) The characters also help me identify my bookmarks in case I want to move them (rem @# Current Work Area gets moved around a lot). Of course, you don't have to use what I use, but you'd be wise to use something that stands out from the rest of your code so you won't jump to the wrong spot in your program.
Warning: If you always put the latest version of VbB in a new folder like I do, be sure to copy the file visualvb.mdb from your last VbB folder and paste it into the new folder. That's where your bookmarks are stored.
Information Pane
When not hidden, the Information Pane provides useful behind the scenes data. The Information Pane has two tabs:
Messages
Tells you what is happening behind the scenes: compiling, deleting, error messages, bytes of ROM space left in a program and so on.
Errors
If there is a compilation code error, VbB will attempt to find where the code defect is and report what line has the problem.
Main Menu
File
New Project
Opens a dialog box where you can select a name and a path for your project folder. There are also check boxes for creating default code, sample sprite, and sample playfield.
Launch Project Wizard
The Visual batari Basic Code Wizard leads you through a series of steps that should help make it easier to create an initial project. Depending on the options you choose, your program should be ready to compile and run at the end of the wizard.
Run Configuration Wizard
This wizard will walk you through each setting and help you successfully get started. Once complete, you will be sent to the Settings tab where you can further customize your Visual batari Basic experience. You can choose to cancel the wizard at any time and manually configure VbB settings.
Open Project
Places a project folder into the Project Explorer.
Open File
Allows you to open any .bas file if at least one project is open in the Project Explorer .
Add
You must have at least one project open in the Project Explorer before you can add a new or existing item.
New Item
Adds a new .bas file, sprite file, or playfield file to the currently open project in the Project Explorer. Just select the type of file, give it a name, and left click the Add button.
Existing Item
Allows you to import a .bas file into the currently open project in the Project Explorer.
Close
Closes the currently selected open tab.
Close Project
Closes the current project.
Save
Saves the program, sprite, or playfield that is displayed in the currently open tab.
Save As
Brings up the save dialog box so you can either save or the program, sprite, or playfield that is displayed in the currently open tab or save it with a new name to make a copy that you can edit without affecting the original.
Save All
This will save all of the files that you have open, so be careful with this. If you have been playing around with some files, but weren't planning to save what you have done, you could end up losing your original content if you click on Save All by mistake. I use Save As often to avoid losing my work because of a stupid mistake.
Page Setup
Sets up how the active tab will print.
Prints the contents of the active tab. Click on the tab you want, whether it's a Code Editor, Sprite Editor, or Playfield Editor and select print. You'll get a nice color printout (depending on your printer).
If you want to print out a program and you normally use a fairly large font, you can avoid wasting a lot of paper by going to the Settings tab and decreasing the font size. If you don't want to waste color ink, remember to disable color coding. After that, you can go back to your program, right click and select Refresh from the right click menu. Then you'll be ready to print.
Recent Projects
Shows a list of your recently opened projects. This is the same list you see in the Recent Projects Launch Pad.
Exit
Closes VbB.
Edit
Undo
Allows you to go back a step in the Code Editor, Sprite Editor, or Playfield Editor. When you open a sprite or playfield an "undo/redo queue" is created. The queue is like a LIFO (Last in First Out) stack that will hold the last 50 actions performed. The Code Editor is different and uses the built in redo/undo capabilities of the standard windows rich text editing control. Each tab has its own separate undo/redo, so you don't have to worry about switching between tabs and working on different things at the same time.
Redo
Allows you to go forward a step in the Code Editor, Sprite Editor, or Playfield Editor after you have gone back one or more steps.
Cut
Highlight something in the Code Editor, Sprite Editor, or Playfield Editor and this will copy what you highlighted and delete it from view. Same as the keyboard shortcut Ctrl + x.
Copy
Highlight something in the Code Editor, Sprite Editor, or Playfield Editor and this will copy it. Same as the keyboard shortcut Ctrl + c.
Paste
Plops down at the position of the cursor whatever you have cut or copied. Same as the keyboard shortcut Ctrl + v.
Delete
Highlight something in the Code Editor, Sprite Editor, or Playfield Editor and this will make it disappear. Same as the delete key on your keyboard.
Select All
Highlights everything in the Code Editor, Sprite Editor, or Playfield Editor.
Find
Opens the Find and Replace dialog box. You can search the active Code Editor or search all open documents. If you search all open documents, you should start with the leftmost Code Editor tab and when VbB is done searching the contents of that tab, the next tab to the right will be activated and searched and that will continue until you quit searching or the end of the contents of the rightmost tab is reached. It will also match case and match whole word if you want.
Replace
Opens the Find and Replace dialog box. It has the same features as Find, with the addition of a 'replace with' text box, a Replace button and a Replace All button.
View
Show/Hide Project Explorer
Displays the Project Explorer pane on the right side of the VbB window or hides it if it's already there.
Show/Hide Project Properties
Shows or hides the Project Properties pane that displays info for the currently highlighted file in the Project Explorer pane.
Show/Hide Information Pane
Shows or hides the Information pane that displays error messages and how much space is left in your games.
TIA Pallette
Opens the TIA Color Chart where you can find color values for your games.
Sprite Animator
Opens the Sprite Animator where you can make an animated sprite and even save it as an animated GIF if you want.
Graphics Converter
Opens the Image to Code Converter. Create playfields and sprites from animated GIFs.
Sound Generator
Opens Tone Toy 2008 by Duane Alan Hahn in the default emulator.
Music and Sound Editor
Opens the Music and Sound Editor. Allows you to create music and complicated sound effects for your games.
Score Editor
Opens the Score Editor where you can change the score graphics.
Title Screen Kernel Editor
Opens the Title Screen Kernel Editor. Below are related links to jwierer's blog and the official title screen kernel thread:
Using the Title Screen Kernel Editor
Creating a Scrolling Hi-res Title Screen in bB
Creating an Animated Title Screen in in bB
Syntax Check (bBlint)
Runs bBlint (a useful tool written by RevEng that checks the syntax of bB programs). You can read more about it in jwierer's blog.
Build
Compile
This gets your bB program ready to run in an emulator or on a real Atari 2600.
Run
Runs your bB program in the emulator of your choosing. If your program hasn't been compiled or has been changed since the last time it was compiled, a dialog box will pop up asking if you'd like to recompile the latest version of your program. Left click the Yes button and your program will compile and run in the emulator you have previously chosen.
Help
bB Language Guide
Displays the batari Basic manual on the Start Page. Remember to download the latest version of the manual once in a while. Little improvements are added to it and any errors that bB users find are fixed, so you'll probably want to download it about once a month if you can remember.
VbB Online Guide
Displays the Visual batari Basic Online Guide on the Start Page.
How Do I
Displays the help page.
About Visual batari Basic
Displays version number and copyright info.
TIA Color Chart (found under the View menu)
This is a very quick and easy way to look up color values and track down the perfect colors for your games.
There are a few different ways that you can use the TIA Color Chart. You can hover your mouse pointer over a color and the hex and decimal values will pop up near your mouse pointer. You can left click on a color and the hex and decimal values will be displayed near the top of the chart. You can also move the little blue cursor around with the arrow keys on your keyboard and the hex and decimal values of the color the cursor is sitting on will be displayed near the top of the chart.
The TIA Color Chart also has a drop-down menu where you can switch between NTSC and PAL.
Note: The Sprite Editor and Playfield Editor use a special version of the TIA Color Chart. When the chart is opened, left clicking on a color selects the color and closes the TIA Color Chart.
Sprite Animator (found under the View menu)
The Sprite Animator grabs all of the sprites from the currently loaded projects in the Project Explorer and allows you to select and order the frames that you would like to see animated. The sprite animator will use the first emulator configured in the settings tab.
If you'd like to move a sprite up or down in the list, just left click on the file name, then left click on the Up or Down buttons as many times as it takes to get the sprite into position. Once you have your sprites in the correct order, check the box next to each sprite that you want to include in your animation. Left click the Animate button to see a preview of the animation right there in the Sprite Animator. Left click the Stop button when you're done.
Left click on the Create .bas button to save your animation. Once saved, the file will automatically open in the Code Editor and run in your default emulator.
If you want to show your animated sprite to others, you can left click on the Save GIF button to save your animation as a GIF file. A GIF Settings box will pop up where you can select the speed of the animation (frame time) and make sure the box next to Loop is checked if you want the animation to loop forever. You can then upload it to a forum or put it on your own web site. If you have a GIF editing program such as Microsoft GIF Animator or Easy GIF Animator, you might want to play around with the animation speed or crop it if necessary.
In case you don't know, once you left click on a file name, you can browse through the sprites by using the up/down arrow keys on your keyboard.
Music and Sound Editor (found under the View menu)
The VbB Music and Sound Editor is based on a page I made called the bB Music and Sound Data Creation Toy, but the VbB Music and Sound Editor has more features and it's faster, easier, and more fun to use.
- Create music or complicated sound effects.
- Test your music and sound data as many times as you want using your favorite emulator.
- Save, load, or merge music data.
- Built-in fade effect.
- Editor sounds are from a real Atari 2600.
The VbB Music and Sound Editor has seven tabs: six keyboard tabs and one expert mode tab. The keyboards limit you to acceptable notes so you can make new tunes without worrying about being too far off-key. The Expert Mode tab displays a grid of all Atari 2600 sounds.
Data Work Box
Data format and explanation:
V,C,F (Channel 0)
V,C,F (Channel 1)
D
V - Volume (0 to 15)
C - Control [a.k.a. tone, voice, and distortion] (0 to 15)
F - Frequency (0 to 31)
D - Duration
Feel free to edit your data in the Data Work Box by hand and test it as much as you want. Just be careful if you are new to editing data. If you mess up the format, your music or sound effect will not play correctly.
Data Work Box Right Click Menu
Undo
Redo
Cut
Copy
Paste
Delete
Select All
Clear All
Test in Emulator
Sound Preview with Right Click
Move your mouse pointer over the numbered keys on the keyboard images or the numbered boxes under Expert Mode and right click to hear a sound preview. This allows you to hunt for sounds without adding anything to the Data Work Box.
Add Data with Left Click
Move your mouse pointer over the numbered keys on the keyboard images or the numbered boxes under Expert Mode and left click to add the data for that note or sound to the Data Work Box. The duration data will match how long you hold down the left mouse button. If you find that the duration isn't quite long enough or short enough for a certain note or sound, edit the duration in the Data Work Box and test it until it sounds right.
Action Buttons
Test in Emulator
Plays the music or sound effect data in the Data Work Box using your favorite emulator.
Create .bas
Saves a working bB program that will play your music or sound effect and opens it in the Code Editor.
Save
This saves your music or sound effect data as a .dat file that you can load back into the Music and Sound Editor at a later time.
Open
Allows you to load a .dat file that you have saved or that someone else has created.
Add End Data
This is for people who just want to copy the data in the Data Work Box and paste it into a program. Clicking on the Add End Data button adds the ending data that tells a program the music or sound effect is finished.
Merge Channels
Merges two single channel .dat files. For example, if you have been working on some single channel music or sound effects and saved them, you can click on this button and it will ask you to select the first .dat file, then the second .dat file and they will be merged in the Data Work Box.
Add Pause
Adds empty data to the Data Work Box (all zeros).
Settings
8,4,15 0,0,0 32
You'd get this:
8,4,15 0,0,0 32 2,4,15 0,0,0 8
As you can see, the Fade Effect doubles the amount of data, so keep that in mind.
Single V,C,F
If you know what you are doing, you can enable this setting when you want to add a single line of V,C,F data. Instead of adding two lines of channel data and the duration when you left click on a note or sound, only a single line of V,C,F data is placed in the Data Work Box.
Dual Channel
Enable this if you want to work on two channels at the same time. Left click on a note or sound for channel 0 and left click a second time on a note or sound for channel 1, then the data will be added to the Data Work Box.
Mute
Mutes the sound in the editor.
Open Code on Test
If you enable this, the next time you test your data, the code will open in the Code Editor and your favorite emulator will play your music or sound effect.
Use DATA Statement
Enable this to use Data instead of Sdata in your code.
Remove Test Files
When your data is previewed using an emulator, test files are created and they can build up. Enabling this will make sure that test files are deleted after use.
Set Duration
If you need a constant duration instead of the versatile left click duration, enable this and choose the duration you'd like the editor to use.
Volume
Select the default volume you'd like the editor to use.
Shift Channel Up or Down
You'll probably only use this if you merge files. If one channel seems to be misaligned and the whole thing needs to be shifted up or down so it will match up with the other channel, just left click on the appropriate button, test in emulator, and repeat until the data is lined up properly.
Score Editor (found under the View menu)
This is a simple GUI for editing the score_graphics.asm file. The Score Editor allows you to create custom fonts for the score across the bottom of your game. You can do more than just make your own numbers. If your game doesn't use a score, you can use the score to display a life bar, items for an adventure game, or anything you can imagine.
Code Editor
The Code Editor is where you'll work on your games. This is one of the best programming editors you'll ever use. Beside being very customizable and having cool features such as Comment/Uncomment, Flip Text, Find Label and Identify Current Bank, you can drag and drop commands, code snippets, sprites, and playfields into your programs.
If you want to insert a sprite or playfield into your program, just drag a sprite or playfield file over from the Project Explorer and drop it where you want it to go in your program.
Right Click Menu
Cut
Highlight something in the Code Editor and this will copy what you highlighted and delete it from view. Same as the keyboard shortcut Ctrl + x.
Copy
Highlight something in the Code Editor and this will copy it. Same as the keyboard shortcut Ctrl + c.
Paste
Plops down at the position of the cursor whatever you have cut or copied. Same as the keyboard shortcut Ctrl + v.
Paste Unformatted
All special formatting such as font, bold, italics, colors, and so on are dropped when you use this. If you are copying code from a different editor, you might be using a different font and it would look odd in the Code Editor.
Comment
Highlight one or more lines of code, select Comment and a rem statement will be placed at the beginning of each line. A great way to quickly deactivate some code.
Uncomment
Highlight one or more lines that start with rem, select Uncomment and rem will be removed from the beginning of each line. A great way to quickly reactivate some code that you previously deactivated.
Flip Text
Highlight some lines of code, select Flip Text and the order of the lines will be reversed. One use for this would be to temporarily flip sprite data so it's no longer upside down so you can do some quick editing right there in the Code Editor. When you're finished, you can highlight the sprite data again, select Flip Text and the sprite data will be upside down again.
Find Next
Highlight some text, select Find Next then VbB will open the Find and Replace dialog box and start searching from the beginning of the program.
Find Label
Highlight the name of a label or line number after an if-then, goto, or gosub, select Find Label and the program will hop to the location of that label or line number. This can save you a lot of time when working on a large program or trying to decipher the tangled messes created by other programmers who seem to be allergic to the REM statement.
Set Font Color
Highlight some text and use this to change the font color.
Highlight/Unhighlight
Highlight some text and use this to put a yellow background behind the text.
Bold/Unbold
Highlight some text, select Bold/Unbold and it will either increase the thickness of the characters or make them look normal if they are already bold.
Refresh
Sometimes the color coding can start to look incomplete if you don't hit the Enter key at the end of a line of code. You can use Refresh once in a while to force recoloring of the code to make it easier to read.
Close
Closes the active Code Editor tab.
Close and Save
Closes the active Code Editor tab and saves your program.
Close All But This
Leaves the active tab alone and closes all other tabs except the Start Page and Settings tabs.
Close All
Closes all tabs except the Start Page and Settings tabs.
Save
Saves whatever program you have open in the active tab.
Save As
Allows you to make a copy of the program you have open in the active tab.
Sprite Editor
The Sprite Editor is where you can have fun creating sprites for your games. Although you can preview your sprite in an emulator at any time, there is also a little instant preview to the right of the Sprite Editor.
Select the type of sprite you want to work on (lives, player0, player1, player2, player3, player4, player5). Check the box next to Use Player Colors if you want to design a multicolored sprite where each row can be a different color.
How the Sprite Editor Works
The sprite editor now works more like other graphics programs you may have used before.
|
Toggle: |
Just hold down the left mouse button and drag your mouse pointer to toggle sprite pixels on or off. It's a quick way to draw or erase.
|
|
Erase: |
If you want to erase without toggling, hold down the Ctrl key, then hold down the left mouse button and drag your mouse pointer.
|
|
Draw: |
If you want to draw without toggling, hold down the Alt key, then hold down the left mouse button and drag your mouse pointer.
|
|
Select: |
To select one or more sprite pixels, hold down the Shift key, then hold down the left mouse button and drag your mouse pointer until the desired number of pixels are selected. Once the pixels are selected, you can release the Shift key and the left mouse button. Remember, you can highlight one sprite pixel, a vertical or horizontal line of sprite pixels, or a chunk of sprite pixels of any number and either:
|
Creating Animations
If you want to work on an animation and you've never done it before, here's one way to do it. Create a sprite in the Sprite Editor and save it. Then use Save As to save a copy of it. Open that copy and as you work on that 'frame' of your animation, you can click on the tab for it to make sure it's active and 'flip' between the two sprite editors by using the left/right arrow keys on your keyboard. You can flip back and forth, work on the image some more, flip back and forth and so on until you get it looking perfect. Make sure you save the sprite, then use Save As to save a copy of that sprite. Open that copy and work on it, click on a tab and flip between all three using the left/right cursor keys to see how your animation is progressing. You can keep on with this process until you have perfected your animation. Just remember to save the latest version of all of your 'frames' and you'll be ready to use the Sprite Animator.
How to Cut, Copy, and Paste with Keyboard Shortcuts
VbB allows you to cut, copy, and paste using the usual keyboard shortcuts. To copy and paste in the sprite editor, just highlight the part you want to copy, hit Ctrl + c to copy (pay attention to where the top left highlighted pixel is), then left click at the spot in the current editor or another editor where you want to paste (the spot you select will be where the top left corner of what you copied will start) and hit Ctrl + v. You can also cut by hitting Ctrl + x.
Choose a Label-like File Name
When you save a sprite, choose a file name that would make a good label if you want to save time, since VbB will use that filename as the label for it. Although you can always change the label in your program, it's just faster to pick a useful file name from the start that can be used as a label. Another reason to have a file name that would make a good label is that you cannot preview the sprite in an emulator unless it has a label-like file name. See Preview in Emulator for more information about labels.
Drag and Drop Simplicity
If you want to insert a sprite into a program, just have a program open in the Code Editor, then drag a sprite file over from the Project Explorer and drop it where you want it to go in your program.
Right Click Menu
Grab Sprite
All
Copies the Player Color data and the sprite data.
Colors
Copies only the Player Color data.
Pixels
Copies only the sprite data.
Cut
Highlight some pixels in the Sprite Editor and this will copy what you highlighted and delete it from view. Same as the keyboard shortcut Ctrl + x.
If you use the right click menu to cut, remember to right click outside of the drawing area. Right clicking inside of the drawing area allows you to instantly see the hex color of the row you clicked on and also lets you change the row color without needing to left click on the row first.
Copy
Highlight some pixels in the Sprite Editor and this will copy it. Same as the keyboard shortcut Ctrl + c.
If you use the right click menu to copy, remember to right click outside of the drawing area. Right clicking inside of the drawing area allows you to instantly see the hex color of the row you clicked on and also lets you change the row color without needing to left click on the row first.
Paste
Plops down at the position of the cursor whatever you have cut or copied. Same as the keyboard shortcut Ctrl + v.
Clear All
Deletes everything in the Sprite Editor.
Sprite Actions (Sprite Toolbox)
Flip Vertical ![]()
Flips a sprite in the up/down direction.
Flip Horizontal ![]()
Flips the sprite in the left/right direction.
Invert
Pixels that were on will be switched off and pixels that were off will be switched on.
Rotate
Spins the sprite clockwise by 90 degrees.
Shrink
Decreases the size of a sprite by one pixel horizontally and vertically. Simple objects retain more of their original shape. Remember to resize the editor back to a width of 8 pixels so the sprite will work properly in your program.
Grow
Increases the size of a sprite by one pixel horizontally and vertically. Simple objects retain more of their original shape. Remember to resize the editor back to a width of 8 pixels so the sprite will work properly in your program.
Resize
Change the width or height of the Sprite Editor.
Set Color (Type in Row Color)
Right click on the row you want to change, select Set Color, type in a hex number in the box that appears on the right side of the row and hit the enter key when you're done.
The number next to Set Color in the right click menu shows the hex value of the current default pixel color or row color at the location of the cursor.
Choose Color (Select Row Color from TIA Chart)
Right click on the row you want to change and select Choose Color. The TIA chart will open and the TIA Chart cursor will jump to the current color of the row so you don't end up selecting the same color by mistake. Select a color from the TIA chart by left clicking on the color you'd like to use.
Set Player Color (Foreground Color)
Uses the TIA Color Chart to set the default color of the pixels in the Sprite Editor. It does nothing to the sprite file you're working on. (The foreground color of the Sprite Editor can be different than the foreground color of the Playfield Editor.)
Set Background Color (Shared Background Color)
Uses the TIA Color Chart to set the default background color of the Sprite Editor and Playfield Editor. It does nothing to the sprite file you're working on. Remember that the background color cannot be the same as the foreground color of the Sprite Editor or the Playfield Editor.
Preview in Emulator
Before you can preview, you must make sure that the file name of the sprite would make a proper label. A label can have any combination of letters, numbers, or underscores, even as the first character. A label must not match or begin with a known keyword or any labels internal to bB (like end, kernel, and so on). For example, you cannot name a label next or pfpixel and although you could not use 'scorechange' you could use 'changescore'. If the file name would not make a good label, instead of opening in an emulator, the preview code will open in a Code Editor tab.
Once you are sure the file name would make a good label, select Preview in Emulator and your sprite will open in the default emulator. The background color used will be whatever you have selected using Set Background Color. If you're not using Player Colors to get a multicolored sprite, the color of the sprite will be whatever you have selected using Set Player Color. You can move the sprite around the screen using the joystick controls you have set up in your default emulator.
Close
Closes the active Sprite Editor tab.
Close and Save
Closes the active Sprite Editor tab and saves your sprite.
Close All But This
Leaves the active tab alone and closes all other tabs except the Start Page and Settings tabs.
Close All
Closes all tabs except the Start Page and Settings tabs.
Save
Saves whatever sprite you have open in the active tab.
Save As
Allows you to make a copy of the sprite you have open in the active tab.
Playfield Editor
The Playfield Editor is where you can design your playfields and title screens. Although you can preview your playfield in an emulator at any time, there is also a little instant preview to the right of the Playfield Editor.
How the Playfield Editor Works
The playfield editor now works more like other graphics programs you may have used before.
|
Toggle: |
Just hold down the left mouse button and drag your mouse pointer to toggle playfield pixels on or off. It's a quick way to draw or erase.
|
|
Erase: |
If you want to erase without toggling, hold down the Ctrl key, then hold down the left mouse button and drag your mouse pointer.
|
|
Draw: |
If you want to draw without toggling, hold down the Alt key, then hold down the left mouse button and drag your mouse pointer.
|
|
Select: |
To select one or more playfield pixels, hold down the Shift key, then hold down the left mouse button and drag your mouse pointer until the desired number of pixels are selected. Once the pixels are selected, you can release the Shift key and the left mouse button. Remember, you can highlight one playfield pixel, a vertical or horizontal line of playfield pixels, or a chunk of playfield pixels of any number and either:
|
How to Cut, Copy, and Paste with Keyboard Shortcuts
VbB allows you to cut, copy, and paste using the usual keyboard shortcuts. To copy and paste in the playfield editor, just highlight the part you want to copy, hit Ctrl + c to copy (pay attention to where the top left highlighted pixel is), then left click at the spot in the current editor or another editor where you want to paste (the spot you select will be where the top left corner of what you copied will start) and hit Ctrl + v. You can also cut by hitting Ctrl + x.
Drag and Drop Simplicity
If you want to insert a playfield into a program, just have a program open in the Code Editor, then drag a playfield file over from the Project Explorer and drop it where you want it to go in your program.
The Playfield Check Boxes
Check the box next to Use Playfield Colors if you want to design a multicolored playfield where each row can be a different color. See Set Color and Choose Color for more information.
Check the box next to Mirrored Playfield if you want to create a playfield that will work with the multisprite kernel. Draw something on either side of the playfield and see the same thing appear on the opposite side.
Check the box next to Playfield Heights if you'd like to change any row heights. There are two ways that you can change the height of a row. The first way is to double click on a numbered box on the left side of the playfield. A box will appear above the numbered boxes in the top left corner of the playfield editor and you can either type in the number or left click on the up/down buttons to increase or decrease the number. The second way you can change the row heights is to hover your mouse pointer over any line that separates the numbered boxes on the left side of the playfield and when the mouse pointer changes from a hand to an up/down arrow, you can left click and drag the line up or down to shrink or stretch the row height.
Right Click Menu
Grab Playfield
All
Copies the pfcolors data, playfield pixel data and the pfheights data.
Colors
Copies only the pfcolors data.
Pixels
Copies only the playfield pixel data.
Heights
Copies only the pfheights data.
Cut
Highlight some pixels in the Playfield Editor and this will copy what you highlighted and delete it from view. Same as the keyboard shortcut Ctrl + x.
If you use the right click menu to cut, remember to right click outside of the drawing area. Right clicking inside of the drawing area allows you to instantly see the hex color of the row you clicked on and also lets you change the row color without needing to left click on the row first.
Copy
Highlight some pixels in the Playfield Editor and this will copy it. Same as the keyboard shortcut Ctrl + c.
If you use the right click menu to copy, remember to right click outside of the drawing area. Right clicking inside of the drawing area allows you to instantly see the hex color of the row you clicked on and also lets you change the row color without needing to left click on the row first.
Paste
Plops down at the position of the cursor whatever you have cut or copied. Same as the keyboard shortcut Ctrl + v.
Clear All
Deletes everything in the Playfield Editor.
Resize
Change the width or height of the Playfield Editor.
Set Color (Type in Row Color)
Right click on the row you want to change, select Set Color, type in a hex number in the box that appears on the right side of the row and hit the enter key when you're done.
The number next to Set Color in the right click menu shows the hex value of the current default pixel color or row color at the location of the cursor.
Choose Color (Select Row Color from TIA Chart)
Right click on the row you want to change and select Choose Color. The TIA chart will open and the TIA Chart cursor will jump to the current color of the row so you don't end up selecting the same color by mistake. Select a color from the TIA chart by left clicking on the color you'd like to use.
Set Playfield Color (Foreground Color)
Uses the TIA Color Chart to set the default color of the pixels in the Playfield Editor. It does nothing to the playfield file you're working on. (The foreground color of the Playfield Editor can be different than the foreground color of the Sprite Editor.)
Set Background Color (Shared Background Color)
Uses the TIA Color Chart to set the default background color of the Playfield Editor and Sprite Editor. It does nothing to the playfield file you're working on. Remember that the background color cannot be the same as the foreground color of the Playfield Editor or the Sprite Editor.
Preview in Emulator
Standard Kernel
Displays your playfield in the default emulator.
Standard Kernel: no_blank_lines
Displays your playfield in the default emulator without lines separating the rows.
Multisprite Kernel
Displays your mirrored playfield in the default emulator. If you try to display a normal playfield using this, you'll probably get a mangled mess.
Close
Closes the active Playfield Editor tab.
Close and Save
Closes the active Playfield Editor tab and saves your Playfield.
Close All But This
Leaves the active tab alone and closes all other tabs except the Start Page and Settings tabs.
Close All
Closes all tabs except the Start Page and Settings tabs.
Save
Saves whatever Playfield you have open in the active tab.
Save As
Allows you to make a copy of the Playfield you have open in the active tab.
Background Color Changer
Disclaimer
View this page and any external web sites at your own risk. I am not responsible for any possible spiritual, emotional, physical, financial or any other damage to you, your friends, family, ancestors, or descendants in the past, present, or future, living or dead, in this dimension or any other.
The Peephole Optimizer is not a device that allows you to see into female locker rooms. You're not living in a cheesy 1980s movie. Try to be more mature.
