MCPcopy Create free account
hub / github.com/AppleWin/AppleWin / GetCurrentState

Method GetCurrentState

source/Disk.cpp:141–196  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

139}
140
141LPCTSTR Disk2InterfaceCard::GetCurrentState(Disk_Status_e& eDiskState_)
142{
143 if (m_floppyDrive[m_currDrive].m_disk.m_imagehandle == NULL)
144 {
145 eDiskState_ = DISK_STATUS_EMPTY;
146 }
147 else
148 if (!m_floppyMotorOn)
149 {
150 if (m_floppyDrive[m_currDrive].m_spinning > 0)
151 {
152 eDiskState_ = DISK_STATUS_SPIN;
153 }
154 else
155 {
156 eDiskState_ = DISK_STATUS_OFF;
157 }
158 }
159 else if (m_seqFunc.writeMode)
160 {
161 if (m_floppyDrive[m_currDrive].m_disk.m_bWriteProtected)
162 {
163 eDiskState_ = DISK_STATUS_PROT;
164 }
165 else
166 {
167 eDiskState_ = DISK_STATUS_WRITE;
168 }
169 }
170 else
171 {
172 /*if (m_seqFunc.loadMode)
173 {
174 if (m_floppyDrive[m_currDrive].disk.bWriteProtected)
175 return "Reading write protect state (write protected)";
176 else
177 return "Reading write protect state (not write protected)";
178 }
179 else*/
180 {
181 eDiskState_ = DISK_STATUS_READ;
182 }
183 }
184
185 static const char *aDiskStateMiniDesc[NUM_DISK_STATUS] =
186 {
187 "Off" // DISK_STATUS_OFF
188 ,"R" // DISK_STATUS_READ
189 ,"W" // DISK_STATUS_WRITE
190 ,"WP" // DISK_STATUS_PROT
191 ,"n/a" // DISK_STATUS_EMPTY
192 ,"Spin" // DISK_STATUS_SPIN
193 };
194
195 return aDiskStateMiniDesc[eDiskState_];
196}
197
198//===========================================================================

Callers 1

CmdDiskFunction · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected