6 void main_c(u32 is_slave)
8 u16 v, *r = (u16 *)0x20004000;
15 cmd = read16(&r[0x20/2]);
17 cmdr = read16(&r[0x20/2]);
18 if (cmd != cmdr // documented as "normal" case
19 || ((cmd & 0x8000) ^ (is_slave << 15))) {
27 case 0x4d5f: // 'M_' from BIOS
31 v = read16(&r[0x22/2]) ^ (is_slave << 15);
32 write16(&r[0x24/2], v);
36 write16(&r[0x24/2], v);
39 write16(&r[0x20/2], 0);
43 // vim:ts=4:sw=4:expandtab