Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411423 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 12:12:04 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityTownhallForum IssuesArchived subforums (read only)TutorialsBeginners' assembly programming (Complete series)
Pages: [1]
Print
Author Topic: Beginners' assembly programming (Complete series)  (Read 3263 times)
voidSkipper
Level 2
**


View Profile
« on: July 12, 2016, 04:39:39 PM »

I don't know if giving my mad science software engineering a purpose somehow devalues it in some way, but I thought it'd be nice to make some assembly tutorials for the absolute beginner.

Foreword
Being able to write assembly is not a necessary skill to become a game developer, or even a game programmer. In this day and age, compilers work well enough that bytecode-level black magic is more likely to confuse your workmates than it is to improve any aspect of your algorithm.

However, in my opinion, there is no better way to understand how a computer really works than getting as close to the hardware as you can. Assembly is just one step away from writing your program's .exe out in raw 1s and 0s - and if you can write assembly well enough there's no reason you couldn't do just that. With an understanding of assembly, you'll likely find yourself stumped by cryptic error messages, strange crashes, and code structures that "should work but don't" a lot less often.

With that in mind, I've started writing a series of tutorials on assembly programming. All of these tutorials use my virtual console, VO-EM. No paid software or licenses are required.

I'm very interested in getting feedback on these - despite being employed as a teacher I'm often told I'm terrible at explaining things.

Index
A Series (Beginners)

Z series (lol)
  • AX - Hello World Tying it all together with a Hello World tutorial! (May be a bit advanced for most at this stage; still filling in the gaps)
« Last Edit: September 08, 2016, 11:48:12 PM by voidSkipper » Logged
voidSkipper
Level 2
**


View Profile
« Reply #1 on: July 15, 2016, 12:29:22 AM »

Updated with a new tutorial - the iconic Hello World!

http://wiki.vo-em.com/index.php?title=A3_-_Hello_World
Logged
oahda
Level 10
*****



View Profile
« Reply #2 on: July 15, 2016, 02:56:07 AM »

Nice initiative! Might have a peek later. Probably won't need it, but can't say no to knowledge. Hand Thumbs Up Left
Logged

ProgramGamer
Administrator
Level 10
******


aka Mireille


View Profile
« Reply #3 on: July 15, 2016, 07:10:42 AM »

How many horizontal sprites before things start blinking?
Logged

voidSkipper
Level 2
**


View Profile
« Reply #4 on: July 16, 2016, 12:07:34 AM »

Nice initiative! Might have a peek later. Probably won't need it, but can't say no to knowledge. Hand Thumbs Up Left

Hopefully it's educational for you!

How many horizontal sprites before things start blinking?

To be honest, I haven't stress-tested sprite rendering yet. There's no 'hardware' reason it should start wigging out if you put too many sprites per line like older consoles used to, but I may have to introduce one if too many sprites causes it to start dropping frames.

Logged
yuuta
TIGBaby
*


How many apples does it take to elephant?


View Profile WWW
« Reply #5 on: July 16, 2016, 02:01:16 PM »

I did everything up to A3, too complicated for me Shrug
Logged
voidSkipper
Level 2
**


View Profile
« Reply #6 on: July 16, 2016, 08:56:22 PM »

I did everything up to A3, too complicated for me Shrug

Thanks for the feedback Yuuta - a few people have told me know that the jump in difficulty is too high. I really wanted to get "hello world" done early for traditon's sake, but I think I'm going to have to add some intermediate steps.
Logged
voidSkipper
Level 2
**


View Profile
« Reply #7 on: July 18, 2016, 10:50:40 PM »

Updated with three new tutorials!
>A3 - Exploring the Assembler
>A4 - Saving & Loading
>A5 - Calling subroutines

"Hello World" has been moved to "AX"; it will now be last, or at least much later, in the A series of tutorials.
Logged
voidSkipper
Level 2
**


View Profile
« Reply #8 on: July 19, 2016, 09:17:56 PM »

Updated with two new tutorials!
>A6 - Input & Interrupts
>A7 - Input & Interrupts Pt II
Logged
voidSkipper
Level 2
**


View Profile
« Reply #9 on: September 01, 2016, 06:57:36 PM »

Updated with a new tutorial!
>A8 - Introduction to Computer Graphics
Logged
voidSkipper
Level 2
**


View Profile
« Reply #10 on: September 08, 2016, 10:41:50 PM »

Added the final A series tutorial:
>A9 - Drawing to the Screen
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic