Wishing everyone a Merry Xmas and a Happy New Year!

Firstly, I'd like to take this opportunity to wish you all the best this Christmas!

I hope retro-santa brings you all the Xmas Pressies you're hoping for, and you have a generally fantastic holiday!

This Xmas vacation, I'll be working on the planned MIPS tutorials for next year, and also doing the finishing touches to my second book, which is planned for release around February 2022.

At the moment I'm currently doing the Sprite Clipping tutorials, but I'll also be starting the 'ChibiTracks' music tutorials next year, and I'll be putting more work into my tracker software over the Xmas vacation, specifically testing it with a variety of weird and wonderful MIDI controllers!


Below are some of the recent videos which have been uploaded to the ChibiAkumas Youtube channel

Lesson P44 - The NES Zapper!
The NES has a Lightgun… it detects light, and is also a gun! Let's lock and load, and learn how to zap us some chibis!
[Documentation] [Video]


6502
6502 Lesson S20 - Sprite Clipping on the BBC [BBC]
We've looked before at drawing a bitmap to the screen, but there's a challenge! For many games we'll need to be able to draw sprites that are 'partially off' the screen, We'll clip off the offscreen part. Lets look at the upgraded code.
[Documentation] [Video]
[BBC]

6502
Lesson S21 - Sprite Clipping on the C64
Sprite Clipping on the C64 - 6502 Assembly Lesson S21
[Documentation] [Video]


6502
6502 ASM - Lesson S22 - Sprite Clipping on the VIC-20 [VIC]
We looked last before at using custom characters to draw a bitmap 'sprite' on the screen. This time we'll extend the example, and add the ability to 'clip' the sprite so it can partially go offscreen.
[Documentation] [Video]
[VIC]

6502
Lesson S23 -Sprite Clipping on the Atari 800 / 5200 [A52] [A80]
Lets port our sprite clipping routine to the Atari systems, We'll 'upgrade' our previous sprite routine, so it can crop the sprites so they are partially offscreen.
[Documentation] [Video]
[A52] [A80]

6502
Atari ST- ASM PSET and POINT for Pixel Plotting - Tron Clone - Lesson Photon2
No Description Available
[Documentation] [Video]


68000
Amiga - ASM PSET and POINT for Pixel Plotting - Tron clone Lesson Photon3
No Description Available
[Documentation] [Video]


68000
Amiga Sprite Blitting and Interleaved bitplanes (68000 Assembly Lesson P37)
No Description Available
[Documentation] [Video]


68000
Lesson P38 - Mouse Reading on the Genesis
Lets look this week at that rare species of rodent… The Genesis Mouse! The mouse connects to the standard ports, and with the right commands, we can get mouse movements from it!
[Documentation] [Video]


68000
Lesson H4 - Hello World on the Dragon / Tandy CoCo [DGN]
Last time we took a look at printing characters in text mode. This time we'll take a look at a bitmap function which will use a 1bpp font, and convert it to 2bpp (4 color) graphics mode.
[Documentation] [Video]
[DGN]

6809
Lesson M1 - Random Numbers and Ranges
Let's write some simple routines we may need in a game!
[Documentation] [Video]


6809
6809 Assembly Lesson M2 - Binary Coded Decimal
Using Hexadecimal numbers is great for calculating, but is hard to show… the solution is Binary Coded Decimal!... Each of the two digits in a HEX number only go from 0-9… so a byte goes from $00-$99… Lets learn more!
[Documentation] [Video]


6809
Lesson SuckShoot1 - Suck Shoot on the Vectrex [VTX]
SuckShoot is a simple little shooter game, designed as a test for a minimal 8 bit game. Lets take a look at the Vectrex code.
[Documentation] [Video]
[VTX]

6809
Lesson SuckShoot3 - Suck Shoot on the FM7 [FM7]
SuckShoot is a simple little shooter game, designed as a test for a minimal 8 bit game. Lets take a look at the FM7 version of the code.
[Documentation] [Video]
[FM7]

6809
MSX1 & SMS - ASM PSET and POINT for Pixel Plotting - Z80 ASM Lesson Photon9
No Description Available
[Documentation] [Video]


Z80
Lesson SH12 - Amstrad CPC code Part 3 - The Rest of the suck hunt code!
No Description Available
[Documentation] [Video]


Z80
Lesson SH13 - ZX Next code Part 1 - Sprites and sounds!
No Description Available
[Documentation] [Video]


Z80
Suck Hunt Programming Lesson SH14 - Spectrum Next code Part 2 - Amazing(?) Intro!
Lets take a look at more of the Spec Next source!
[Documentation] [Video]


Z80
Lesson SH15 - Spectrum Next code Part 3 - Title and Game code
Lets take a look at more of the Spec Next source!
[Documentation] [Video]


Z80
Lesson SH16 - Sam Coupe code Part 1 - Sprites and banks
No Description Available
[Documentation] [Video]


Z80
Lesson SH17 - Sam Coupe code Part 2 - Titles and palettes [SAM]
Lets take a look at the Tilemap, Palette and music code of the sam coupe version of the game.
[Documentation] [Video]
[SAM]

Z80
Lesson SH18 - Sam Coupe code Part 3 - Title and Game code [SAM]
Lets take a look at more of the Sam Coupe source!
[Documentation] [Video]
[SAM]

Z80
Lesson SH19 - MSX2 code Part 1 - Sprites and banks [MSX]
Suck Hunt has a large block of platform specific code for each system. Lets take a look at the most interesting parts of the code on the MSX2. For the MSX2 hardware, we'll have to covert the sprites into VRAM.
[Documentation] [Video]
[MSX]

Z80
Lesson SH20 - MSX2 code Part 2 - Tiles and palettes
Lets take a look at the Tilemap, Palette and music code of the MSX2 version of the game
[Documentation] [Video]


Z80
Lesson SH21 - MSX2 code Part 3 - Title and Game code [MSX]
Lets take a look at more of the MSX2 source… this time the Title screen and main game code
[Documentation] [Video]
[MSX]

Z80
Lesson SH22 - SMS code Part 1 - Sprites conversion and Shutter glasses [SMS]
The Sega Master system of the game has a big advantage… it can support shutter glasses! It also has a big disadvantage…. No bitmap display!... We'll have to convert the sprites to tiles, and use those for the graphics
[Documentation] [Video]
[SMS]

Z80
Lesson SH23 - SMS code Part 2 - Tiles and palettes [SMS]
Lets take a look at the Tilemap (used by the title and gameover), Palette and 3D Switching code of the SMS version of the game
[Documentation] [Video]
[SMS]

Z80
Lesson SH24 - SMS code Part 3 - Main game loop and Title [SMS]
It's time to finish the suck! Lets look at the last of the suck hunt code!
[Documentation] [Video]
[SMS]

Z80
Z80 Assembly Lesson 2 - Addressing Modes (2021 Edition)
We've seen something running! So we've made a start!... Lets dig deeper now, and look at all the types of 'Addressing mode' . These are The ways we can specify sources and destinations for our parameters.
[Documentation] [Video]


Z80
Lesson 3 - Flags, Conditions and Comparison! - Z80 Assembly - New 2021 edition
So far we've just looked at sequences of commands that run in a fixed order… In our games and programs we'll need things to happen depending on conditions…
[Documentation] [Video]


Z80
Z80 Assembly Lesson 4 - Lesson 4 - it's time for the Stack! (2021 Edition)
We've overlooked an important feature so far, The stack!... this is an essential function of the processor, which we can use to quickly store values in registers, and get them back later. Let's learn about the stack!
[Documentation] [Video]


Z80
Lesson 5 - Bit shifting and Logical Ops
It's time to start messin' with our register's bits (ooh er?!). We'll look at bit shifting, which can be used for multiplication and division by 2, and Logical operations that can mask our registers.
[Documentation] [Video]


Z80
Lesson 6 - Assembler Directives and programming tricks!
We've learned lots of Z80 commands, but we also need to learn how to get our assembler to do what we want! Lets take a look at some of the commands we can use with VASM - these may be different if you're using another assembler.
[Documentation] [Video]


Z80
8086 ASM Lesson M1 - Random Numbers and Ranges [DOS]
Let's write some simple routines we may need in a game!
[Documentation] [Video]
[DOS]

8086
8086 ASM Lesson M2 - Binary Coded Decimal
Working in HEX is great for programming, but converting 16 or 32 bit hex to numbers for display is a pain! We'll want to show an 8 digit 'highscore' in our games... and for this we'll use Binary Coded Decimal!
[Documentation] [Video]


8086
Joypad reading on the Wonderswan and Joystick reading on DOS! - 8086 Assembly Lesson P6
No Description Available
[Documentation] [Video]


8086
Ez80 Assembly Lesson 1 - 24 Bit ADL mode, and new commands
Lets take a look at the eZ80, an enhanced Z80 with larger address space and new commands! In this lesson we'll learn how ADL changes the existing commands, and what commands have been added over the classic Z80.
[Documentation] [Video]


Z80
Lesson 2 - Switching between 16 bit Z80 and 24 bit eZ80 (ADL)
Ideally we'd work in 24 bit ADL mode all the time - it's certainly easier. Unfortunately we do need to cover the complex issue of mixed modes…
[Documentation] [Video]


Z80
eZ80 Assembly Lesson 3 - OUTS and INS on the eZ80
eZ80 Assembly Lesson 3 - OUTS and INS on the eZ80
[Documentation] [Video]


Z80
Lesson H2 - Hello World on the WonderSwan / Wonderswan Color
No Description Available
[Documentation] [Video]


8086
Lesson P8 - Beeper speaker on MS DOS! [DOS]
he old pc's before adlib are hardly famous for their sound, but the beeper speaker can make some sound, and even a little music!... Lets write a little sound driver "ChibiSound" for our SFX needs!
[Documentation] [Video]
[DOS]

8086
Lesson P9 - Adlib/Soundblaster sound with MS DOS! [DOS]
Beeper isn't really too impressive... Lets try something a bit better! Lets learn how to make sounds with Adlib OPL2.... also supported by the Soundblaster!
[Documentation] [Video]
[DOS]

8086
Hardware Sprites on the Gameboy Advance and Nintendo DS! - ARM Assembly Lesson P9
No Description Available
[Documentation] [Video]


ARM
Arm Thumb Lesson 5 - More Maths!
No Description Available
[Documentation] [Video]


ARM