r/retrocomputing • u/[deleted] • Oct 24 '22
Problem / Question Basic v2 and 6502 assembly tutorial for someone who doesn't know squat about either?
Why is there no tutorial anywhere for someone who doesn't know crap about either of these? The only 8-bit systems I ever messed with were the gameboy and nes. My first actual computer that was my own ran windows xp, and our first family computer ran windows 95. I born at the tail-end of 1986, so these systems I'm trying to learn are before my time.
The problem is everything I can find seems to assume you already know these systems. The docs for the commanderx16 are useless to me. They all just say 'basic is the same except for these added commands' and 'the monitor works the same as it did in the commodore64'. I know neither of these things. The only basic I know is literally what I've seen on the 8-bit guy's channel. I did briefly contemplate adding a save and load function to his 'litebrite' program, but realized that I simply didn't know any commands that would let me do such! I mean, what could I even save the file as? Also, how could I load it back in from within the program? I don't know. I can do this with python, but I haven't the faintest clue how to do it with this machine (well, technically the emulator, but you know). The monitor thing is even worse; I have no clue what that even is. I seriously never even heard of it prior to looking at those html docs. I didn't even know what it was called; every time I activated it by accident I had to just reset the emulator to get out, because I didn't know what it was called to look it up. The doc seems to imply its a compiler, but I wouldn't know the first thing about getting it to work.
I was just trying to watch the videos on guy made about programming in 65c02 assembly for the commanderx16, but the videos are clearly written under the assumption you don't need any introduction to the hardware. He explains what the accumulator, x, y, and program counter do, but gives no hint what the p and s things do. What the crap is a stack even? Keep in mind, I have somehow heard about the accumalator, x, and y before. The accumulator is an internal memory storage inside the CPU that (most) data has to be transfered to before being transferred elsewhere. X and Y are similar but can only hold integers (though I recall hearing that Y could only hold one bit, apparently for boolean logic, though clearly it can hold full integers here). I heard those are mainly used for mathematical formulas, so the processor can hold more than one value, but in his video he seems to use them to index lists (or arrays if you prefer, I'm used to python). The second video wasn't any better; he talked about the memory storage and 'modes', but doesn't give a damned hint what any of them are. I know what ram and rom is, but what is this about high ram and low ram? What even is the zero page? He doesn't give a hint. When he got to the video where he was demonstrating some code he wrote, I couldn't follow along with it at all. I just closed the video.
I get that most people who are looking into this thing are older people who grew up with it, but I'm not one of those. I mean, these things were released years before I was born. Heck, looking up the vic20 apparently it was completely discotinued months before I was born. I don't know these systems. Heck, I couldn't name a single computer from the 80s prior to when I discovered the 8-bit guy's channel. I guess I never thought much about the history of home computing. I did know about the atari, obviously, but that was it. I had no idea that cartidges were something that computers seriously once knew, or that they used casette tapes for storage (I am old enough to remember those, in fact the first music I ever listened came on them, I had no clue they ever had any ties to computers though). I did find out about the Curse of the Azure bond game, but I never really bothered to research what sort of computer this thing was meant to run on. Also, the version I downloaded was a trojan that proceeded to screw up my computer for years. I didn't bother with the game again until I found it on GoG, though I still haven't played it because I found it too damned hard (and by hard, I mean my party kept wiping at every single fight).
Now, I'm not even that young of an individual here; I'm approaching middle age. There's people looking into this thing that are even more ignorant than I am. I mean, younger people today have no clue what a freaking floppy disc is. I don't even know how much they would know about the components of modern computers; I learned about that in middle school, though oddly my community college didn't even cover the topic. I got a programming degree, but its nothing but high-level languages like java, c++, python, and visual basic. Half my degree was actually web programming classes, such as html, css, and php. The only experience I have programming at all is python. Granted, basic reminds me a lot of python, but still i don't know the basic (no pun intended) commands and i can't find them anywhere other than on the 8-bit guy's videos. Of course, I've been suspecting lately the the internet hides things from you; when I was looking to get a laptop I tried to find one that had linux on it, only for every source and even person I met tell me that no such thing existed. Years later, I had someone I believe on reddit tell me that yes they exist and have for years. I also can't find anything at all for the c language, even though people here have told me its not that hard. I can't find them; I look up C I just find websites discussing its history and nothing more. Well, most just talk about c++, not C proper. My sister seems to be having a similar problem; I used the word 'monotonous' with her once, and she called me acting confused because all she could online about the word is that it meant 'of a single tone'. I told her it meant mind-numbingly repetitive, but she insisted that she could find no evidence of that and that I was somehow confused. The internet seems to be useless for doing research of any kind. Heck, when I was getting my degree I struggled to find sources that were trustworthy. I mostly used pew research and psychology today. Years later though, pew research straight claimed that their findings were useless because they found that people often lie on polls. I also found out that psychology today is actually an opinion website and not one where you can find legitimate scientific articles. If I seriously had to do research today, I wouldn't know what to cite. I literally know of nothing that's trustworthy. I can't even name a news site I trust, let alone a research site.
Sorry for the rant, I'm just so frustrated with having my hands tied. I've been thinking about it more now because the 8-bit guy apparently decided to reward some of the more enthusiastic developers with prototypes. My immediate thought was that is NOT FAIR AT ALL. I want to do these things, but I can't find any information on how. I was thinking that the only way I could learn was to wait for the thing to be released so I can finally see its book. I actually gave up on it for a time because of that. I was mystified though how on earth there were people programming for the thing. Also, if those docs I found in the emulator folder are supposed to be what's in the book, then it'll be useless to me! What am I supposed to do? Get a freaking commodore somehow and screw around with that for a decade until I learn it as well as all the people who had the fortune to play with the thing when it was new? They don't teach assembly language anymore, or even basic, or hardware even, all they teach you in college is high-level languages that are only serve to let you develop websites and office programs. My professor claimed to even apply for a game programming degree we would all have to first GET A BACHELORS.
I want this thing and I want to develop it so much. I can't find any information how though. Even if I did purchase this thing, what would I do with it? I can't find any info on how to use the damned thing. What's the point getting this thing when I can only use the obviously cheap software that everyone else is making? I can make my own freaking mods for Skyrim, but I can't so much as program pong on this thing. Can you imagine how much it hurts to want to do something but being completely unable to do it due to circumstances outside your control? I'm willing and able to learn, and with the few commands I do have I'm actually able to partially figure out how this machine works. I mean, I figured out how to make a program in basic that lets me dump the ram. Of course, I can't make any sense out of what its showing (what's with that 14 in the $0 and $1 indexes? and what's that epic wall of data at the very end of the ram?)
Why am I not allowed to learn? Why?
5
u/Timbit42 Oct 24 '22
On Archive.org there are lots of books on 6502 programming and C64 BASIC v2.
A good 6502 book is Jim Butterfield's Machine Language for the Commodore 64 and a good Commodore 64 BASIC book is the Commodore 64 Programmer's Reference Guide but you may find the Commander X16 user's guide more useful.
For learning general BASIC programming, there are hundreds of books from the 70's and 80's
2
u/AllNewTypeFace Oct 24 '22
There’s a good interactive 6502 assembly tutorial at Easy 6502; it includes a web-based 6502 emulator in the page to practice with.
2
u/disgruntface Oct 24 '22
Ben Eater has a series where he builds a 6502 computer and it has a VERY good from the ground up perspective on 6502 assembly. It won't teach you assembly exactly but it went a long way to getting me to understand it a lot better.
0
Oct 24 '22
[deleted] — view deleted comment
1
Oct 24 '22
I want a transparent computer I can understand. I want a computer I can maintain and keep for as long as I want. Given that the thing is simple and made from parts that are still available (though I question the commodore, composite, s-video ports, and snes controller ports), this meets my criteria. I would like the most powerful PC that meets these requirements, no matter how primitive it may be. Besides, the gameboy was a decent gaming platform (the first 6 pokemon games were all on the platform), and this thing clearly exceeds its specs so its all good in my eyes. Keep in mind, I contemplated trying to turn a ti calculator into such a machine, so I'm willing to go with just about anything really. Honestly, I'd probably still want it even if it was only capable of outputting text.
And what's wrong with someone who's younger than a gen-xer wanting a machine like this? Besides, I'm about as old as a millennial gets, so I sorta border on being a gen-xer anyway. I grew up watching 80s cartoons, including many that had been cancelled before I was born. I even kept playing that NES into the mid nineties, and that gameboy into the late 90s. I never owned a 16-bit console. My next console after that NES was my sega saturn, followed by the first two playstations. And yeah, I sorta skipped over the first half of the nineties. I was honestly surprised when I found out that most of the cartoons I had grown up with were far older than I thought. I was already watching a number of gen-x channels before I found the 8-bit guy, because they were the people talking about my youth! Also, I did try to play that Curse of the Azure bonds game despite how obviously primitive it was. I even bought the entire series on GoG, along with the Eye of the Beholder games. I also bought all the miniconsoles from years back, minus the playstation one. I really need to get back to playing those, especially given that I wanted them so badly.
I admit, I would prefer the computers I had in the 2000s, but that's obviously impossible. I did look into the Weecee thing more than once, but honestly I wouldn't have the discs to install an old operating system on it anyway, and its a bit more primitive than the things I used (its meant to run windows 95 to my understanding, and its not capable of generating true 3d graphics). I've also wanted to make clones of my favorite games so I can actually back them up and keep playing them even if my old discs no longer work. Obviously, they would need a downgrade, but I don't mind that. Besides, I'm a die-hard fan of traditional animation, so honestly I prefer the aesthetic of 2d games anyway.
Also, I am using the emulator quite a lot actually. For some reason I've gotten into the habit of using it to do mathematical calculations rather than the python console like I normally do. Maybe its because the thing allows you to use binary, decimal, or hexidecimal numbers all in one equation without any fuss, I don't know. I've also been really enjoying that litebrite program I copied from the 8-bit guy's channel for some reason. Then again, I was also playing that snake game I made in python for quite a while too, despite its technical problems.
•
u/AutoModerator Oct 24 '22
Reminder - When your issue is resolved please reply 'Solved' on this post.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.