Difference between revisions of "Samples"
From MSX Game Library
(→Sprite FX) |
(→Game) |
||
| Line 389: | Line 389: | ||
|state=Functional | |state=Functional | ||
|img=raw.githubusercontent.com/aoineko-fr/MSXgl/main/engine/doc/img/sample_game.png | |img=raw.githubusercontent.com/aoineko-fr/MSXgl/main/engine/doc/img/sample_game.png | ||
| + | }} | ||
| + | |||
| + | === Localize === | ||
| + | {{SAMPLE_BOX | ||
| + | |name=Localize | ||
| + | |desc=Show case of the localization handling module. | ||
| + | |module1=localize | ||
| + | |module2= | ||
| + | |module3= | ||
| + | |module4= | ||
| + | |module5= | ||
| + | |file=s_loc.c | ||
| + | |machine=MSX1 | ||
| + | |target=ROM_32K | ||
| + | |ext= | ||
| + | |state=Functional | ||
| + | |img=raw.githubusercontent.com/aoineko-fr/MSXgl/main/engine/doc/img/sample_loc.png | ||
}} | }} | ||
Revision as of 22:45, 21 December 2023
Here is a list of sample programs supplied with MSXgl to demonstrate the use of the library's various functions.
To try out the different samples, simply open a command line in the MSXgl/projects/samples/ directory and execute:
- build.bat s_game (Windows)
- ./build.sh s_game (Linux & macOS)
Replace "s_game" with the name of the sample you want to try out (sample's .c file extension is not needed).
Note: Samples use a system to overwrites the project configuration (project_config.js) with a sample-specific configuration file (e.g. s_game.js). This makes it possible to have several projects in the same directory. This is not necessary for a stand-alone project. See how to create your own new program.
Core
Hello World

Program showing the minimal code needed to display a text.
- File: s_hello.c
- State: Template:STATE/Functional
32K BIOS

Program showing the use of default BIOS functions.
- Showcased modules:
- File: s_bios.c
- State: Template:STATE/Functional
32K Clock

Program showing the use of the MSX 2's Real Time Clock (Ricoh RP-5C01) to get current time and save/load data from CMOS memory.
- Showcased modules:
- File: s_clock.c
- State: Template:STATE/Functional
32K PSG

Program showing the use of direct control over PSG sound chip.
- Showcased modules:
- File: s_psg.c
- State: Template:STATE/Functional
32K System

Program showing the retrieval of system information.
- File: s_sys.c
- State: Template:STATE/Functional
32K Render
Draw

Program showing the use of Draw module with the MSX 2 bitmap screen modes.
32K Graph Mode 3

Program showing the use of Screen 4 (aka Graph mode 3) with various configuration (including unofficial MSX configurations like "Screen 1.5").
- Showcased modules:
- File: s_gm3.c
- State: Template:STATE/Functional
32K 
Program showing the use of graphical print features (bitmap, sprite, effects, etc.).
- Showcased modules:
- File: s_print.c
- State: Template:STATE/Functional
32K Sprite Mode 1

Program showing the use of sprite mode 1 and a Sprite Attribute Table flip method to reduce sprite disappearance.
- Showcased modules:
- File: s_sm1.c
- State: Template:STATE/Functional
32K Sprite Mode 2
Program showing the use of sprite mode 2 and split screen to change VDP setting during screen rendering.
- Showcased modules:
- File: s_sprite.c
- State: Template:STATE/Functional
32K Sprite FX

Program showing the use of Sprite Tool module to modify sprite data (support Cropping, Flipping, Asking and Rotating).
- Showcased modules:
- File: s_sprtfx.c
- State: Template:STATE/Functional
32K Software Sprite

Program showing the use of software sprite for all bitmap modes using VDP commands.
- Showcased modules:
- File: s_swsprt.c
- State: Template:STATE/Functional
32K Software Tile

Program showing the use of software tile mode for MSX 2 bitmap modes (only Screen 5 & 8 has been tested).
- Showcased modules:
- File: s_swtile.c
- State: Template:STATE/Functional
32K Text

Program showing the use of print module with text modes (all MSX 1 and MSX 2 text/tiled mode).
- Showcased modules:
- File: s_text.c
- State: Template:STATE/Functional
32K VDP Command

Program showing the use of VDP command to draw several effect in all bitmap modes.
- Showcased modules:
- File: s_vdpcmd.c
- State: Template:STATE/Functional
32K Target format
Boot Disk

Program showing the use boot disk target format. The program will be start from disk without going through MSX-DOS but allow to use BDOS function.
- Showcased modules:
- File: s_dos0.c
- State: Template:STATE/Partial
BOOT MSX-DOS

Program showing the use of MSX-DOS 1 routines to load and display image from file.
- Showcased modules:
- File: s_dos.c
- State: Template:STATE/Functional
MSX-DOS MSX-DOS 2

Program showing the use of various MSX-DOS 2 routines to load and display image, get disk information or handle mapped memory.
- Showcased modules:
- File: s_dos2.c
- State: Template:STATE/Functional
MSX-DOS 2 Mapped ROM

Program showing usage of mapped ROM and segments switching.
- File: s_mapper.c
- State: Template:STATE/Functional
ASCII8 128K Utilities
BASIC USR

Program showing the creation of binary to be load and used from BASIC.
- Showcased modules:
- File: s_usr.c
- State: Template:STATE/Functional
BIN (USR) 
Compressor

Program showing the use of several compression algorithms (RLEp, Bitbuster 1 & 2, ZX0 and Pletter).
- Showcased modules:
- compress (doc, code)
- compress/bitbuster (doc, code)
- compress/bitbuster2 (doc, code)
- compress/zx0 (doc, code)
- compress/pletter (doc, code)
- File: s_zip.c
- State: Template:STATE/Functional
MSX-DOS Game

Program showing the use of Game and Game pawn modules. The Game module offers state management while Game pawn allows to manage characters (display, animation, movement, collision, etc.)
32K Localize

Show case of the localization handling module.
- Showcased modules:
- File: s_loc.c
- State: Template:STATE/Functional
32K Math

Program showing the use of mathematics pre-computed tables, pseudo-random generator and quick-computation functions.
- Showcased modules:
- File: s_math.c
- State: Template:STATE/Functional
32K Scrolling

Program showing the use of multi-directionnal tile-based scrolling and screen adjust register for smooth scrolling.
- Showcased modules:
- File: s_scroll.c
- State: Template:STATE/Functional
32K Devices
Joystick

Program showing the use of joystick and input manager.
- Showcased modules:
- File: s_joystk.c
- State: Template:STATE/Functional
32K Keyboard

Program showing the use of keyboard and input manager.
- Showcased modules:
- File: s_keybrd.c
- State: Template:STATE/Functional
32K Mouse

Program showing the use of mouse device and universal port (joystick port) device detection.
- Showcased modules:
- File: s_mouse.c
- State: Template:STATE/Functional
32K Ninja Tap

Program showing the use of NinjaTap device to connect up to 8 joysticks on one MSX machine.
- Showcased modules:
- File: s_ntap.c
- State: Template:STATE/Functional
32K 
ObsoNET

Program showing the use of ObsoNET cartridge using network stack.
- Showcased modules:
- File: s_onet.c
- State: Template:STATE/Partial
16K PAC

Program showing the use of PAC or FM-PAC to load/save data into SRAM.
- Showcased modules:
- device/pac (doc, code)
- File: s_pac.c
- State: Template:STATE/Functional
32K 
V9990

Program showing the use of Yamaha V9990 based video cartridge.
- Showcased modules:
- File: s_v9990.c
- State: Template:STATE/Functional
32K 
Audio Format
Arkos

Program showing the use of Arkos Tracker II's replayers.
- Showcased modules:
- File: s_arkos.c
- State: Template:STATE/Functional
ASCII8 128K ayFX

Program showing the use of ayFX's replayer.
- Showcased modules:
- File: s_ayfx.c
- State: Template:STATE/Functional
32K lVGM

Program showing the use of light-VGM's replayer (PSG).
- Showcased modules:
- File: s_lvgm.c
- State: Template:STATE/Functional
32K PCM-Encoder

Program showing the use of the PCM Encoder's replayer (aka. Crystal clean PCM 8bit samples on the poor PSG).
- Showcased modules:
- pcm/pcmenc (doc, code)
- File: s_pcmenc.c
- State: Template:STATE/Functional
32K PCM Play

Program showing the use of the PCM Play's replayer.
- Showcased modules:
- pcm/pcmplay (doc, code)
- File: s_pcmplay.c
- State: Template:STATE/Functional
32K PT3

Program showing the use of Vortex Tracker II's replayer.
- Showcased modules:
- File: s_pt3.c
- State: Template:STATE/Functional
32K Trilo Tracker SCC

Program showing the use of Trilo Tracker SCC's replayer.
- Showcased modules:
- File: s_trilo.c
- State: Template:STATE/Functional

KONAMI 128K VGM

Program showing the use of VGM's replayer (PSG, SCC, MSX-Music, MSX-Audio).
- Showcased modules:
- File: s_vgm.c
- State: Template:STATE/Functional
ASCII16 256K

WYZ

Program showing the use of WYZ Tracker's replayer (version 0.3).
- Showcased modules:
- File: s_wyz.c
- State: Template:STATE/Functional
32K WYZ2

Program showing the use of WYZ Tracker's replayer (version 0.3 47d).
- Showcased modules:
- File: s_wyz2.c
- State: Template:STATE/Functional
32K