Atari 7800 Basic Exploration #1 - Hello World - Make -A-Thing!
HTML-код
- Опубликовано: 4 окт 2024
- In this first exploration we learn how to make "Hello World" on the Atari 7800 using Atari 7800 Basic.
Note: if you are getting an error like this "*** (1): ERROR, unknown keyword 'zoneheight'."
All code (except for jump labels and couple other things we'll discuss later) must be tabbed-in at least ONE SPACE. Sorry I did not make this more clear at the beginning.
Written version:
intothevertica...
Feel the urge to support, click here (but no obligation): www.buymeacoff...
Source GitHub : intotheverticalblank/makeathing: Code for making things (github.com)
github.com/int...
7800 Graphics Modes And Sprites Tested:
• Atari 7800 Graphics Mo...
Visual Studio Code: Visual Studio Code - Code Editing. Redefined
code.visualstu...
Atari 7800 Basic Github: Releases · 7800-devtools/7800basic (github.com)
github.com/780...
AtariAge 7800 Basic Forum: 7800basic beta, the release thread - Atari 7800 Programming - AtariAge Forums
forums.atariag...
Atari 7800 Basic Guide: 7800basic Guide (randomterrain.com)
www.randomterr...
Concerto Cart: Pre-production Concerto Cartridge | Erstwhile Technologies (square.site)
erstwhile-tech...
Theme by Brian Travis
Title: Into The Vertical Blank theme Words & music by Brian Travis (c)(p)2021 Taste This Moment Music ASCAP
www.briantravis...
Find us here:
intothevertical...
Into the Vertical Blank: Generation Atari | Facebook
/ intotheverti. .
Into The Vertical Blank Pod Cast - Twitter
/ atari_vb_pod
Note: if you are getting an error like this "*** (1): ERROR, unknown keyword 'zoneheight'."
All code (except for jump labels and couple other things we'll discuss later) must be tabbed-in at least ONE SPACE.
Sorry I did not make this more clear at the beginning.
What idiot forgot that make that clear? Oh, it was me.
🤯 First STOS now the 7800!?!? You guys are killing me! Inject this stuff into my veins!
That's right Gabriel! Come and get it!
Holly Awesome!
I just started looking into Programming for the 7800
It was my first system & I still have it, I've never been a programmer besides some batch menus for my Dos. system back in the day!
Sweet@!
Just started taking 7800 programming seriously so this series is solid gold. Thank you! I'm trying to find info on making music via TIA since I'd like to make inexpensive physical carts.
The god console. It’s finally receiving the treatment it deserves.
I'm impressed how much of what I learned using Atari 8K BASIC is applicable here.
32K isn't "small". On the 400/800 we only had 8K cartridges until the new bank-switched 16K carts were released.
yes! 8K Atari basic was our favorite, Strings as character arrays just like C
Awesome, explanatory video! Thank you for this - Keep up the retro spirit mate!
Thank you for making this series. I'm looking into porting my soon to be released Atari 2600 game, Robot Zed, to other platforms, and the 7800 will be the first one. These tutorial videos are going to be a big help in that adventure! Thank you!
Robot Zed is a really cool 2600 homebrew! You will definitely be able to make a game like that by following along. We might not cover 2D Platformer physics soon,. but you have them down pretty well already and the 2600 code will move to the 7800 fine if the are both in basic.
@@IntoTheVerticalBlank Thanks. Unless the 7800 does things really different with game physics, then I think I already have that covered, it's just how it does graphics and sound (I do plan on using a POKEY), along with things like collision detection, is the thing I really need to try and wrap my head around and this is a good start.
Good stuff, thanks for sharing and looking forward to the next sessions 👏
love it!, thanx i try it! :)
Very interesting subscribed
The Atari 7800 is probably my favorite 80’s system. It has it’s shortcomings like the lack of color RAM, but that can be got around. It’s biggest flaw in my oppinion is the 9 color limit for 320 modes.
Yeah it's quirky for sure, but also delightful and fun to work with, even if just to experiments like me. . I personally think he biggest flaw is the lack of new sound chip.
@@steveafulton yeah, kinda forgot about that.
The outdated sound is the biggest flaw. BUT, the 7800 is still better than the NES in every other aspect.
@@ecernosoft3096 Yeah, it's at the very least comparable, and probably a lot more flexible. The disadvantage was that, with only 70+ games made, developers never had chance to really figure out how to make do wonders. We have that chance now though!
@@steveafulton back in the day.
But now, the 7800 is ON FIRE with it’s homebrew library. It’s incredibly significant. Especially when you include the 2600’s insane homebrew library as well. For every NES homebrew, I can count about 5 7800 homebrews and 10 2600 homebrews.
@@ecernosoft3096 Yes, I love it!!!
Awesome job, Steve!
Thanks for this. I have been asking for years so I can jump from Batari Basic to 7800 Basic. I go by Lewis2907 over in Batari Basic. I plan to try this out this weekend and see what I can do as the language is very similar to what Karl G, RT and few others have said. I just needed to know and see how to load a program up. Thanks again for this video.
You are welcome. The next lesson is coming soon.
Nice!
So I made sure the issue with hitting tab with commands to prevent the zoneheight error but now it’s saying 32K is an unsupported ROM size.
Make sure the "k" is lowercase:
set romsize 32k
using the same code as you:
'''
Verifying compiler files exist...
Starting build of main.78b...
7800basic v0.24 Mar 2 2023 18:16:13
*** (1): ERROR, unknown keyword 'zoneheight'.
Compilation failed.
Exit code: 1
Cleaning up files generated during compilation...
'''
Did you check the latest code in guthub?
set zoneheight 16
displaymode 160A
set plotvalueonscreen on
set romsize 32k
github.com/intotheverticalblank/makeathing/blob/main/Atari7800/Atari7800Basic/Tutorial/lesson1_1.78b
I'll ask Steve to check it also for you.
Two things to check:
1. Make sure code is indented 1 space.
2. Look at bottom of VSCode on the right hand-side. it should say "7800Basic" (white text on blue bar). If it says "bAtari Basic" click on it and select 7800Basic.
I recreated it by having the "set zoneheight" in column one. space it over one. The first column is for labels.
@@IntoTheVerticalBlank Thank you, but now it does this:
'''
Verifying compiler files exist...
Starting build of main.78b...
7800basic v0.24 Mar 2 2023 18:16:13
7800basic compilation complete.
User-defined 7800.asm found in current directory
--- Unresolved Symbol List
HSCHARSHERE 0000 ???? (R )
BACKGROUND 0000 ???? (R )
isBANKSETBANK 0000 ???? (R )
SOFTPAUSEOFF 0000 ???? (R )
SNESNPAUSE 0000 ???? (R )
BANKSET_DL_IN_CARTRAM 0000 ???? (R )
BANKSETROM 0000 ???? (R )
SNES0PAUSE 0000 ???? (R )
SNES1PAUSE 0000 ???? (R )
0.HSup 0000 ???? (R )
stack allowance: 30 nested subroutines.
the canary is situated at: $1c1
28660 bytes of ROM space left in the main area.
$1880 to $1fff used as zone memory, allowing 31 display objects per zone.
2429 bytes left in the 7800basic reserved area.
Fatal assembly error: Source is not resolvable.
Cartridge size not a multiple of 4K bytes!
7800header 0.17 Mar 2 2023 18:16:18
*** WARNING: The file size of f:\MyProgramming\Programs\atari\testing\main.78b.bin isn't correct.
opened parameter file a78info.cfg
7800makecc2 v0.1
The ROM 'f:\MyProgramming\Programs\atari\testing\main.78b.bin' is compatible with CC2.
Exit code: 1
Cleaning up files generated during compilation...
'''
and do you have discord or something like that?
@@Toby-ve6gp I think you spelled BACKGRND as "BACKGROUND". It should be BACKGRND.
No discord yet, but we will consider it.
Thanks for this tutorial, I've attempted many times to do something in Basic for either PC or the XL/XE, but was always just reading my way through it and usually would get stuck. I really appreciate your explanations on everything.
Just a heads-up though, in using the latest version of Atari Dev Studio, 0.93, it says that _gameloop is an unknown command and spits out an error. Removing the _ fixes it.
I also got a strange thing popping up in my text - after the hello, it throws in a ), then a space. I tested by putting in three words and it shows a ) after each word, then the space. As far as I can tell, my code mimics yours but for some reason it shoves a ) in there. Is it possible I did something wrong or an odd change to 7800basic or Atari Dev Studio? Thx in advance
Make sure the _gameLoop starts in the first column. All labels need to start in the first column. (Almost) all code starts in column 2
@@IntoTheVerticalBlank It definitely is but if I use an underscore on any label, the compiler spits back errors - remove them and change nothing else about the code and it works fine. Rather odd but not a big deal. Thanks - is episode 4 coming soon?
the font keeps gliching
What do you mean?
How many characters did you try to put on one line?
Oh man, talking about ear busting, those sound effects you added into the video are extremely loud in comparison to your voice.
Man, sorry, how were you listening? Headphones?
I think I found the offending sound effect. RUclips doesn't let you update videos though, so I'll need to create remastered ones and make sure to get rid of it in future episodes. Thanks for the heads-up.
@@IntoTheVerticalBlank yeah, I listen by headphones. I turn it up a bit since I don't have noise canceling headphones.