{"repo":"lajohnston/smslib","free":true,"listed":false,"github":"https://github.com/lajohnston/smslib","clone":"git clone https://github.com/lajohnston/smslib.git","description":"Z80 libraries for the Sega Master System","language":"Assembly","stars":28,"topics":["sega-master-system","game-development","wla-dx","z80","z80-asm","sega","asm","homebrew","8-bit","z80asm"],"license":"MIT","category":"game-templates","readme_excerpt":"SMSLib - Sega Master System Z80 Libs Low-level Sega Master System libs for the WLA-DX Z80 assembler (v10.5+). Its aim is to provide a consistent API for the hardware with zero/very low cost abstractions and to minimise the boilerplate required to get homebrew projects up and running quickly. Quick Start Each module is decoupled from the others and can be imported individually. smslib.asm is just a file that pulls in all the modules for convenience. Examples See example programs in the examples directory. Build the examples using the build.sh script (Linux). wlalink and wla-z80 should be in your system path. The compiled .sms ROM will appear in the examples/dist directory ready to be run in an emulator. Docs - init.asm - Initialises the system and smslib modules - input.asm - Interprets the joypad inputs - interrupts.asm - VBlank and HBlank interrupts - /mapper/\\ .asm - Memory mapper handlers - palette.asm - Color palettes - patterns.asm - Patterns (tile images) - pause.asm - Pause button - sprites.asm - Manages a sprite table in a RAM and pushes to VRAM when required - scroll/tiles.asm - Scrollable tilemaps - scroll/metatiles.asm - Scrollable maps of metatiles - tilemap.asm - Background tilemap and scrolling - vdpSettings.asm - Graphics chip register settings Additional utils - utils/ram.asm - Utilities for setting values in RAM - utils/clobbers.asm, utils/preserve, utils.restore - Efficiently preserve Z80 register states Design Principles Low level The modules in the root of","default_branch":null,"files":null,"tree":[],"storefront":"/r/lajohnston","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lajohnston/smslib/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}