Removed system as Device
This commit is contained in:
parent
8ca86ea9b2
commit
574c4250c3
|
@ -52,12 +52,12 @@ uxn_halt(Uxn *u, Uint8 error, Uint16 addr)
|
||||||
/* IO */
|
/* IO */
|
||||||
|
|
||||||
void
|
void
|
||||||
system_deo(Device *d, Uint8 port)
|
system_deo(Uxn *u, Uint8 *d, Uint8 port)
|
||||||
{
|
{
|
||||||
switch(port) {
|
switch(port) {
|
||||||
case 0x2: d->u->wst = (Stack *)(d->u->ram + (d->dat[port] ? (d->dat[port] * 0x100) : 0x10000)); break;
|
case 0x2: u->wst = (Stack *)(u->ram + (d[port] ? (d[port] * 0x100) : 0x10000)); break;
|
||||||
case 0x3: d->u->rst = (Stack *)(d->u->ram + (d->dat[port] ? (d->dat[port] * 0x100) : 0x10100)); break;
|
case 0x3: u->rst = (Stack *)(u->ram + (d[port] ? (d[port] * 0x100) : 0x10100)); break;
|
||||||
case 0xe: system_inspect(d->u); break;
|
case 0xe: system_inspect(u); break;
|
||||||
default: system_deo_special(d, port);
|
default: system_deo_special(d, port);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,5 +15,5 @@ typedef struct SystemDevice {
|
||||||
} SystemDevice;
|
} SystemDevice;
|
||||||
|
|
||||||
void system_inspect(Uxn *u);
|
void system_inspect(Uxn *u);
|
||||||
void system_deo(Device *d, Uint8 port);
|
void system_deo(Uxn *u, Uint8 *d, Uint8 port);
|
||||||
void system_deo_special(Device *d, Uint8 port);
|
void system_deo_special(Uint8 *d, Uint8 port);
|
||||||
|
|
|
@ -33,10 +33,10 @@ error(char *msg, const char *err)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
system_deo_special(Device *d, Uint8 port)
|
system_deo_special(Uint8 *d, Uint8 port)
|
||||||
{
|
{
|
||||||
if(port > 0x7 && port < 0xe)
|
if(port > 0x7 && port < 0xe)
|
||||||
screen_palette(&uxn_screen, &d->dat[0x8]);
|
screen_palette(&uxn_screen, &d[0x8]);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
@ -79,7 +79,7 @@ uxn11_deo(Uxn *u, Uint8 addr, Uint8 v)
|
||||||
Device *d = &u->dev[addr >> 4];
|
Device *d = &u->dev[addr >> 4];
|
||||||
d->dat[p] = v;
|
d->dat[p] = v;
|
||||||
switch(addr & 0xf0) {
|
switch(addr & 0xf0) {
|
||||||
case 0x00: system_deo(d, p); break;
|
case 0x00: system_deo(u, d->dat, p); break;
|
||||||
case 0x10: console_deo(d->dat, p); break;
|
case 0x10: console_deo(d->dat, p); break;
|
||||||
case 0x20: screen_deo(u->ram, d->dat, p); break;
|
case 0x20: screen_deo(u->ram, d->dat, p); break;
|
||||||
case 0xa0: file_deo(d, p); break;
|
case 0xa0: file_deo(d, p); break;
|
||||||
|
@ -192,7 +192,7 @@ start(Uxn *u, char *rom)
|
||||||
u->dei = uxn11_dei;
|
u->dei = uxn11_dei;
|
||||||
u->deo = uxn11_deo;
|
u->deo = uxn11_deo;
|
||||||
|
|
||||||
/* system */ uxn_port(u, 0x0, nil_dei, system_deo);
|
/* system */ uxn_port(u, 0x0, nil_dei, nil_deo);
|
||||||
/* console */ uxn_port(u, 0x1, nil_dei, nil_deo);
|
/* console */ uxn_port(u, 0x1, nil_dei, nil_deo);
|
||||||
/* screen */ devscreen = uxn_port(u, 0x2, nil_dei, nil_deo);
|
/* screen */ devscreen = uxn_port(u, 0x2, nil_dei, nil_deo);
|
||||||
/* empty */ uxn_port(u, 0x3, nil_dei, nil_deo);
|
/* empty */ uxn_port(u, 0x3, nil_dei, nil_deo);
|
||||||
|
|
Loading…
Reference in New Issue