All Projects → plattysoft → Modern-MSX-BASIC-Game-Dev

plattysoft / Modern-MSX-BASIC-Game-Dev

Licence: Apache-2.0 license
Examples, demos and scripts from the book "Modern MSX-BASIC Game Development"

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Modern-MSX-BASIC-Game-Dev

MSX2-Technical-Handbook
The official technical reference of the MSX2 system, converted to convenient markdown files
Stars: ✭ 97 (+304.17%)
Mutual labels:  msx, msx-basic
The-MSX-Red-Book
The MSX Red Book in Markdown format.
Stars: ✭ 85 (+254.17%)
Mutual labels:  msx
helios
A Java-based Sega Mega Drive/Genesis emulator. And other systems too.
Stars: ✭ 14 (-41.67%)
Mutual labels:  msx
msx-forth83
Forth 83 and MSX computer. Libraries and tools to use Forth 83 CP/M-80 (by Laxen and Perry) with MSX computers.
Stars: ✭ 13 (-45.83%)
Mutual labels:  msx
gorilla-cpm
GORILLA.BAS port to CP/M in Turbo Modula-2. Supported terminals: VT52, VT100, ANSI, ADM-31, KayPro, C128, Memotech monochrome, CPC / Zenith Z19
Stars: ✭ 45 (+87.5%)
Mutual labels:  msx
MSX
playing around with MSX Basic
Stars: ✭ 14 (-41.67%)
Mutual labels:  msx-basic
rlengine-msx
RetroDeluxe Game Engine for MSX computers
Stars: ✭ 41 (+70.83%)
Mutual labels:  msx
6502.Net
A .Net-based Cross-Assembler for Several 8-Bit Microprocessors
Stars: ✭ 44 (+83.33%)
Mutual labels:  msx
asMSX
AsMSX, originally developed by Pitpan. More info: https://www.msx.org/wiki/AsMSX.
Stars: ✭ 58 (+141.67%)
Mutual labels:  msx
msx-rpg
A Dungeon Crawler for the MSX2
Stars: ✭ 40 (+66.67%)
Mutual labels:  msx
TMS9918A
TMS9918A video card for RC2014
Stars: ✭ 104 (+333.33%)
Mutual labels:  msx
MSXPi
Interface for MSX to Connect and use Raspberry Pi resources
Stars: ✭ 61 (+154.17%)
Mutual labels:  msx
msx-msxlib
MSX assembly library
Stars: ✭ 42 (+75%)
Mutual labels:  msx
MSX devs
MSX develops repository
Stars: ✭ 21 (-12.5%)
Mutual labels:  msx
msx diagnostics
Tool written in Z80 assembler to test the MSX hardware basics.
Stars: ✭ 34 (+41.67%)
Mutual labels:  msx
pcxtools
MSX cross-development command line tools PNG2MSX, PNG2SPR[+] and TMX2BIN
Stars: ✭ 17 (-29.17%)
Mutual labels:  msx
MSX
Most of the MSX software developed by Konamiman since the 1990s
Stars: ✭ 75 (+212.5%)
Mutual labels:  msx
flappybird4msx
My version of Flappy Bird for MSX Computers
Stars: ✭ 28 (+16.67%)
Mutual labels:  msx
CocoaMSX
MSX Emulator for macOS
Stars: ✭ 72 (+200%)
Mutual labels:  msx
TMS9918
Various documents for the TMS9918 VDP
Stars: ✭ 42 (+75%)
Mutual labels:  msx

Modern MSX BASIC Game Development

This repository contains examples, demos and scripts from the book "Modern MSX-BASIC Game Development"

51nVbm22NBS SX331_BO1,204,203,200

You can read the preface here

You can play around with the examples of the book here

About the book

MSX is a 1983’s 8-bit architecture standard for home computers. It includes a Z80 microprocessor and dedicated chips for graphics and sound.

MSX BASIC is the default language of MSX computers. It is simple, yet reasonably powerful. You can use sprites, joysticks, and even access to the graphic and sound chips directly. That makes MSX BASIC a great entry point for making games and learning all the important concepts of MSX.

Back in the 80s, then there was no Internet. The books available were few and often not very helpful. Most contained simply a list of all the BASIC instructions and some program listings without any explanation. It was unnecessarily hard.

Nowadays there are vastly more resources available, but I still missed an all in one solution with all the details on how to write good games using MSX BASIC with the tools we have available today. That is what this book aims to be.

Welcome to Modern MSX BASIC Game Development.

Book structure

The book is structured following a progressive approach in which we will cover the basics in the first chapters and will be building on top of the knowledge of previous chapters.

  • In the first chapter we talk about the development environment and the different options with their pros and cons.
  • In the second chapter, we cover the particularities of MSX BASIC as well as the different types of variables, some particularities of the language and a few recommendations on how to write programs.
  • In chapter 3 we get further into MSX BASIC structure and flow as well as commands for managing input and output.
  • In chapter 4, we start to build games, we will see how to define and use sprites and how to handle joysticks; and we will build a space shooter along the way.
  • In chapter 5 we explore the different ways to add collision detection to our space shooter, from hardware sprite collision to hitboxes and a combination of both.
  • In chapter 6, we look into the basic drawing commands available and we will build a simple dungeon game to highlight how they can be used.
  • Chapter 7 is when we get deep into the MSX graphics and dive into how to program the VDP to define tiles for more colorful and efficient graphics. This chapter is all about VPOKE and VPEEK.
  • In chapter 8 we explore how we can add sound effects to our games, both using the high level command PLAY and also accessing the PSG directly with SOUND.
  • Finally, in chapter 9 we will see some advanced techniques of MSX BASIC, including making it run blazing fast by compiling it with MSX-BASIC-KUN, splitting the program into many files to make the game more versatile, how to publish it, and we’ll close with a brief glimpse of other more advanced ways to make games for the MSX family.

Links

Emulators

Editors

Music tools

Design tools

Other tools

Useful websites

Beyond MSX BASIC

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].