(MESS) c64: Floppy WIP. (nw)

This commit is contained in:
Curt Coder 2014-02-10 22:40:47 +00:00
parent 755a60ac24
commit 0c721cc02c
2 changed files with 10 additions and 5 deletions

View File

@ -324,12 +324,17 @@ void c64h156_device::live_run(attotime limit)
int load = !(((cur_live.bit_counter & 7) == 7) && ((cur_live.cell_counter & 3) == 3)); int load = !(((cur_live.bit_counter & 7) == 7) && ((cur_live.cell_counter & 3) == 3));
if (!load) { if (!load) {
cur_live.shift_reg_write = cur_live.yb; if (cur_live.oe) {
// TODO use data read from disk if via PA is in read mode cur_live.shift_reg_write = cur_live.shift_reg;
//if (LOG) logerror("%s load write shift register %02x\n",cur_live.tm.as_string(),cur_live.shift_reg_write); if (LOG) logerror("%s load write shift register from read shift register %02x\n",cur_live.tm.as_string(),cur_live.shift_reg_write);
} else { } else {
cur_live.shift_reg_write = cur_live.yb;
if (LOG) logerror("%s load write shift register from YB %02x\n",cur_live.tm.as_string(),cur_live.shift_reg_write);
}
} else if (!BIT(cell_counter, 1) && BIT(cur_live.cell_counter, 1)) {
cur_live.shift_reg_write <<= 1; cur_live.shift_reg_write <<= 1;
cur_live.shift_reg_write &= 0xff; cur_live.shift_reg_write &= 0xff;
if (LOG) logerror("%s shift write register << %02x\n", cur_live.tm.as_string(), cur_live.shift_reg_write);
} }
// update signals // update signals

View File

@ -155,7 +155,7 @@ private:
int cycles_until_random_flux; int cycles_until_random_flux;
UINT8 yb; UINT8 yb;
UINT16 shift_reg_write; UINT8 shift_reg_write;
attotime write_start_time; attotime write_start_time;
attotime write_buffer[32]; attotime write_buffer[32];
int write_position; int write_position;