1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-11-01 19:30:55 +11:00
collapseos/emul/hw/sms/port.h
Virgil Dupras e1e0676191 emul/hw/sms: add A/B ports and a Genesis pad
This makes the emulator suitable to run the base SMS recipe.
2020-01-10 21:20:44 -05:00

22 lines
490 B
C

#pragma once
#include "../../emul.h"
// Each port is a bitmask of each pin's status. 1 means high.
// From Bit 0 to 6: up, down, left, right, TL, TR, TH
typedef struct {
uint8_t ctl;
Tristate TRA;
Tristate THA;
Tristate TRB;
Tristate THB;
IORD portA_rd;
IORD portB_rd;
} Ports;
void ports_init(Ports *ports);
uint8_t ports_ctl_rd(Ports *ports);
void ports_ctl_wr(Ports *ports, uint8_t val);
uint8_t ports_A_rd(Ports *ports);
uint8_t ports_B_rd(Ports *ports);