Assembly Programming Using Commodore 64 Kernal Routines

Published 2024-07-05
In this episode, we use the Commodore 64 KERNAL routines and create some interesting effects on the screen with just a few lines of Assembly code. Even if you don't know how to program assembly, don't worry, part of the video is dedicated to explaining the basics of assembly programming.

☕ If You like this video you can buy me a coffee: ko-fi.com/josipretrobits

INDEX:
======
0:00 - Intro
1:08 - Demo Assembly code
1:46 - Assembly language Basics
12:55 - Writing first Assembly code
20:46 - C64 Memory Map and Kernal Routines
27:45 - Example no. 1
30:50 - Example no. 2
34:28 - Example no. 3
38:43 - Example no. 4
39:31 - Example no. 5
44:36 - Example no. 6
49:29 - Example no. 7
53:58 - Example no. 8
55:13 - The End

SOURCES CODES:
==============
github.com/josipk/Commodore64/blob/main/C64_KERNAL…


CHECK OUT:
==========
‪@8BitRetroReFix‬
‪@CaptainCommodore‬
‪@Retro4u‬
‪@8bitsinthebasement‬


CHECK OUT MY OTHER COMMODORE/ACORN VIDEOS:
==========================================
🕹️ Commodore 64 Programming:    • Commodore 64 Programming  
🕹️ Commodore 64 Hardware Videos:    • Commodore 64  
🕹️ Commodore 64 Plus/4 Videos:    • Commodore Plus/4  
🕹️ Acorn Electron Videos:    • Acorn Electron  
🕹️ Commodore 64 Games and Demos:    • Retro Games and Demos  
🕹️ The Pong Game Projects:    • The Pong Game Projects  

#c64 #kernal #assembly #programming #retrocomputing #demo #visualeffects #assemblylanguage #commodore64 #routines

All Comments (21)
  • When I did programming on my C--64, I used BASIC a lot, much faster to write software, but I also used assembler a lot too, because BASIC would be way too slow for certain things, so I mixed both, I did BASIC and assembly for some routines and embedded those routines in my BASIC program through the SYS command. I did some pretty impressive and fast BASIC stuff this way - It was very useful for BASIC programs with background stuff, through the use of interrupt routines in assembler.
  • @macdaddyns
    Really like your style of teaching, thanks for sharing your knowledge and time!
  • Haha, wow, interesting way to write an ML assembly: using a BASIC listing as your playground (but then still having to have the underlying programmer assemble it).
  • I imagine discovering RunStop/Restore is going to change your life. I can't imagine not having that available! It was essential in my experience. ProTip: sharp quick taps on the Restore key. It's weird that speed of tap can make a difference sometimes but it really does. Gotta be in how downside transition of the signal generates the NMI.
  • @RudysRetroIntel
    Excellent video and work! Thanks for sharing all your knowledge
  • @PeranMe
    This is like ”stupid pet tricks”, except a generation or two later :-) Lots of fun stuff, thanks for this, I enjoyed it a lot!
  • @byteforever7829
    Excellent video! I like the Mikro assembler as well, i'm definitely going to try that soon
  • @Ferrie123
    Very well explained 👍 enjoyable stuff ❤
  • @wadz668
    Programming definitely is a LOT of fun. I find it more fun than playing games
  • @wolfman946
    Interesante información sobre Commodore 64
  • @m0nde
    very well explained
  • @TheUtuber999
    19:50 I would probably use JSR $FFE4, then BEQ LOOP. That way you can exit by pressing any key. 31:03 This effect only works on PAL C64s. On NTSC machines, it just displays somewhat random garbage.
  • @CDP1861
    My first computer had a hex keypad and allowed to enter machine code directly. No assembler needed. A rough start, but after that you are afraid of nothing anymore 🙂
  • @AngryCVO
    As an ICT-professional, also very interested in retro-computing, I see many videos about different computer & network stuff on youtube and other media. I must say that this one is amazing. You explain this in a professional way. Lots of video's have lots of hesitating as if the teacher sees what appears on his screen for the first time. Not in your case. You master the knowledge perfectly. This video gave me lots of ideas and teached me stuff I was looking for. Thank you very much.