Crate cpclib

source ·
Expand description

cpclib aims at providing tools that help cross-development for the Amstrad CPC. It is mainly focused on the creation of demos for the Amstrad CPC but could be used for games or tools. Warning: none of the proposed features is fully fonctional or complete ! But hey should be correct. I progressively implement them depending on my needs for my current demo.

So what can be found there:

  • z80 assembler (remember, it only assembles mnemonics I needed for my project)
  • image conversion
  • dsk manipulation

Why releasing it publicly whereas no-one else will use it ? ;) Just because it is simpler to manage public crates with cargo. There is nothing secret here, and I welcome any contribution.

Re-exports

pub use crate::ga::Ink;
pub use crate::ga::Palette;
pub use crate::ga::Pen;
pub use crate::disc::edsk::ExtendedDsk;

Modules

Z80 tokens manipulations. Useable
Disk (edsk) manipulation. WIP
Gate Array specific objects. Finished.
CPC Image manipulation. Useable.
PC to CPC image conversions. WIP
CPC pixels conversion routines. Useable
Screen emulation. Unknown state ;)
Snapshot manipulation. Useable
Z80 emulation. WIP

Macros

Create a palette with the right inks Usage palette![1, 2, 3]