PC Not Recognizing Floppy
Closed this issue · 10 comments
I have a Windows 98 PC. I've flashed my Gotek with FlashFloppy, and it appears to have have worked. However, the PC doesn't recognize the drive.
The PC has a Pentium 2 CPU, Voodoo 3 GPU, Sound Blaster Live! sound card, a CF card adapter for a HDD. When I boot the PC, it shows the CF card as Master and the DVD drive as a slave, but it does not show any other devices (Gotek is set to slave). I even tried reversing the ribbon cable in the Gotek (the OLED screen said the cable was reversed, showing that there is a connection here). I set the interface to IBMPC in the config file. Not entirely sure where to go from here.
Any help would be appreciated :)
All you should need is a jumper at S1 and a jumper at JC. Place the drive after the twist in the floppy drive cable to make it drive A. No config needed.
All you should need is a jumper at S1 and a jumper at JC. Place the drive after the twist in the floppy drive cable to make it drive A. No config needed.
I have those jumpers set. But still the PC doesn't detect the drive.
Is floppy drive enabled in bios.
Yes, it is enabled.
Attach your FF.CFG here. You shouldn't even need one, actually.
S1 + JC should suffice, and then stick 1.44M/720M disk IMG files on your USB drive. Done.
Beyond that, not much help I can give. I would check your cable and also wonder about your floppy interface on the mobo.
If you do delete your FF.CFG, then you need to reset any of it that is cached inside your Gotek. To do this, press both buttons while no USB drive is inserted, until the display changes (says 'RST' or 'Reset Flash Config'). A few seconds later your Gotek will reset and be factory fresh.
FF.CFG: Example FlashFloppy Configuration File
Place in the root folder or FF/ subfolder of your USB drive.
NOTE: If FF/ exists, IMG.CFG must reside there, not the root folder.
Uncommented lines below are the default settings.
Uncommented options cannot be overridden by settings in other config files.
DRIVE EMULATION
Floppy-drive interface mode (interface pins 2 and 34)
jc: Specified by jumper JC (open: shugart, closed: ibmpc)
shugart: P2=DSKCHG, P34=RDY (Amiga, Atari ST, many others)
ibmpc: P2=unused, P34=DSKCHG (IBM PC interface)
ibmpc-hdout: P2=HD_OUT, P34=DSKCHG (not generally needed: prefer 'ibmpc')
jppc: P2=unused, P34=RDY (Japanese PC standard)
jppc-hdout: P2=HD_OUT, P34=RDY (Japanese PC alternate: prefer 'jppc')
akai-s950: Legacy alias of 'jppc-hdout', previously used for Akai S950
amiga: P2=DSKCHG, P34=DRIVE_ID (not generally needed: prefer 'shugart')
interface = ibmpc
Host platform: Improves image-format detection for generic types such as IMG
acorn: Acorn ADFS
akai: Akai (S01, S20, S950), Korg, SC Prophet 3000
casio: Casio (FZ-1)
dec: DEC (RX33, RX50)
ensoniq: Ensoniq (ASR, TS, etc)
fluke: Fluke 9100
gem: General Music (S2, S3)
ibm-3174: IBM 3174 Establishment Controller
memotech: Memotech
msx: MSX
nascom: Nascom
pc98: NEC PC-98
pc-dos: PC DOS Format (geometry determined from Bios Parameter Block)
tandy-coco: Tandy Color Computer (CoCo)
ti99: TI-99/4A
uknc: UKNC / DVK Soviet PDP-11
unspecified: Common default geometries (including IBM PC)
host = unspecified
Pins 2 & 34 output (drive->host) manual configuration
auto: Auto-configure from interface= setting
nc: Unused/No Connection [eg. if pin is an input (host->drive) on your host]
low: Always 0 volts (0v)
high: Always 5 volts (5v)
rdy: Drive ready (Ready = 0v)
nrdy: Logical complement of above
dens: Density mode (High Density = 0v)
ndens: Logical complement of above
chg: Disk changed (Changed = 0v)
nchg: Logical complement of above
Values: auto, nc, low, high, rdy, nrdy, dens, ndens, chg, nchg
pin02 = auto
pin34 = auto
Forcibly write-protect images, or respect the FAT read-only attribute?
Values: yes | no
write-protect = no
Maximum cylinder that can be stepped to (255 is required for access to
Direct Access mode as used by image-selector utilities and Autoswap games).
Values: 0 <= N <= 255
max-cyl = 255
Filter glitches in the SIDE-select signal shorter than N microseconds
Values: 0 <= N <= 255
side-select-glitch-filter = 0
Rotational offset of disk after a track change
instant: No rotation during track change
realtime: Emulate rotation of disk while track is changing
Values: instant | realtime
track-change = instant
Rotational offset of disk after draining a write to Flash
instant: No rotation
realtime: Disk rotates in real time during drain
eot: Disk rotates to (near) end of track
Values: instant | realtime | eot
write-drain = instant
Index pulses suppressed when RDATA and WDATA inactive?
Values: yes | no
index-suppression = yes
Milliseconds from head-step start to RDATA active.
Values: 0 <= N <= 255
head-settle-ms = 12
Milliseconds delay from motor-on to drive ready.
On a standard unmodified Gotek the motor signal is not connected and a
non-default value here will have no effect. Most systems and software do
not care about correct motor behaviour, and default (ignore) works fine.
Values: ignore | 0 <= N <= 1000
motor-delay = ignore
What causes the disk-change (chg) signal to reset after disk insertion?
step: Step command received
pa14: CHGRST (pin 1 on old Sony drives), connected to PA14 (JTCK/SWCLK)
delay-N: Automatically after N*0.5sec (0 <= N <= 15)
chgrst = step
STARTUP / INITIALISATION
Disk image loaded or ejected at startup?
Values: yes | no
ejected-on-startup = yes
Which image (or folder) is selected at startup?
last: Last-selected item at power-off (recorded in IMAGE_A.CFG)
static: Static path specified in INIT_A.CFG
init: First item in root folder
Values: last | static | init
image-on-startup = last
Time in milliseconds to attempt to probe attached display.
You may set this to 0 if you have a 2-digit LED display attached.
Values: 0 <= N <= 65535
display-probe-ms = 3000
IMAGE NAVIGATION
Auto-select the current file after N seconds
N=0: disable auto-select
Values: 0 <= N <= 255
autoselect-file-secs = 0
Auto-select the current folder after N seconds
N=0: disable auto-select
Values: 0 <= N <= 255
autoselect-folder-secs = 0
Sorting of folder entries in native navigation mode.
always: Always sort folder entries. Large folders may be truncated.
never: Never sort folder entries, instead presenting them in FAT order.
small: Only sort folders which are small enough to sort in full.
Values: always | never | small
folder-sort = always
Priority of files vs subfolders when sorting folder entries:
folders: Folders listed before files
files: Files listed before folders
none: Files and folders are not differentiated
Values: folders | files | none
sort-priority = folders
Navigation mode for selecting images/slots
native: Navigate through all valid images/dirs
indexed: Navigate through DSKA0000, DSKA0001, ...
default: native unless overridden by HxC-compat-mode config
nav-mode = default
When navigating slots or folder, loop at min/max?
Values: yes | no
nav-loop = yes
Actions of first two buttons.
B1 | B2 | Both
zero: Prev | Next | Slot 0
eject: Prev | Next | Eject/Insert
htu: +10 | +1 | +100
rotary: Up-dir | Select/Eject/Insert | -
rotary-fast: Prev | Next | Up-dir [Prev/Next are accelerated]
reverse: Reverse sense of B1 and B2
Multiple values can be separated by commas, eg twobutton-action=eject,reverse
twobutton-action = zero
Input sensor type at the rotary-encoder inputs (pins PC10 and PC11):
[full | half | quarter]:
Rotary encoder, identified by fraction of a Gray-code cycle performed
per detent/click. If default value ('full') requires multiple
clicks/detents to move position then change to 'half' (if 2 clicks
per move) or 'quarter' (if 4 clicks).
[trackball]:
Blackberry-style trackball (eg. using Hall-effect sensors).
[buttons]:
Push-to-ground Prev/Next buttons.
[reverse]:
If the input is working in reverse, use this option to swap directions.
[v2]:
Use the rotary encoder logic from FlashFloppy v2.x. Use this if the
v3 logic is too strict and results in no, or missing, movements.
Multiple values can be separated by commas, eg rotary=quarter,reverse
Values: none | quarter | half | full | trackball | buttons | reverse | v2
rotary = full
Prefix for image names in indexed navigation mode. String can be empty ("").
indexed-prefix = "DSKA"
DISPLAY
Display Type.
auto: Auto-detect (7-seg LED, LCD, OLED)
lcd-CCxRR: CCxRR backlit LCD with I2C backpack (16<=CC<=40, 02<=RR<=04)
oled-128xNN: 128xNN I2C OLED (NN = 32 | 64)
-rotate: OLED view is rotated 180 degrees
-hflip: OLED view is flipped horizontally
-narrow[er]: OLED view is restricted to Gotek display cutout
(-narrow: 18 chars; -narrower: 16 chars)
-inverse: Inverse/reverse video (black text on white background)
-ztech: ZHONGJY_TECH 2.23" 128x32 SSD1305 OLED display
-slow: Run I2C bus slower (use this if OLED regularly blanks/corrupts)
Values: auto | lcd-CCxRR | oled-128xNN[-rotate][-narrow[er]]...
display-type = oled-128x64-rotate
OLED Font. Narrow and wide options.
Narrower 6x13 font permits:
- More characters per row
- Use of Gotek display cutout (eg. "display-type=oled-128x32-narrow")
Values: 6x13 | 8x16
oled-font = 6x13
OLED contrast/brightness.
Values: 0 <= N <= 255
oled-contrast = 143
Text height and arrangement on LCD/OLED and on OSD, respectively.
'default', or a comma-separated list (one entry per LCD/OLED row, top down).
Each list item is a digit plus optional height specifier: [d]
content-row: '0-3' = specified content row, '7' = blank
0: Current image name
1: Status
2: Image/Volume info
3: Current subfolder name
height specifier: 'd' = double height (32px, OLED only; ignored for LCD)
'default' depends on display, eg.: oled-128x32='0,1' ; oled-128x64='3,0d,1'
Values: [0-7][d] | default
display-order = default
osd-display-order = default
OSD text columns. This is currently respected only when no LCD/OLED is found.
Values: 16 <= N <= 40
osd-columns = 40
Turn an LCD or OLED display off after N seconds of inactivity
N=0: always off; N=255: always on
Values: 0 <= N <= 255
display-off-secs = 20
Switch on LCD/OLED display when there is drive activity?
yes: Trigger on track changes and disk writes
sel: Trigger on drive select
no: No automatic trigger
Values: yes | sel | no
display-on-activity = yes
LCD/OLED long filename scroll rate in milliseconds per update
Values: 100 <= N <= 65535
display-scroll-rate = 200
LCD/OLED pause time at start/end of scroll, in milliseconds
Zero means endless scroll
Values: 0 <= N <= 65535
display-scroll-pause = 2000
LCD/OLED long filename scroll rate during navigation (ms per update)
Values: 0 <= N <= 65535
nav-scroll-rate = 80
LCD/OLED long filename pause before scroll, during navigation (milliseconds)
Values: 0 <= N <= 65535
nav-scroll-pause = 300
MISCELLANEOUS
Speaker volume for head STEP
Values: 0 <= N <= 20
step-volume = 10
Speaker volume for insert, eject, and slot-number notifications.
Slot number is indicated by a sequence of beeps when an image is mounted
iff "slotnr" is specified. The slot number is then notified by a sequence of
long beeps (each counting +5), followed by a sequence of short beeps
(each counting +1).
Values: N[,slotnr] (0 <= N <= 15)
notify-volume = 0
Report the specified version number to host software
Values: ("" means report real version)
eg. da-report-version = "v3.0.0.0"
da-report-version = ""
Automatically extend certain types of truncated image file (SSD,DSD,TRD)?
Values: yes | no
extend-image = yes
Also did a factory reset. No difference unfortunately. Unless you see something in the config, I'll have to dig up a new floppy cable.
I don't see anything wrong in the config.
Closing as not a bug. You can get further tech support advice on forums, Facebook, or Discussions tab here in GitHub.