public abstract class VIA6522DC extends VIACore
ca2State, cb2State, enabled, ier, ifr, ila, ilb, oldpa, oldpb, pb7, pb7o, pb7sx, pb7x, pb7xx, tai, tal, tau, tbi, tbl, tbu, via, VIA_ACR, VIA_DDRA, VIA_DDRB, VIA_IER, VIA_IFR, VIA_IM_CA1, VIA_IM_CA2, VIA_IM_CB1, VIA_IM_CB2, VIA_IM_IRQ, VIA_IM_SR, VIA_IM_T1, VIA_IM_T2, VIA_PCR, VIA_PRA, VIA_PRA_NHS, VIA_PRB, VIA_SIG_CA1, VIA_SIG_CA2, VIA_SIG_CB1, VIA_SIG_CB2, VIA_SIG_FALL, VIA_SIG_RISE, VIA_SR, VIA_T1CH, VIA_T1CL, VIA_T1LH, VIA_T1LL, VIA_T2CH, VIA_T2CL, VIA_T2LL
Constructor and Description |
---|
VIA6522DC(int deviceID,
MOS6510 cpu)
Creates a new instance of VIA6522DC.
|
Modifier and Type | Method and Description |
---|---|
abstract void |
diskAttachedDetached(String imageName,
boolean attached) |
void |
ejectDisk()
Detach Disk.
|
protected void |
gcrDataWriteback()
Write back dirty GCR data to the attached disk image.
|
long |
getAttachClk()
Ticks when the disk image was attached.
|
int |
getHalfTrack()
Get current half track on which the R/W head is positioned.
|
protected DiskImage |
getImage()
Get attached disk image (null if nothing attached).
|
protected byte |
getLastGCRWrite()
Get recently written GCR byte.
|
protected libsidplay.components.c1541.VIA6522DC.Mode |
getMode() |
DiskImage |
insertDisk(File file)
Insert Disk.
|
protected boolean |
isByteReadyActive()
Is byte ready to be processed?
|
boolean |
isLEDOn()
Is LED on?
|
boolean |
isMotorOn()
Is disk motor on?
|
protected void |
moveHead(boolean forward) |
protected byte |
readPra() |
protected byte |
readPrb() |
void |
reset() |
protected void |
rotateDisk()
Rotate disk, if the motor is on.
|
protected void |
setCa2(int state) |
protected void |
setCb2(int state) |
protected void |
setGCRDataDirty() |
protected void |
setHalfTrack(int num)
Reposition the read/write head to the parameterized half-track accounting
for potential change in speed zone (= track length).
|
protected void |
setLastGCRRead(byte lastReadData)
Set recently read GCR byte.
|
protected void |
storeAcr(byte value) |
protected void |
storePra(int addr,
byte byt) |
protected void |
storePrb(byte byt) |
protected void |
storeSr(byte value) |
protected void |
storeT2l(byte value) |
alarmSet, alarmUnset, checkInterrupts, cpuClk, disable, read, setIRQ, signal, write
public VIA6522DC(int deviceID, MOS6510 cpu)
deviceID
- the C1541 device IDcpu
- drive CPUprotected DiskImage getImage()
public DiskImage insertDisk(File file) throws IOException
file
- disk image fileIOException
- cannot read disk image filepublic void ejectDisk() throws IOException
IOException
- cannot write disk filepublic long getAttachClk()
protected void setHalfTrack(int num)
num
- half-track to setpublic int getHalfTrack()
protected void moveHead(boolean forward)
protected void gcrDataWriteback()
public final boolean isLEDOn()
public final boolean isMotorOn()
protected libsidplay.components.c1541.VIA6522DC.Mode getMode()
protected final byte getLastGCRWrite()
protected final void setLastGCRRead(byte lastReadData)
lastReadData
- GCR byteprotected final boolean isByteReadyActive()
protected final void rotateDisk()
protected void setGCRDataDirty()
public abstract void diskAttachedDetached(String imageName, boolean attached)
Copyright © 2018 Ken Händel. All rights reserved.