Let's Make EdVenture #1: Intro -- Coding a Roguelike in Atari 8-bit Assembly

  Рет қаралды 19,706

Mission: Ed Possible

Mission: Ed Possible

Күн бұрын

Ever wanted to write a game on the ATARI 8-Bit? If so, you're not alone! Come along with me on my journey to make a Roguelike on the Atari 8-bit computer in 6502 Assembly language!
00:00 - Intro
01:15 - Why the Atari 8-bit?
03:37 - What do I need to know?
05:37 - Downloading Tools
07:37 - Start Programming
29:34 - It Works!
29:42 - Outro
Socials:
Instagram: / missionedpossible
Twitter: / missionedposs
Facebook: / missionedpossible
Website: missionedpossible.com
Github:
Main Project: github.com/EdSalisbury/edventure
Branch for this Episode: github.com/EdSalisbury/edvent...
#programming #roguelike #atari

Пікірлер: 127
@IntoTheVerticalBlank
@IntoTheVerticalBlank 2 жыл бұрын
More of this, ED! Best, most simple to understand explanation I have seen.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Awesome, thank you!
@ecernosoft3096
@ecernosoft3096 Жыл бұрын
Agreed! Even though I am a seasoned Atari 8bit/7800/2600 programmer, this was AWESOME!
@sajitorio5731
@sajitorio5731 10 ай бұрын
Compute's Third Book of Atari, Mapping the Atari along with ANALOG magazines were a treasure trove of under the hood info.
@MissionEdPossible
@MissionEdPossible 10 ай бұрын
Yup, and thankfully (almost) all of those resources are online now!
@southoftheline6066
@southoftheline6066 2 жыл бұрын
I'm happy I've found this. I'm 18, barely old enough to know Windows XP, much less the Atari, but my first ever piece of retro computing was the Atari. I'm glad to see the torch still bright with these machines.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
That's awesome! Cool to see young people into retro!
@IntoTheVerticalBlank
@IntoTheVerticalBlank 2 жыл бұрын
Limitations foster creativity. If you tried to do this on a modern platform, you'd run into "decision paralysis" because there are 100's of ways to do the same thing with no limitations.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
I couldn't have said it better myself!
@not_herobrine3752
@not_herobrine3752 8 ай бұрын
with some of the paralysis coming from communities trying their hardest to convince people to do anything but assembly
@MissouriMatt54
@MissouriMatt54 2 жыл бұрын
Thank you for a very straightforward tutorial to starting to use Assembly language.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Glad you liked it!
@imranonthenet
@imranonthenet 8 ай бұрын
I love your videos, thanks for the great effort and hard work you have put into making these videos and you have explained assembly language programming in such a simple and easy to understand way that beginners like me can follow along easily. I had an Atari 800 XL almost 35 years ago when I was in Grade 7 and I learned programming in BASIC and that is what got me into programming and I became a professional software developer because of Atari. Please keep up the good work.
@MissionEdPossible
@MissionEdPossible 8 ай бұрын
Thanks so much for your message! Yeah, starting in BASIC started me on my career as well. I wish we had had the resources we have now - it would have been amazing to be able to look stuff up! Oh well, we have the internet now and can relive the glory days with that benefit!
@renecura
@renecura 2 жыл бұрын
Finally a really step by step guide with magic jumps. I am preparing to follow on the nexts episodes.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Glad you enjoy it!
@robertwest7633
@robertwest7633 Жыл бұрын
Exactly where I'm getting into this except with the Apple and the Commodore. Had the c64 as a kid and never learned assembly. Now, I've got the itch.
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Make something! Be sure to share with the class if you do!
@edwinjacobellis4852
@edwinjacobellis4852 10 ай бұрын
Finally the alg kicks me what I’m looking for haha
@MissionEdPossible
@MissionEdPossible 9 ай бұрын
Awesome! Glad you liked it!
@nickfifteen
@nickfifteen 2 жыл бұрын
8:00 "it's usually a pun on my name" So your name is "Venture"?? That's so cool! 😉 Lol jokes aside, I'm SO STOKED to find this video series! I've downloaded copies of books like _Atari Roots, Programming the 6502,_ and _Machine Language for Beginners_ ...but having a modern video like this to help supplement books written back then absolutely helps balance things out. Keep it up, you're doing God's work here!
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks for watching! I've read/skimmed through a lot of those books, but I've had issues in one way or another. One of the reasons I created this series was to help people figure this stuff out, and maybe not run into the same issues that I did.
@Mrshoujo
@Mrshoujo 7 ай бұрын
Had I known the difference between the use of the X and Y registers in regard to indexed addressing, I wouldn't have taken so many hours to figure out why my machine language subroutine for checking the screen wasn't working. I forget how I figured it out, but I eventually did.
@MissionEdPossible
@MissionEdPossible 7 ай бұрын
Yeah, this one had me scratching my head a bit at the beginning as well. It would be nice to be able to use either register in either manner, but alas, we cannot.
@marcinjozwikowski
@marcinjozwikowski 2 жыл бұрын
Great idea for a tutorial! I wanted to start writing in ASM myself for some time now and I'd be very glad to have someone more experienced in the subject to follow!
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
I'm no expert, but I know enough to be dangerous! :)
@rodmccall4881
@rodmccall4881 2 жыл бұрын
Thanks, this is about the best youtube intro to ASM on the ATARI I have seen. You explain it all very clearly.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Wow, thank you!
@ToddTrann
@ToddTrann 2 жыл бұрын
If you swap Atari for Commodore VIC-20, I am in a similar position. I learned how to program in BASIC on the VIC-20 in 1983, but was always envious of programmers who learned machine language. I'll gladly follow you on this journey, good job dude.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks for the comments!
@garypinkett6275
@garypinkett6275 2 жыл бұрын
Ed, that was awesome mate. Keep making them! I've never done any 6502 assembly and I love Roguelikes so this is super interesting to me.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks, will do!
@csgowoes6319
@csgowoes6319 2 жыл бұрын
So many feels from programming the C64 back in the day - I can actually remember this stuff! Just wish I had got more advanced at the time, mostly I was just messing around hacking other people's code, there weren't any resources around like there are now so I didn't know how to take it to the next level. Looking forward to the series.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Yeah, imagine if we had the internet back then!
@nickpasch1019
@nickpasch1019 2 ай бұрын
The OSS ACTION! Language gives a close to bare metal experience and most of the speed, but is a higher level language and is easier to code. It has a Run-time package so it can be run on any machine with sufficient memory.
@MissionEdPossible
@MissionEdPossible Ай бұрын
Yup, there's tons of alternatives that can get you there, but I wanted to actually program in ASM.
@Pec3t
@Pec3t 2 жыл бұрын
Wow, best asm tutorial I've ever seen. I can't believe it can be that easy!. Thx a lot.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks so much!
@phil2768
@phil2768 8 ай бұрын
Loved this video, great content - we need more of this! I've never properly written anything in 6502 asm but have and have browsed and read through lots of books on it for various 8 bit machines (BBC Micro and C64). Of the 6502 based machines I have an Atari 800xl, Atari 2600, Commodore 64 and BBC Micro (plus various Z80 based machines) - I bought them with the main purpose of writing games, in assembler and learning about these machines to fully understand (as much as possible) how computers work at the fundamental levels - unfortunately I've really had time to get around to actually writing a game (my main goal!). The BBC Micro Model B is a nice machine because it has a built in assembler that allow 6502 assembly language to be written within BASIC - it's very powerful because, for example, you can define variable in BASIC and use those in the Assembler. Saying that, being able to use VS Code to edit and have 6502 assemblers in Windows that can pipe directly to an emulator is awesome.
@MissionEdPossible
@MissionEdPossible 8 ай бұрын
Thanks so much! I would like to check out some of the other 8-bit platforms eventually - I've done some dabbling, but not the BBC yet.
@bledband
@bledband 2 жыл бұрын
Keep the tutorials coming Ed! Amazing content
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks! Will do!
@tonualt2683
@tonualt2683 Ай бұрын
Marvelous contribution, thank you.
@les2arbreself645
@les2arbreself645 2 жыл бұрын
Thanks for this. Need more !
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks, more coming soon!
@trickysoft
@trickysoft 2 жыл бұрын
It is great to see a 6502 assembler video series, I imagine it took many hours to put together. The BBC Micro is my machine of choice and because BBC BASIC had a built in assembler, it can look different to assemblers. Because mixing assembler and basic to generate assembler and data was so great, think c-pre-processor + templates; we have beebasm which does everything in one including tokenizing BBC BASIC programs to include with the assembler files to make a disc image in a single step! There is syntax highlighting and a beebasm plugin for Vs code.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks! At some point, I will have to check out the "Beeb" - I don't think I've ever even seen one, to be honest. We didn't have them in the states.
@trickysoft
@trickysoft 2 жыл бұрын
@@MissionEdPossible you did get the beeb briefly and it included speech :) take a look in the shop in Electric Dreams :) When you see a beeb, think how long it took to get it through radio emission testing with a meter long cable attached to each port!
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
I actually don't think I've seen it - will add it to the queue!
@CallousCoder
@CallousCoder 2 жыл бұрын
Cool channel Ed! I did/do a lot assembly, as you can also see in my channel. But I’m new to the Atari when it comes to player missile sprites and sound. So I’ll follow along here!
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Awesome! I checked out your channel - I love your intro! :) Future collab? :)
@CallousCoder
@CallousCoder 2 жыл бұрын
@@MissionEdPossible hi! Thanks, I watched upto episode 7 of your Atari game. I learned a lot display lists, character creation. Very cool and different approach compared to C64. I laughed when you accidentally type $0400 as framebuffer address, was that a Freudian slip? 😂 I’d love to do a collab at some point. Currently my channel activities are a slow. Lot of work and other projects but when Fall comes I’d definitely see me doing more things. So we can then see what we can do together. Sounds like fun! Keep up your awesome work!
@kraftwerk974
@kraftwerk974 2 жыл бұрын
Great tutorial mate 🤙. I can't wait to go through the rest of them. For newbies I would anyway recommend to first get familiar to a certain extend with the 6502 assembly and the Atari architecture. Thanks for posting.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Agreed - I didn't really have a "you must know the following before starting this" blurb at the beginning, but I figured if you've done a little bit of poking around with ASM or Ataris then you'd probably have enough info.
@gridleaderretro
@gridleaderretro 2 жыл бұрын
This is really valuable content Ed. Looking forward to seeing how this progresses!
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks! I look forward to making it! :)
@fatmanslim6591
@fatmanslim6591 2 жыл бұрын
This is a great idea! I had an 800XL back in 1984 but only ever programmed it in BASIC. I've watched up to Ep 6. but now I'm re-watching with WUDSN installed and following along 🙂 Hope you keep this going and we get to a playable game by the end.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks - that's the idea! Hoping to have something playable real soon!
@kjrl818
@kjrl818 Жыл бұрын
Amazing details. I know a bit about 6502, not really any x86. but keep up the good work. also don't end up being one of those 8 bit retro youtubers that disappear off youtube. I'd love to see if you can make a ms-dos game with x86. anyways awesome content.
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Not planning on dissappearing :) We have a lot more stuff planned! We're glad you're enjoying the series!
@goofyrulez7914
@goofyrulez7914 Жыл бұрын
I'm very familiar with CDP-1802, Z-80 and 6800 assembly but, somehow, I never did 6502. Thank you for the video, it's very interesting.
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Thanks!
@markstrickland438
@markstrickland438 2 жыл бұрын
Great video! Thank you!
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
You're very welcome!
@Plastron100
@Plastron100 2 жыл бұрын
You can start code from page 6 i.e. $600 looking forward to this i forgot so much hopefully this will remind me and who knows might write something again :-)
@Plastron100
@Plastron100 2 жыл бұрын
from mapping the Atari Page six: 256 ($FF) bytes protected from OS use. Page six is not used by the OS and may be safely used for machine language subroutines
@SyntheToonz
@SyntheToonz 2 жыл бұрын
On real hardware DOS may be in memory from Page 7. I's a good idea to start after DOS 2.0 at $2000. ( The Disk Utilities Package may also in memory from $2000 to $3306, but the system doesn't usually have complaints when an executable loads over DUP.)
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
@@SyntheToonz Thanks for the clarification Ken! I had heard that $2000 was a good place to start, but didn't have a definitive answer :)
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
@@Plastron100 Thanks for the comments, Andrew!
@klr607
@klr607 2 жыл бұрын
Nice video. I really enjoyed it.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thank you very much!
@eugenetswong
@eugenetswong Жыл бұрын
Hi, Ed. Thanks for this. I definitely am interested in more. I'd love to be able to make a 4 or 5 player game for the Atari 400/800. The 5th player can play on the keyboard.
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Do it! Be sure to share it!
@GregGallardo
@GregGallardo 2 жыл бұрын
Nice! I'll be watching.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Thanks, I appreciate it!
@VinsCool
@VinsCool 2 жыл бұрын
Cool, I've been learning 6502 ASM lately and this is very interesting to watch!
@VinsCool
@VinsCool 2 жыл бұрын
Okay watched the video in full now, I like how I was able to follow along, and pretty much have figured out this stuff on my own already. Printing text wasn't very difficult once pointer basics were covered :p
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Be sure to call out stuff if I miss anything! Glad it was helpful!
@VinsCool
@VinsCool 2 жыл бұрын
@@MissionEdPossible sure thing! For now I am waiting for what is next :) I already have most of the basics figured out, but it will be nice to revisit anything I may have missed since the last couple months
@FD-ze1xg
@FD-ze1xg Жыл бұрын
Great!!
@imranonthenet
@imranonthenet 8 ай бұрын
Thanks!
@MissionEdPossible
@MissionEdPossible 8 ай бұрын
Thank you so much for the Super Thanks!
@1stacbats
@1stacbats Жыл бұрын
Nice tutorial, did you do another video on setting up VS code for mads? Ive struggled
@MissionEdPossible
@MissionEdPossible Жыл бұрын
So, there's not much that I do with VSCode to require "setup", as I don't really use much in the way of intellisense-type stuff (it usually just gets in my way) - What specifically are you trying to do?
@1stacbats
@1stacbats Жыл бұрын
@@MissionEdPossible thanks for responding. I was struggling yo get the emulator to work. But found a workaround…im using the WUDSN ide with Atari800 emulator. Works fine. I can carry on with your lessons 👍🏻. Appreciated
@philtoa334
@philtoa334 Жыл бұрын
So interesting : )
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Glad you think so!
@ric8248
@ric8248 Жыл бұрын
My word this is so exciting! I'm all set up for the journey, but unfortunately nothing seems to work on the Terminal for me. I have VC Code, MADS and Altirra. Intellisense is working for MADS in VS Code which is great, but I just need that extra step to test what I'm doing. I searched for it but couldn't find even one setup video or article anywhere. I hope you can a hint or a link to a hint in your next video!
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Will be addressing it in the next video, which will be very soon!
@ric8248
@ric8248 Жыл бұрын
@@MissionEdPossible Thank you so much Ed! 🙌
@damienthorn2917
@damienthorn2917 2 жыл бұрын
same boat here.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Welcome to the boat! Keep your arms and legs inside the boat at all times!
@proxy1035
@proxy1035 Жыл бұрын
i know it's an older video, but i just wanted to as if there was any specific reason to use MADS over something more common and open source like ca65? you can even install ca65 as an extension in VSCode directly, so you don't need to download anything extra.
@MissionEdPossible
@MissionEdPossible Жыл бұрын
It was the one that I saw referenced a couple of places, so I went with it. I'm not familiar with ca65, would have to explore. One thing that is a bit offputting for newbies is all of the different flavors there are.
@proxy1035
@proxy1035 Жыл бұрын
@@MissionEdPossible hmm that's interesting, from what i've seen online pretty much the entire NES development community jumped over to ca65 years ago. the "nesdev" website (which is like the main knowledge hub about making games on the NES) even has a tutorial section that shows how to set up cc65/ca65 with examples and such. so i'm honestly really surprised that you never came across it or even heard of it while preparing/making this series. also what do you mean with flavors?
@MissionEdPossible
@MissionEdPossible Жыл бұрын
@@proxy1035 Well, I havent looked at NES development at all, so that might be why... :) as for flavors, there are many different syntax conventions, depending on the assembler. The atari 8-bit had 3+ different assemblers that were popular, and all have different syntax.
@proxy1035
@proxy1035 Жыл бұрын
@@MissionEdPossible oh shit i'm so sorry! i completely forgot what i was replying to and thought this was the series i was watching on NES gamedev. anyways ca65 follows the 6502 standard set by MOS pretty well. since it's modern it's a lot less restrictive in terms of formatting (i know a lot of old assemblers have archaic limitations like certain amount of characters per line, not allowing instructions at the start of a line, or other white space non-sense) also marcos! they're pretty damn powerful and useful to abstract away often used pieces of code without using function calls. overall i'd recommend checking it out. and again i'm sorry for confusing this series with the NES one i was also watching
@MissionEdPossible
@MissionEdPossible Жыл бұрын
@@proxy1035 lol no worries! The archaic stuff is what I was meaning by "flavors"... As for macros, I know and love them!
@Plastron100
@Plastron100 2 жыл бұрын
I also have a question i have an .atr file which is just a copy of a work disk from back in the day is there any way to open these in the editor you use in this demo. Its the full work disks for the game Plastron
@SyntheToonz
@SyntheToonz 2 жыл бұрын
ATR files can be mounted as disks in the Altirra emulator. Assuming you have an ATR of a bootable Atari DOS disk, it will boot from the ATR like a floppy. And from there you can use DOS and treat it like a regular disk. (do directory listings, rename files, copy to other disks, even format.) Addiitonally, the emulator supports the H: device which is a "Host" disk -- a directory on the PC that the emulator will treat as a disk -- a really, really big disk. So, from the emulator you can copy files from the mounted ATR to the H: "disk" and then on the PC you can use whatever utilities you like look/edit the files.
@Plastron100
@Plastron100 2 жыл бұрын
@@SyntheToonz thanks for the reply the atr file boots to dos as ramdisk i set H1 to a folder but if i use j to copy disk it only allow D not H as a drive any help appreciated
@SyntheToonz
@SyntheToonz 2 жыл бұрын
@@Plastron100 H: is only "disk"-like. DOS doesn't recognize H: as a sector disk the way a D: device works. So, you can't format H: from Atari DOS or do a disk sector copy to H: (option J) . You should be able to copy files using the C option in Atari DOS to copy the files on the ATR disk. I think it should allow copying from D:*.* to H: and would copy all the disk files. It should also be able to copy from a named file on H: (H:file.ext) to D: Also, If I recall correctly there is an ATR image viewer in Altirra. I think maybe it allows copying files to/from an ATR image. I had not used this in a while, so I'm not certain.
@Plastron100
@Plastron100 2 жыл бұрын
@@SyntheToonz Thanks it try's but give error 135
@SyntheToonz
@SyntheToonz 2 жыл бұрын
@@Plastron100 You get that error trying to copy to or from the H:? or the ATR file as D:?? 135 from DOS is == Attempted to write to a read-only device. So, if this is writing to the ATR then the ATR file is being protected. If this is writing to H: then the directory configured for H: is protected. The protection could be in the PC itself -- attributes on the actual files/directory. OR maybe it is in the configuration for Altirra to prevent writes.
@jadn_6801
@jadn_6801 2 жыл бұрын
great video but i dont know how to add mads or altirra to the path and I couldn't find out how online, could you help with that? edit: nvm I figured it out
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Heh, in case you still need it, here's a guide for windows: www.architectryan.com/2018/03/17/add-to-the-path-on-windows-10/ Thanks for the comment!
@hrivis
@hrivis Жыл бұрын
Can you describe how? I set ENVIROMENT VARIABLES for user and for system mads to C:\MADS\mads.exe, but even after restart it didint work :( I downloaded Visual Studio setup for user. Did I miss anythink?
@stRing-Agenda
@stRing-Agenda Жыл бұрын
@@hrivis I would also need help here, so simple tutorial for ex. Windows 8.1 would be great idea :)
@hrivis
@hrivis Жыл бұрын
@@stRing-Agenda i typed instead of mads full path like C:\\path\to\mads
@paulbraun5657
@paulbraun5657 11 ай бұрын
Very interesting! Very complicated installation as well. Unfortunately, in the installation you only cover Windows. I'm using macOS. After downloading all the software you suggested, I couldn't get this program to assemble at all! I may have to copy the downloaded Assemblers to a particular location on my Mac, but I don't know where. They didn't look suitable for Applications. I was typing it all in to VS Code apart from the first few comment lines you used. I tried selecting all the Run options from the VS Code Terminal Menu, but nothing worked. Later on, I found it was possible to enable extensions from inside VS code, so I selected MADS from there, it installed but it still wouldn't work from the Terminal Menu, or the built in Terminal window, which gave me the prompt "dquote>". I even installed the Atasm Altirra Bridge extension, but still nothing. Not even an .obj file. Eventually, I found and installed a DASM extension. After that, I found that all my 6502 instructions in the main editor were underlined with jagged red lines, as if it doesn't understand them! Now I can't turn this off even after disabling DASM! I copied the Assemblers into Applications, then tried again. My 6502 instructions are still underlined as errors. I don't know what I can try next, except my Atari800 emulator with the Atari Assembler Editor or one of the other similar Assemblers in the collection on a Raspberry Pi.
@MissionEdPossible
@MissionEdPossible 11 ай бұрын
So, first off, you'll definitely want to use MADS if you want to follow along. There are different flavors of assembly, and, while they can be translated between them, it can be a bit rough. I would say that the best bet would be to install WUDSN, or at least the assemblers from there, as they should have them compiled for macos. www.wudsn.com/index.php/ide/installation#InstallingAssemblersAndCompilers - Even if you aren't going to use Eclipse, this is probably the easiest way. As far as VS Code goes, I use very little in the way of integrations. I run the assembler and the emulator from the command line, which is the easiest method I've found. Yes, there's a way to hook it up to a button in VS Code, but I haven't tried, TBH. If you're still having a specific issue, please post it and I or someone else in the community can help!
@paulbraun5657
@paulbraun5657 11 ай бұрын
@@MissionEdPossible I'm afraid the installation for macOS is different to Windows. I can't stand to use Windows any more. I installed all the Assemblers by clicking on the link. I remember you installed the Assemblers from the link by copying them too quickly. It seems you installed them to the root of the C: drive. When using the macOS Terminal and typing "mads main.asm" it just says "zsh: command not found: mads". When using a Terminal window under Visual Studio Code it also says "zsh: command not found: mads". It looks like I need to add mads to the Terminal by adding a path to it. This may be by typing "“export PATH=< newpath >:PATH” where < newpath > is the path I want to add. Apart from all of this, you said that the MADS Assembler is an extension to Eclipse. Where exactly does Eclipse come into all this? I've installed Eclipse, but all I've been doing is inputting code using Visual Studio Code and sometimes trying to compile it using the Terminal using "mads main.asm", as well as sometimes from menus in Visual Studio Code. Is it running in the background? Am I supposed to run it, then run VS Code IDE? All of this seems more complicated than it needs to be. It looks like the classic Atari 8 bit Assemblers installed on an emulator such as Atari800 running on the Raspberry Pi would be much easier. I already know that lots of instructions must be indented otherwise you got ERROR 6 in the Atari Assembler Editor. The syntax of other native Atari 8 bit Assemblers looks very similar, and one of them even contains the same prompts as the Atari Assembler Editor.
@firstdingus
@firstdingus Жыл бұрын
Why didn't you use 'ed' to edit the files?
@MissionEdPossible
@MissionEdPossible Жыл бұрын
Because I'm not *that* masochistic! I have used ex in the past, and use vi quite a bit though!
@billchatfield3064
@billchatfield3064 2 жыл бұрын
You can make Eclipse black just like VSCode. That's why people like VSCode, right? Because it doesn't have the functionality of a real IDE like Eclipse. Haha.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Dark mode isn't the reason -- it's all personal preference, really. You can use Eclipse, Notepad, vi, whatever :)
@MrDarchangelomni
@MrDarchangelomni 5 ай бұрын
ED not to gripe but your VERBAL explanation of indirect addressing was a bit, clumsy (Your on screen breakdown was beautifully understandable), sorry but I could have lied to you and you would never have gained this feedback from which to grow. Sometimes it is easier to show a thing then say a thing, but maybe some of my ramblings will help. DIRECT vs INDIRECT ADDRESSING (BY VALUE OR BY REFERENCE) (DATA OR POINTER) Generally the same thing, and for a beginner, one of the biggest learning turnoffs possible if explained poorly. In CODER speak Indirect addressing means, sending a register or memory location, the address to another location, and the number of nested symbols "()" indicates the number of redirections... In NOOB duhspeak Direct Addressing = a mailbox you own, with your letter in it being directly accessible... Indirect Addressing = a post office box with an address inside forwarding any requests for letters to the Direct address of your mailbox and letters. Why this is important: Many Reasons... The most immediate being say you want to send many letters without giving each its own address, Provide a forward address (VARIABLE = HELLO) then each time we share that address to our Screen Memory, all we do is update which letter is associated with the address, so the correct letter is referenced. The Screen knows to check the address for rather than the content of the address for what to display... If not you would just get "hhhhhhhhhhhh" If you have a program with one "main" purpose, but to make it readable and easy to use, you construct it of many subroutines you will have to share data from your main to your subs and sometimes your subs will have to update the data that the main or other subs use... It is like a Main Contractor, he has the blueprints, and knows what order things must get done in, but he hires sub contractors and coordinates/schedules them. The Main Contractor sometimes has to share information with his subcontractors from the blueprints, but a plumbing guy, doesn't need the electrical guys info, but the framing guy needs 3 - 4 different types of info from the plumber and electrician... But if each subcontractor was sharing the master plans, as plans were updated when other subs needed them they would get a copy that has been modified by an unrelated sub... so sometimes if the plan applies to everyone, we share it globally by a direct copy, that is updated and shared the entire time, other times we share a copy by reference a pointer to the original unmodified information that is used by one sub then discarded once the task is complete and the job returned to the main. Never again seen by the main or any other subs and will not interfere with their needs. In old times, these copies of shared variables would accumulate in memory, and eventually cause overflow, so the programmer would also have to trash collect and return the memory used by his variables, but nowadays the compiler and runtime OS handle memory management.
@MissionEdPossible
@MissionEdPossible 5 ай бұрын
Thanks so much for your comment! Hopefully your explanation will help others!
@MrDarchangelomni
@MrDarchangelomni 5 ай бұрын
@@MissionEdPossible I figured the feedback would help you become better at verbally explaining things as well. (I suppose I suck at it too, If you did not get that understanding :))... I had a great teacher in my first year but he ended up having prostate cancer, and second semester we started protected mode memory reference and api pointers... He gave a dirty and quick explanation, and although I could write stuff that properly used variable reference, I did not have that innate almost "eureka", intuitive understanding what was really happening to the signals inside the cpu... I found an old language IDE in my 30's called PowerBASIC, well I was following an example tutorial, on how to use inline assembly routines, and the original programmer was excellent at code documentation... I gained more insight in my 30's following an outdated programming example in an environment that ran under DOS, just by using his REMarks next to each line, than I ever did during my EDU... He had turned the entire program remark scheme into a post office, and the by value/by reference metaphor lit a fire in my mind... I hope you do that for people, and that I can help you reach more people. There would be world peace, If we but understood each other... - me
@papinkelman7695
@papinkelman7695 2 жыл бұрын
Background noise is making it unwatchable 👎🏻
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
Sorry that you had a hard time hearing, I didn't think it was that loud, but thanks for the feedback!
@BellaLugoshi
@BellaLugoshi 2 жыл бұрын
hello, finally i got to setting up my laptop to repeat the tutorials myself. I missed everything, installed, configured. I got the hello.obx file and ran altirra /singleinstance hello.obx - in the end I only get a black screen of the emulator, what should I do? Altirra 4.01
@BellaLugoshi
@BellaLugoshi 2 жыл бұрын
I'm sorry to bother you, I found a problem - the system firmware image was not correctly selected in Altirra. Now everything works great.
@MissionEdPossible
@MissionEdPossible 2 жыл бұрын
That was actually going to be one of my questions -- 1. what are the settings, and 2. does it work with other stuff? Glad you got it working!
Advanced 6502 Assembly Programming for the Apple II
33:44
Stephen Edwards
Рет қаралды 26 М.
I Built a Shelter House For myself and Сat🐱📦🏠
00:35
TooTool
Рет қаралды 15 МЛН
Ну Лилит))) прода в онк: завидные котики
00:51
Atari 2600 Programming is a NIGHTMARE
15:38
Truttle1
Рет қаралды 12 М.
How to Make A Roguelike in One Day
3:17
Miziziziz
Рет қаралды 370 М.
How we fit an NES game into 40 Kilobytes
12:04
Morphcat Games
Рет қаралды 3,5 МЛН
6502 Assembly Language: Getting Started
45:43
TokyoEdtech
Рет қаралды 30 М.
BEST NEW ATARI 2600 GAMES!
12:22
Captain Jack
Рет қаралды 22 М.
I Tried to make a Roguelike in One Month - Devlog
10:49
GingerNingerish
Рет қаралды 105 М.
Making My Own Programming Language and Coding a Game in It
10:19
AstroSam
Рет қаралды 1,2 МЛН
Making a Game With C++ and SDL2
8:14
PolyMars
Рет қаралды 1,6 МЛН
I Built a Shelter House For myself and Сat🐱📦🏠
00:35
TooTool
Рет қаралды 15 МЛН