Allow NV2A engines to be reset

This commit is contained in:
StrikerX3 2019-12-08 16:46:02 -03:00
parent 170558276b
commit cf0deb7d47
37 changed files with 73 additions and 0 deletions

View file

@ -26,6 +26,7 @@ public:
, m_nv2a(nv2a)
{}
virtual void Reset() = 0;
virtual uint32_t Read(const uint32_t addr, const uint8_t size) = 0;
virtual void Write(const uint32_t addr, const uint32_t value, const uint8_t size) = 0;

View file

@ -24,6 +24,7 @@ class PBUS : public NV2AEngine {
public:
PBUS(const NV2A& nv2a) : NV2AEngine("PBUS", 0x001000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -26,6 +26,7 @@ class PCOUNTER : public NV2AEngine {
public:
PCOUNTER(const NV2A& nv2a) : NV2AEngine("PCOUNTER", 0x00A000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PCRTC : public NV2AEngine {
public:
PCRTC(const NV2A& nv2a) : NV2AEngine("PCRTC", 0x600000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PFB : public NV2AEngine {
public:
PFB(const NV2A& nv2a) : NV2AEngine("PFB", 0x100000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -25,6 +25,7 @@ class PFIFO : public NV2AEngine {
public:
PFIFO(const NV2A& nv2a) : NV2AEngine("PFIFO", 0x002000, 0x2000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -21,6 +21,7 @@ class PGRAPH : public NV2AEngine {
public:
PGRAPH(const NV2A& nv2a) : NV2AEngine("PGRAPH", 0x400000, 0x2000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -23,6 +23,7 @@ class PMC : public NV2AEngine {
public:
PMC(const NV2A& nv2a) : NV2AEngine("PMC", 0x000000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PNVIO : public NV2AEngine {
public:
PNVIO(const NV2A& nv2a) : NV2AEngine("PNVIO", 0x0C0000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PRAMDAC : public NV2AEngine {
public:
PRAMDAC(const NV2A& nv2a) : NV2AEngine("PRAMDAC", 0x680000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -21,6 +21,7 @@ class PRAMIN : public NV2AEngine {
public:
PRAMIN(const NV2A& nv2a) : NV2AEngine("PRAMIN", 0x700000, 0x100000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -21,6 +21,7 @@ class PRMA : public NV2AEngine {
public:
PRMA(const NV2A& nv2a) : NV2AEngine("PRMA", 0x007000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PRMCIO : public NV2AEngine {
public:
PRMCIO(const NV2A& nv2a) : NV2AEngine("PRMCIO", 0x601000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PRMDIO : public NV2AEngine {
public:
PRMDIO(const NV2A& nv2a) : NV2AEngine("PRMDIO", 0x681000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PROM : public NV2AEngine {
public:
PROM(const NV2A& nv2a) : NV2AEngine("PROM", 0x300000, 0x20000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -29,6 +29,7 @@ class PSTRAPS : public NV2AEngine {
public:
PSTRAPS(const NV2A& nv2a) : NV2AEngine("PSTRAPS", 0x101000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -26,6 +26,7 @@ class PTIMER : public NV2AEngine {
public:
PTIMER(const NV2A& nv2a) : NV2AEngine("PTIMER", 0x009000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -19,6 +19,7 @@ class PVIDEO : public NV2AEngine {
public:
PVIDEO(const NV2A& nv2a) : NV2AEngine("PVIDEO", 0x008000, 0x1000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -22,6 +22,7 @@ class USER : public NV2AEngine {
public:
USER(const NV2A& nv2a) : NV2AEngine("USER", 0x800000, 0x200000, nv2a) {}
void Reset() override;
uint32_t Read(const uint32_t addr, const uint8_t size) override;
void Write(const uint32_t addr, const uint32_t value, const uint8_t size) override;
};

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PBUS::Reset() {
}
uint32_t PBUS::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PBUS::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PCOUNTER::Reset() {
}
uint32_t PCOUNTER::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PCOUNTER::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PCRTC::Reset() {
}
uint32_t PCRTC::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PCRTC::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PFB::Reset() {
}
uint32_t PFB::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PFB::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PFIFO::Reset() {
}
uint32_t PFIFO::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PFIFO::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PGRAPH::Reset() {
}
uint32_t PGRAPH::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PGRAPH::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PMC::Reset() {
}
uint32_t PMC::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PMC::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PNVIO::Reset() {
}
uint32_t PNVIO::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PNVIO::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PRAMDAC::Reset() {
}
uint32_t PRAMDAC::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PRAMDAC::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PRAMIN::Reset() {
}
uint32_t PRAMIN::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PRAMIN::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PRMA::Reset() {
}
uint32_t PRMA::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PRMA::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PRMCIO::Reset() {
}
uint32_t PRMCIO::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PRMCIO::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PRMDIO::Reset() {
}
uint32_t PRMDIO::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PRMDIO::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PROM::Reset() {
}
uint32_t PROM::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PROM::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PSTRAPS::Reset() {
}
uint32_t PSTRAPS::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PSTRAPS::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PTIMER::Reset() {
}
uint32_t PTIMER::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PTIMER::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void PVIDEO::Reset() {
}
uint32_t PVIDEO::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] PVIDEO::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;

View file

@ -12,6 +12,9 @@
namespace strikebox::nv2a {
void USER::Reset() {
}
uint32_t USER::Read(const uint32_t addr, const uint8_t size) {
log_spew("[NV2A] USER::Read: Unimplemented read! address = 0x%x, size = %u\n", addr, size);
return 0;