Texas Instruments TMS9918A VDP emulator library for Rust
GitHub | crates.io | API Documentation
tms9918a_emu emulates a Texas Instruments TMS9918A video display processor and provides a basic framebuffer as Vec<u32>
which can be used with other crates, such as minifb, to create a window.
High-level functions are provided as well as low-level functions, making it easy to control the VDP without needing to use the control and data ports.
This emulator is a work-in-progress and currently only supports the Graphics I and Text video modes, and sprites are unsupported in all modes. In its current state, this emulator is more of a TMS9918 (non-A variant) emulator.
This is a small example program which uses Text mode to display a hello world message in a minifb window, showing how to use the high-level functions:
A similar example program is available which shows how to use the low-level functions to display the same hello world message.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.