Files
WizzardSK e1a4cb6c5b Sync with upstream BlastEm (hg tip 732f5689d438)
This repo has been sitting on the July 2022 state of upstream BlastEm. The
sync brings in four years of upstream work, most importantly for this repo
the DSL generated CPU cores: upstream's Makefile now switches to NEW_CORE
automatically on any architecture that has no native code generator, and
genesis.h picks up the generated m68k context in that configuration, which
is what makes non-x86 builds possible at all.

Only .gitlab-ci.yml and Makefile.libretro are kept from this repo, every
other file is upstream's.
2026-07-27 19:05:30 +02:00

27 lines
597 B
C

#ifndef PD0178_H_
#define PD0178_H_
#include <stdint.h>
#include "system.h"
typedef struct {
system_media *media;
uint32_t cycle;
uint32_t next_shake;
uint32_t shake_high;
uint32_t head_pba;
uint32_t seek_pba;
uint32_t pause_pba;
uint8_t cmd[12];
uint8_t status[12];
uint8_t comm_index;
uint8_t shake;
} pd0178;
void pd0178_init(pd0178 *mecha, system_media *media);
uint8_t pd0178_transfer_byte(pd0178 *mecha, uint8_t to_mecha);
void pd0178_run(pd0178 *mecha, uint32_t to_cycle);
void pd0178_shake_high(pd0178 *mecha);
#endif //PD0178_H_