VGM File Info Scanner for CP/M =============================== A utility that scans all .VGM files in the current directory and displays a table showing which audio chips each file uses. Version 1.1 uses a hybrid detection approach: - Checks VGM header clock values to detect chip types - Scans VGM command stream to detect multiple instances of same chip type Usage: ------ Simply run the program from a directory containing VGM files: VGMINFO No command line arguments are needed. The program will automatically scan all .VGM files in the current directory. Output: ------- The program displays a formatted table with two columns: - Filename: The name of the VGM file - Chips Used: A comma-separated list of audio chips used in that file Supported Chips: ---------------- The program can detect the following audio chips: - SN76489 (PSG - Programmable Sound Generator) - YM2612 (FM Synthesis chip used in Sega Genesis/Mega Drive) - YM2151 (OPM - FM Operator Type-M) - YM3812 (OPL2 - FM synthesis chip) - YMF262 (OPL3 - Enhanced FM synthesis chip) - AY-3-8910 (PSG used in many arcade and home computers) Example Output: --------------- VGM Music Chip Scanner v1.1 Filename Chips Used ======== ===================== BGM 2xAY-3-8910 ENDING AY-3-8910 INCHINA YM2612 SHIRAKAW SN76489, YM2612 STARTDEM 2xSN76489, AY-3-8910 WONDER01 2xSN76489 ======== ===================== Notes: ------ - The program reads the VGM file headers and scans up to 255 commands from the VGM data stream for accurate chip detection. - Files that don't have a valid VGM header are silently skipped. - Chip detection uses a hybrid approach: * VGM header clock values (offsets 0x0C, 0x2C, 0x30, 0x74) determine which chip types are present * Command stream scanning detects multiple instances (e.g., "2xSN76489") - AY-3-8910 clock detection respects VGM version - only checked for v1.51+ to avoid false positives from invalid header data in older VGM versions. Building: --------- To rebuild from source: build_vgminfo.cmd Or manually with TASM: tasm -t80 -b -g3 -fFF vgminfo.asm vgminfo.com Author: ------- Created for RomWBW/CP/M systems Based on VGM format specification from vgmrips.net An AI LLM was utilized in the creation of this application.