I personally would give the Batari Basic a try.
The thing is, it's very limited because the VCS is very limited. This is both good and bad. The bad is you will need to keep your initial expectations low. The good is there isn't a ton of stuff you have to learn in order to be doing something on the machine!
Simple games in Batari Basic are really simple. Something like PONG or BREAKOUT won't take very many lines of code to get working. The big hump is understanding programming and how it relates to both the task at hand, and the machine you are programming for.
There is lots of game code to look at, build, run, then tweak. Highly recommend tweaks to a working thing first. You can go through the code and change the shape of something, or it's speed, color, etc... this can help you test what you know and what you don't, triggering questions! The questions are good, ask them, and collaborate with the other Batari Basic programmers here and have some fun.
If you see some real success, like bumping into the limits of Batari Basic on a game project or two, then you can branch out to more complex setups, leveraging what you know.
I would say the second most important thing besides just getting up to speed on programming is the process. Define your game, considering the limits you've got in play. There are always limits and understanding those helps you succeed early on. Later, if you get good, breaking those limits is where a lot of the fun is! But, small steps first.
Once the game is defined, you break it into pieces, write each one, building on each, until you have it done. Example Breakout.
You write a program to draw the bricks. Done. Then you add in the paddle piece. Done. Add in the ball just bouncing around in there. Then do bouncing on the three walls, and only the bottom when the paddle is in the right place. Finally have it take out bricks!
Each of those tasks might only be a little tiny bit of code, but they all add up!
What I'm saying here is make a simple game first, cloning one that exists already, so you've got something possible to start from. Get it all done, and when you do, then you will know enough to expand on it, and you are off and running from there.
I've seen people just start tinkering with existing code, pick it up and go do their own projects. Random Terrain took a long path, but a good one, documenting everything he found, which helped him get to where he needs to be to get his project done. (nice one too)
Edited by potatohead, Tue Dec 13, 2011 6:43 AM.