g2_bus: synchronous cycle

This commit is contained in:
Zack Buhman 2025-01-29 04:00:23 -06:00
parent b156e2d24e
commit 364f1748f3

View File

@ -1,25 +1,38 @@
#include "sh7091/serial.hpp" #include "sh7091/serial.hpp"
#include "systembus.hpp"
#include "systembus_bits.hpp"
constexpr uint32_t patterns[] = {
0x11223344,
0x55667788,
0x99aabbcc,
0xddeeff00,
};
int main() int main()
{ {
serial::init(0); serial::init(0);
uint32_t i = 0;
uint8_t j = 0;
uint32_t * buf = (uint32_t *)(0xa0000000 | 0x14000000);
while (1) { while (1) {
//*(uint32_t *)(0xa0620000) = 0xffffffff; //*(uint32_t *)(0xa0620000) = 0xffffffff;
*(uint8_t *)(0xa0600480) = 0;
for (int i = 0; i < 30; i++) {
asm volatile ("nop");
}
*(uint8_t *)(0xa0600480) = 1; buf[j] = patterns[i & 3];
for (int i = 0; i < 70; i++) { i++;
asm volatile ("nop");
} uint32_t ffst = system.FFST;
while ( ffst::holly_cpu_if_block_internal_write_buffer(ffst)
| ffst::holly_g2_if_block_internal_write_buffer(ffst)
| ffst::aica_internal_write_buffer(ffst)) {
ffst = system.FFST;
};
j++;
*(uint8_t *)(0xa0600480) = 0;
for (int i = 0; i < 120; i++) {
asm volatile ("nop");
}
serial::character('.'); serial::character('.');
} }
} }