Classic PSG Library
Header | {z88dk}/include/psg.h |
Source | {z88dk}/z88dk/libsrc/psg |
Include | #include <psg.h>
|
Linking | n/a |
Compile | n/a |
Comments |
Very basic PSG interface library. It provides the channel activation and frequency conversion maths.
A minimal interface for the Commodore 128's SID is included.
Convert a frequency value to pulse count for the PSG data
Send data to the psg. "sound(reg, value)" is a valid alias.
Read the PSG register. Not supported on SID, use the SID specific calls.
Init the PSG (reset sound etc..) Not supported on SID.
Set a given tone for the channel (0-2)
Set the global noise period
Set channel's volume (not channel restricted on SID)
Set the volume envelope of number \a waveform, with the given period, on a group of channels (ORed bits)
Set noise or tone generation on a group of channels (ORed bits). Not supported on SID.
Get the group of channels currently generating tone (ORed bits). Not supported on SID.
extern unsigned char LIB psg_tone_channels();
Get the group of channels currently generating noise (ORed bits). Not supported on SID.
- Overview
- Platform List
- Unsupported Platforms
- i8080/5 Support
- Homebrew hardware quickstart
- Retargetting
- Building the libraries
- Clang support
- Pragmas
- Adding to Classic
- Introduction
- Library Configuration
- CRT
- Header Files
- Assembly Language
- Library in Depth
- Embedded Platform
- Adding to NewLib
- Benchmarks
- Datatypes
- Debugging
- Decompression
- More than 64k
- Deficiencies
- Compiling Larger Applications
- Importing routines written in 8080 assembly mnemonics
- Using CP/M libraries in REL format with z88dk
- Writing optimal code
- Speeding up Compilation
- CMake usage