Jump to content
eugenetswong

How To Start Learning Atari 8 Bit Assembly For Free

Recommended Posts

I have read through several books in the archived sites, but I haven't been able to practise the lessons and try the sample code, because I don't know how to use it. I figure that I need an assembler, especially if I want to learn assembly to make fast graphics games, or maybe squeeze more text into some text adventures.

 

I see many lists of software in this forum and on the web [and from a newsgroup, if I recall correctly], but I think that the lists don't accurately reflect whether or not we are allowed to download and use it for free.

 

Are there free assemblers that I can use? I don't need the source code, unless we are supposed to compile it. Ideally, I would love to sell software in the future, so I don't want to pay licensing fees, if such an issue exists.

 

Here is my set up.

  • Acer Aspire 5100-5023
  • no actual Atari hardware
  • Kubuntu from 2016
  • Atari800
  • only 3 standard ROMs, a couple of programs that you guys shared [modified Donkey Kong and Popeye], plus code snippets and my own code

 

Here are my goals.

  • space games
  • car racing games
  • every now and then a nice image with GR. 8 using most/all of the screen

 

Share this post


Link to post
Share on other sites

CC65 is a free C compiler for Atari 8-bit as well as a bunch of other 6502 based systems.  It also comes with a free assembler CA65.  That is what I am using.

Share this post


Link to post
Share on other sites

Hi,

 

   If you are running 64 bit Linux, then WUDSN is a good environment, and supports several different (free) Linux assemblers. I know you can get the (licensed?) OS ROMs from one of the emulators, I think it might be PC XFormer, but I am not certain.

Share this post


Link to post
Share on other sites

Also, update your Kubuntu, no reason to be running one from 2016.

The repositories have several assemblers;

sudo apt install cc65 acme

 

Share this post


Link to post
Share on other sites

In the day I learned with the help of "Programming the 6502" by Zaks and a Byte magazine of the time which had a bunch of 6502 source in it, and much of it wasn't even for the Atari.

Just reading decent commented source can be sufficient to pick things up.

Then throw in a borrowed Atari AsmEd cartridge and some time.

Of course knowing another language or two first up helps as well as knowing some machine architecture.

Share this post


Link to post
Share on other sites

Hi,

 

   WUDSN is an Eclipse extension, so you should be able to use it for cc65 (if you install/download C language support), but I am not sure how you would get it to recognise any Atari specific libraries/includes, etc. Would be interested to know what you have to do to get it working correctly, as it (WUDSN) works very well with Atari assembly language.

Share this post


Link to post
Share on other sites

For a more hand-holding intro to 6502 assembly, you could give Richard Mansfield's "Machine Language for Beginners" a try: https://www.atariarchives.org/mlb/

 

There's also a sequel: https://www.atariarchives.org/2bml/

 

The only caveat is that it is a book of its time, so it tries to leverage what you know about BASIC programming to teach you assembly.  And of course it will have nothing to say about modern coding tools.  I do prefer it to Zaks's book because Zaks opens with the driest discussion of ones and twos-complement arithmetic this side of the Kalahari desert.

 

Edited by FifthPlayer
  • Like 1

Share this post


Link to post
Share on other sites

I am currently learning, very slowly, when I find a bit of time, from ZAKS 'Programming the 6502' and Mansfield's 'Machine Language for beginners.' I also have ZAKS 'Advanced 6502 Programming' book which I have not started using yet, until I finish the fundamentals with the first book, but I also recommend it. I am using real hardware, and only real hardware, as that is the entire reason for learning to program the Atari, because I want to use a real Atari to learn to program. Old school all the way for me, just like they did back in the day. Well, sort of; my 1200XL does have 576K memory, the best and/or latest OS's (32-in-1), MyIDE II virtual HD and it's 512K of on-board memory and the latest SDX along with MAC/65. So it's a bit more than they had "back-in-the-day.";)  None of which was free, except the actual ZAKS books that were given to me (thank God, it's easier than looking at a PDF of the book on my PC and trying to learn on the Atari at the same time). Soon I'll also have a 1MB Incognito 800 to learn on too, once I get around to installing the Incognito in my 800! I love and have to have real hardware though, I wouldn't even bother if all I could use was emulators. :woozy: But to each their own, and the end result program is all the community cares about, what you used to program is all up to you.

 

My perspective on learning to program is unique, because I am learning BASIC with BASIC XE and Assembly with MAC/65 concurrently...I love OSS languages...so far...they should have been built-in, standard, with XL/XE models just like original Atari BASIC with the 800 (which was written by OSS, so their BASIC's are the TRUE evolution of Atari BASIC).

20200121_213228.jpg

Edited by Gunstar
  • Like 2

Share this post


Link to post
Share on other sites

I forgot to mention, as did others as far as I can see, while the books I mentioned are probably the best for learning assembly and 6502 coding, they aren't enough for learning to program the Atari. Because the Atari has it's custom processors that can't be ignored and must be used in programming the Atari, I also recommend 'Mapping the Atari' and 'De Re Atari' to learn the other custom IC's.

 

'De Re Atari' is the only out of these I don't own a physical copy of, so if there are any nice souls out there with an extra copy I could have, it would be much appreciated. I'm willing to trade, I have other books, I'll trade anything and even more than one, except for the books I mentioned here, for a copy of De Re...

20200122_142350.jpg

Edited by Gunstar
  • Like 2

Share this post


Link to post
Share on other sites

Hi... My name is Philip and I made hard copies of some Atari books I was suggested some time back thanks to my HP workhorse of a printer... I even got a few custom prints for the Atari 7800 and the 5200 which includes official docs from Atari concerning the hardware, schematics, notes, copies of websites I found useful with information, all to help gain understanding on Atari hardware.

 

792686164_AtariPlayerMissleGraphics.thumb.jpg.a882829b58ec61bcd4f3c8416a004fcf.jpg593588162_AtariGraphicsandArcadeGamesDesign.thumb.jpg.834f561f9c6957daad49370d6e0da871.jpg785438335_Atari2600TIAManual.thumb.jpg.170c3db5534e17da0d1c832899677bd3.jpg1799814641_Atari600XL_AnalogMag.thumb.jpg.b01edc2cef59056cb94da3e0f9e97f92.jpg1237339500_RacingTheBeam.thumb.jpg.38eda8d19bf06aaa15badf18e048fdd0.jpg169131081_MappingTheAtari.thumb.jpg.a7167dacc929ec9e2d9f366e7cb4561c.jpg1015328857_CustomAtari7800Book.thumb.jpg.4f64e515c96ceb5d46ae340c662eb15f.jpg864423551_CustomAtari5200Book.thumb.jpg.01bd80477d87f40b6ee2d85c4298bcb2.jpg

  • Like 5

Share this post


Link to post
Share on other sites
10 minutes ago, philipj said:

Hi... My name is Philip and I made hard copies of some Atari books I was suggested some time back thanks to my HP workhorse of a printer... I even got a few custom prints for the Atari 7800 and the 5200 which includes official docs from Atari concerning the hardware, schematics, notes, copies of websites I found useful with information, all to help gain understanding on Atari hardware.

 

792686164_AtariPlayerMissleGraphics.thumb.jpg.a882829b58ec61bcd4f3c8416a004fcf.jpg593588162_AtariGraphicsandArcadeGamesDesign.thumb.jpg.834f561f9c6957daad49370d6e0da871.jpg785438335_Atari2600TIAManual.thumb.jpg.170c3db5534e17da0d1c832899677bd3.jpg1799814641_Atari600XL_AnalogMag.thumb.jpg.b01edc2cef59056cb94da3e0f9e97f92.jpg1237339500_RacingTheBeam.thumb.jpg.38eda8d19bf06aaa15badf18e048fdd0.jpg169131081_MappingTheAtari.thumb.jpg.a7167dacc929ec9e2d9f366e7cb4561c.jpg1015328857_CustomAtari7800Book.thumb.jpg.4f64e515c96ceb5d46ae340c662eb15f.jpg864423551_CustomAtari5200Book.thumb.jpg.01bd80477d87f40b6ee2d85c4298bcb2.jpg

Nice - I have quite my share of 3-ring binders of printed manuals 😞  Just notices your sig mention JS2.  Don't know if I posted with you over there, but had my Jag since 95 (still have them).

Share this post


Link to post
Share on other sites
Quote

Nice - I have quite my share of 3-ring binders of printed manuals 😞  Just notices your sig mention JS2.  Don't know if I posted with you over there, but had my Jag since 95 (still have them).

 

Chances are you probably have... lol  I just put that in there because over there I was known as "Ace", but I was a member here at AA before I was there at JS2 so I wasn't able to change my name here without starting a whole new account.  I spent a lot of time in the Jag forum and the Atari 7800, in fact I was a moderator for the 7800 forum in hopes of making new games for the system, but it never worked out that way. Stephen I think I talked to you in the Jag section here. I was just re-introducing myself here because I haven't posted in the 5200 section in ages man just in case someone new is here. Really the Jaguar and the 7800 has been my main forums.

  • Thanks 1

Share this post


Link to post
Share on other sites
15 hours ago, philipj said:

Hi... My name is Philip and I made hard copies of some Atari books I was suggested some time back thanks to my HP workhorse of a printer... I even got a few custom prints for the Atari 7800 and the 5200 which includes official docs from Atari concerning the hardware, schematics, notes, copies of websites I found useful with information, all to help gain understanding on Atari hardware.

 

792686164_AtariPlayerMissleGraphics.thumb.jpg.a882829b58ec61bcd4f3c8416a004fcf.jpg593588162_AtariGraphicsandArcadeGamesDesign.thumb.jpg.834f561f9c6957daad49370d6e0da871.jpg785438335_Atari2600TIAManual.thumb.jpg.170c3db5534e17da0d1c832899677bd3.jpg1799814641_Atari600XL_AnalogMag.thumb.jpg.b01edc2cef59056cb94da3e0f9e97f92.jpg1237339500_RacingTheBeam.thumb.jpg.38eda8d19bf06aaa15badf18e048fdd0.jpg169131081_MappingTheAtari.thumb.jpg.a7167dacc929ec9e2d9f366e7cb4561c.jpg1015328857_CustomAtari7800Book.thumb.jpg.4f64e515c96ceb5d46ae340c662eb15f.jpg864423551_CustomAtari5200Book.thumb.jpg.01bd80477d87f40b6ee2d85c4298bcb2.jpg

This is what I was originally planning on doing myself, but after doing the math on paper and ink costs, I realized it was more expensive than tracking down used copies of the real books, so I start doing that instead.

Share this post


Link to post
Share on other sites
Quote

This is what I was originally planning on doing myself, but after doing the math on paper and ink costs, I realized it was more expensive than tracking down used copies of the real books, so I start doing that instead.

 

Well... I use the cheapo inks from ebay to print everything. I have an HP 8600 and that thing is a serious work that print on both sides of the paper in one roll and it does very fast. I find that it's trial and error with ebay ink where some inks are not of that good of quality, but when when it comes to printing large amounts of pages, I'll take the quantity over the quality. The ink I get only cost around $11 a set so I just buy a couple of them a month just to keep plenty around and that's just pennies on the dollar although I do have to admit it's been some trial and error using third party ink; some inks aren't always full to capacity so you really have to find a good source at a good price. HP machines will send error messages...? It knows HP products from other third party products and sometimes will lie and say the cartridges is running out of ink or can't read ink quantities or some times will halt printing while the error messages are up... Just ignore them, exit the error messages and keep on printing until you actually see the ink physically running out as it prints to paper. It's a bit crude but has been very beneficial and has all but worn my printer out. Below is a pic of my print outs; some binders has up to four books in them. I've printed books before using lower quality printers even manually reversing pages to print on both sides to save on buying more paper, but the 8600 is a beast printing both sides rapidly in "Draft Mode" and I've been loving every minute of printing all of this great information.

 

 

My Hard Copies.jpg

Edited by philipj
  • Like 3

Share this post


Link to post
Share on other sites
On 1/16/2020 at 10:45 AM, eugenetswong said:

Are there free assemblers that I can use? I don't need the source code, unless we are supposed to compile it. Ideally, I would love to sell software in the future, so I don't want to pay licensing fees, if such an issue exists.

 

Shirley, we shouldn't have gotten this far without mentioning MADS and also the sticky.  And don't miss the awesome videos by @JAC! even if you aren't using Eclipse.

  • Like 1

Share this post


Link to post
Share on other sites

WUDSN is great for assembly programming. You'll probably find it easier and more fun to learn 6502 assembler using an Atari specific book as these will show you how to make use of the Atari hardware which will make for a bit more interesting programming exercises than just looking at how some registers changed through your manipulation. Be aware that the market for paid 8-bit software is rather small and that any full-blown game in assembler requires a lot of work as it's a bit like building a house using individual grains of sand. 

  • Like 1

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.
Note: Your post will require moderator approval before it will be visible.

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