RELEASE_NOTES 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. ************************************
  2. ** Greaseweazle Release Notes
  3. ** Keir Fraser <keir.xen@gmail.com>
  4. ************************************
  5. ** v0.17 - 19 May 2020
  6. - Windows: New self-contained executable distribution
  7. - No need to install Python, or module dependencies
  8. - Mac, Linux: Main script is directly executable
  9. - No need to manually invoke the Python interpreter
  10. - GW host tool: Help-text description for each available action
  11. ** v0.16 - 15 May 2020
  12. - F7 Firmware: Enable over-drive voltage mode
  13. - Required for reliable 216MHz operation (see datasheet)
  14. - Bootloader update:
  15. - 'gw.py update --bootloader' updates the bootloader
  16. - Not normally required
  17. - Failure may brick the Weazle and require full reflash: Take care!
  18. - Update build system to work with Windows MinGW environment
  19. ** v0.15 - 5 May 2020
  20. - Host tool improvements:
  21. - IPF: More robust conversion to raw flux for writeout
  22. - HFE: Fix crash when writing out HFE from third party tools
  23. - F7 Firmware improvements:
  24. - Preparation for High Speed USB (future board using 730Z8 MCU)
  25. - Enable Instruction and Data caches (10x execution speedup)
  26. - Various improvements to bandwidth as reported by 'gw.py bandwidth'
  27. ** v0.14 - 29 April 2020
  28. - IPF: Full write support (weak data, index misalignment)
  29. - New GW commands: bandwidth, erase
  30. - bandwidth: Measure USB read/write bandwidth
  31. - erase: Erase a disk
  32. - F7 USB: Improved bandwidth when writing to disk
  33. - Much less likely to see FluxUnderflow failures
  34. - update: Fix a bug which could fail to reopen the GW device for update
  35. - update: Automatically find the update file if filename not specified
  36. - Control script: Tidier notification of errors (no scary backtrace)
  37. ** v0.13 - 25 April 2020
  38. - HFE: Read & write support
  39. - IPF: Preliminary write support
  40. - Requires SPS/CAPS support library. See the wiki.
  41. - Weak data not yet supported (RNC "Protect Process" protection, & others)
  42. - Write splice is always rotated to the index (affects Speedlock & others)
  43. - Also TODO: Verified writes
  44. - USB: Use the VID:PID pair assigned to Greaseweazle (1201:4d69)
  45. - New prerequisite: 'bitarray' module. See the wiki.
  46. ** v0.12 - 10 March 2020
  47. - GW Autodetect: General improvements, and now works on Windows 7
  48. - New read parameter --double-step to double-step drive heads
  49. - Useful for reading a 40-cylinder disk in an 80-cylinder drive
  50. - New 'pin' command allows a floppy pin to be set to specified level
  51. - Currently supported only for pin 2 (DENSEL)
  52. - New 'reset' command resets the Greaseweazle to power-on settings
  53. - Motors off, drives deselected, power-on pin levels and delay values
  54. ** v0.11 - 21 January 2020
  55. - GW.py: Auto-detect the COM/serial port device name
  56. - The device argument is now optional!
  57. - USB: Provide a serial-id string to the host
  58. - Identifier is unique to each Greaseweazle device
  59. - Allows disambiguation between multiple Greaseweazle devices
  60. - Recommended: Full flash from HEX file (embeds serial in bootloader)
  61. - Ubuntu: Udev script now creates a /dev/greaseweazle symlink
  62. ** v0.10 - 17 January 2020
  63. - STM32F7xx: Multi-drive support via drive-select config option
  64. - Up to three Shugart drives or two IBM/PC drives
  65. - gw.py read|write --drive {a,b,0,1,2}
  66. - See the "Drive Select" wiki page
  67. ** v0.9 - 7 January 2020
  68. - Activity LED
  69. - Lights while a USB-issued command is in progress
  70. - Flashes when enumerated but idle in the firmware-update bootloader
  71. ** v0.8 - 6 January 2020
  72. - STM32F73xx: Various Fixes and Improvements
  73. - Allow Firmware Update mode to be forced via strapping Serial RX/TX
  74. - Fix bogus sample values at start of read flux values
  75. - Fix some time constants to be in units of the sample clock
  76. - USB: Advertise USB 2.0 device descriptor
  77. ** v0.7 - 6 December 2019
  78. - USB: Fix end-of-stream detection on track writes
  79. - Writes of empty/unformatted tracks sometimes hung forever
  80. - No Flux Area: Firmware automatically masters long NFAs during track writes
  81. - Generating no flux transitions does not read back as a NFA
  82. - STM32F73xx: Initial support for new STM32 MCU
  83. - Two HEX files are included: Use Greaseweazle-F1-* for existing boards!
  84. - Single unified UPD file containing both firmware images
  85. ** v0.6 - 15 November 2019
  86. - gw.py: Big overhaul of underlying Python package
  87. - Action (read, write, update) must come first on the command line
  88. - eg. "python3 gw.py read --ecyl=39 foo.scp COM3"
  89. - gw.py: New action "delays" to print/set delay parameters
  90. - eg. "python3 gw.py delays --step=10000" to increase step time to 10ms
  91. ** v0.5 - 11 November 2019
  92. - USB: Overhaul the protocol and allow writes to be terminated at index
  93. - Terminate-at-index is always used by current Python control script
  94. - Terminate-at-index prevents an over-long write from overwriting itself
  95. - Fix interruption of track writes (eg. KeyboardInterrupt)
  96. - gw.py: New option --adjust-speed to normalise flux times for target drive
  97. - Measures RPM of the target drive and calculates an adjustment factor
  98. ** v0.4 - 5 November 2019
  99. - Blinky: Diagnostic test firmware to detect fake STM32 chips
  100. - https://github.com/keirf/Greaseweazle/wiki/STM32-Fakes
  101. - Floppy Write: Fix for very short flux timings
  102. - Floppy Read: Fix for very long flux timings
  103. - USB: Small improvement to double-buffer logic
  104. ** v0.3 - 30 October 2019
  105. - Bootloader: Fix Programming-Jumper detection
  106. - Read Track: Various minor fixes
  107. - SCP: Fix the SCP file headers generated by "gw.py read"
  108. ** IMPORTANT USER INSTRUCTIONS **:
  109. - Users must serial-update using the v0.3 HEX file
  110. - DO NOT update from v0.2 using the UPD file
  111. - May need to install the crcmod package: eg "pip3 install crcmod"
  112. ** v0.2 - 29 October 2019
  113. - USB: Fix hangs during "gw.py read"
  114. - Thanks to Charlie Smurthwaite for telling me how to fix this!
  115. - USB: Improved bandwidth (double-buffered IN/OUT endpoints)
  116. - Reduces risk of buffer underflow/overflow during disk operations
  117. - Firmware Update: Requires a jumper across A14 (aka DCL) and GND
  118. - eg. "python gw.py update Greaseweazle-v0.2.upd COM3"
  119. ** v0.1 - 17 October 2019
  120. - First release