Commit graph

62 commits

Author SHA1 Message Date
Keir Fraser
13d743d9b5 mk_qd.py: Allow QD image lead-in to be configured on command line 2023-01-30 18:01:25 +00:00
Keir Fraser
d44a5e72ee FF.CFG: New option notify-volume= for notifying on insert/eject via speaker.
Refs #716
2023-01-17 16:01:26 +00:00
Keir Fraser
8637c47cbf New FF.CFG option osd-display-order=, analagous to LCD/OLED display-order= 2022-10-09 12:01:22 +01:00
Keir Fraser
a259e23bc6 build: Check that output Hex files fit within their assigned Flash space.
Refs #660
2022-06-24 12:20:24 +01:00
Keir Fraser
2e3a130ac7 New universal UPD file format, includes firmware for both STM32F105 and AT32F435. 2022-04-14 14:20:32 +01:00
Keir Fraser
0c174ec927 build: Clean up RPATH into new build variable SRCDIR. 2022-03-13 16:00:56 +00:00
Keir Fraser
773d173717 Modify build system to place artefacts in separate out/ folder 2022-03-13 15:27:12 +00:00
Keir Fraser
7f5642abe0 AT32F435: Initial port 2022-03-10 16:05:53 +00:00
Keir Fraser
3633e9c124 Rename the functions-in-RAM data section to ".ramfuncs". Explicitly
include this renamed section in the linker script since it no longer
falls under the ".data*" wildcard.

This avoids "setting incorrect section attributes for .data.ramfunc"
which was previously worked around by removing(!) the executable
attribute. This caused far bigger problems with binutils >= 2.36

Refs #563
2021-11-06 17:21:45 +00:00
Keir Fraser
c84bbe9c2b Beta support for Artery microcontrollers
- SFRC922D using AT32F415RCT7
 - SFRC922AT3 using AT32F415CBT7
2021-04-15 10:30:28 +01:00
Keir Fraser
c43c285b62 openocd: Add 'make ocd' target 2020-08-21 09:02:19 +01:00
Keir Fraser
bff87bbfde FF.CFG: write-drain = instant | realtime | eot
'eot' fixes Not Ready errors on large writes and disk copies to
Gotek on Amstrad PPC640/512.

Fixes #320
2020-03-13 07:14:42 +00:00
Keir Fraser
c82596eb40 FF.CFG: display-on-activity=sel will trigger OLED/LCD when drive is selected.
Refs #321
2020-03-03 10:30:50 +00:00
Keir Fraser
fc181422e6 edsk: Fix double-step script to support Extended CPC DSK images.
Refs #318
2020-02-16 22:57:39 +00:00
Keir Fraser
0f6b448348 edsk: Provide a script to double-up EDSK cylinders to emulate "double stepping"
Refs #318
2020-02-16 19:55:33 +00:00
Keir Fraser
5538be6686 Remove double underscore prefix from __packed and __aligned() definitions.
It is polluting the GCC namespace and breaks the build with GCC v9.
2019-12-10 15:04:55 +00:00
Keir Fraser
de919ae023 Quickdisk: Initial support 2019-10-09 11:29:27 +01:00
Keir Fraser
3d9329c44a CHGRST: Implement chgrst=delay-N to automatically reset DSKCHG some
multiple of 0.5s after a disk is inserted.
2019-07-08 05:41:10 +01:00
Keir Fraser
71a0b70efa FF.CFG: Rename oled-text= to display-order=. It now controls both LCD and OLED.
Remove the 's' single-height specifier, this is teh default height anyway.
Double-height is now an optional 'd' suffix to each row's content line nr.
2019-06-25 09:16:45 +01:00
Keir Fraser
d2021a8def LCD: Support 4-row LCDs (specifically the common 2004 form factor). 2019-06-21 15:42:18 +01:00
Keir Fraser
83186755a6 FF.CFG: New option oled-text=...
Default 128x64 display is now 3 rows, only 1st row double height.

The sizing and row ordering is configurable.
2019-06-12 13:12:17 +01:00
Keir Fraser
3f31b68f77 FF.CFG: New option 'chgrst = step | pa14'
Allows emulation of old drives with "Disk Change Reset" line.
2019-06-09 18:51:12 +01:00
Keir Fraser
6f51cb70d5 Call traces in crash handler 2019-06-03 14:28:28 +01:00
Keir Fraser
892d5e0669 FF.CFG: New option sort-priority=folders|files|none
Default sort priority is folders first, then files.

Also fix bug with folders >1000 items.
2019-05-23 16:56:52 +01:00
Keir Fraser
756333a04d Replace the Reloader mess with an all-in-one Bootloader update file.
Also allow the update file to be supplied on SD Card (Enhanced Gotek only).

Fixes #229
2019-05-23 14:26:33 +01:00
Keir Fraser
bf36c6c027 FF.CFG: New option 'motor-delay = ignore | 0-1000'
Allows to enable processing of MOTOR input signal, and modify
READY and INDEX output behaviours accordingly.

RDATA does not respect MOTOR: Probably noone cares.
2019-05-17 21:02:42 +01:00
Keir Fraser
b210e8cdc0 Sort folder entries in direct navigation mode.
New FF.CFG option folder-sort=always,never,small

Allows new behaviour to be disabled always, or only for large folders
(which by default get truncated).
2019-04-23 17:36:46 +01:00
Keir Fraser
18ce89d083 scripts: mk_hfe.py: Make a blank HFE image with specified geometry and rates 2019-04-20 12:17:04 +01:00
Keir Fraser
bf7b644b35 edsk.py: Interpret non-extended DSK images correctly. 2019-03-26 11:26:44 +00:00
Keir Fraser
339921a2f3 FF.CFG: New twobutton-action= and rotary= sub-options 'reverse'.
Reverse sense of direction of original two buttons and rotary
encode knob, respectively.
2018-10-29 14:35:59 +00:00
Keir Fraser
8e03ea6fda edsk_fix_gaps.py: De-interleave sectorsd which include IDAM GAPS 2018-07-24 09:21:20 +01:00
Keir Fraser
215bce3086 dsk: Do not include CRC+GAP3 at end of irregular-sized data. The data
already includes the CRC+GAP3.
Also introduce a script which detects pre-sync 00 bytes at the end
of irregular data, and strips them.
2018-07-24 08:21:48 +01:00
Keir Fraser
942bf7703b edsk.py: Detect possibly bogus pre-sync bytes in GAPS 2018-07-23 10:31:09 +01:00
Keir Fraser
43cd0df2a6 edsk.py: Better determination of type of 'weird sized' sector.
GAPS vs Weak vs Incomplete. Also clamp N field value correctly.
2018-07-18 22:50:23 +01:00
Keir Fraser
75c28a85fe dsk: Handle status-register values 00:01 (same as 01:01)
SAMdisk produces these values for some CPC protections.
2018-07-18 21:03:32 +01:00
Keir Fraser
8cb1880d71 FF.CFG: New options pin02= and pin34= allow precise configuration.
Refs #137
2018-07-18 08:08:27 +01:00
Keir Fraser
1eb6b95cd9 scripts: Make Python scripts compatible with Python 2.7 and Python 3.x 2018-07-13 23:47:50 +01:00
Keir Fraser
146888aa42 scripts: Remove signature check from Speedlock fixer.
Not all Speedlock-protected images have the SPEEDLOCK signature.
Refs #140
2018-07-11 22:03:25 +01:00
Keir Fraser
ed7b1af136 scripts: Whitespace 2018-07-10 10:42:43 +01:00
Keir Fraser
86066ef8dc New script for fixing up Speedlock EDSK images 2018-07-10 10:41:12 +01:00
Keir Fraser
cf86a6fcf8 Add a helpful script for dumping useful info about EDSK files. 2018-06-26 14:03:06 +01:00
Keir Fraser
71d53ea483 lcd: Allow LCD width to be specified: 16 <= N <= 40 2018-06-26 10:28:16 +01:00
Keir Fraser
710d75e387 oled: Align fonts and target buffer, can make memcpy() faster 2018-06-14 13:18:29 +01:00
Keir Fraser
9b4ac45c7a oled_font_6x13: Auto-generate C file from BDF as part of build process 2018-06-13 19:44:47 +01:00
Keir Fraser
ee8beff1d8 FF.CFG: New option "twobutton-action = rotary-fast"
Fixes #127
2018-06-11 12:27:12 +01:00
Keir Fraser
5467d9b514 mk_font: Support character bounding box smaller than overall bounding box. 2018-06-11 09:05:56 +01:00
Keir Fraser
a6016581bf usb-dfu: Automatically create dfuse *.dfu target 2018-05-09 11:04:24 +01:00
Keir Fraser
cdf2a26246 ibmpc: New interface=ibmpc-hdout asserts pin 2 if HD image mounted 2018-03-09 12:55:38 +00:00
Keir Fraser
d3ec20b924 oled: Replace 7x16 font with classic 6x13 font. Make it default, but
keep the 8x16 font around (for now).
Fixes #55
2018-02-21 14:53:24 +00:00
Keir Fraser
73438b8847 ff.cfg: New option "rotary = none | simple | gray"
Allows use of higher quality mechanical and optical rotary encoders
with proper Gray code output.

Fixes #50
2018-02-08 23:40:34 +00:00