Skip to content

Commit

Permalink
Updated to 1.39
Browse files Browse the repository at this point in the history
  • Loading branch information
geraldholdsworth committed Feb 26, 2022
1 parent aa0147d commit 7efb231
Show file tree
Hide file tree
Showing 53 changed files with 23,391 additions and 136,392 deletions.
22 changes: 18 additions & 4 deletions Documentation/Changes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -749,18 +749,31 @@ Bug fixes
* Writes to an Acorn FS or DOS Plus partition of an ADFS hybrid sometimes failed to work correctly.
* At some point in a previous version, the root name 'dropped' off the parent property for ADFS files. This meant that the search results returned files with the root missing from the pathname and therefore unable to locate when clicked on.

1.39 -
--------------------------
1.39 - 26th February 2022
-------------------------
New or improved features
* When the root directory is selected, the 'Directory Title' field now reads 'Disc Title' and changing the text will update the disc title of the image, instead of failing with Acorn DFS.
* The Display Free Space button's hint text has been changed to 'View/Edit Image Details' to more accurately reflect the dialogue box.
* Extended the ADFS interleave options beyond ADFS 'L'. Forcing an interleave option will use that option for any ADFS format, not just 'L'.
* Can now change the interleave method for any ADFS image, if the interleave is forced using the options (i.e., not automatic).
* Compiled using Lazarus version 2.2 which should fix some bugs outside the control of the author.
* Added option to stop DFS validation failing if there were files that went over the edge of the disc.
* Added option whether to compress UEF files or not in the GUI.
* Added option stop DFS validation failing on blank filenames.
* Adjusted the Acorn FS Level 3 slider when creating new images to be more accurate.
* Added in some extra code to read in copy protected Elite tape images, and others using a similar protection.
* Restricted the maximum AFS L3 size to be 128MB-1, until I work out the different format introduced in 1988 by Acorn.

Bug fixes
* Temporarily removed the 'file goes over disc edge' checks as some valid images were not getting opened.
* Creating a double sided DFS image failed to work.
* Creating a Watford DFS image failed to work.
* When the ADFS filename is shorter than the available characters required for the attributes, not all the attributes were read in. This manifested itself with a directory entry shorter than 4 characters.
* Importing files with a filename longer than allowed were still getting added to DFS and UEF images.
* An extra byte (NUL) was added to UEF files when saving, causing some emulators to get confused.
* The ID process still checked images even if it had already been identified.
* The maximum size for an Acorn FS Level 2 image is 1MB, not 512MB. The selector has been adjusted accordingly.
* When reading the header for an Acorn FS Level 3 image, the incorrect disc size was read. Anything over 16.7MB was read incorrectly.
* Some areas of the file details panel on the main window were not getting repainted correctly with the selected tile.

Platform History
----------------
Expand All @@ -771,4 +784,5 @@ Version 1.05.1 : Linux 64 bit added
Version 1.05.3 : macOS 32 bit added
Version 1.05.9 : Linux 32 bit added
Version 1.05.10 : Raspbian OS 32 bit added
Version 1.35 : No Raspbian OS 32 bit version
Version 1.35 : No Raspbian OS 32 bit version
Version 1.39 : macOS ARM added
Binary file modified Documentation/Disc Image Manager User Guide.pdf
Binary file not shown.
11 changes: 9 additions & 2 deletions Documentation/ToDo.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ Bugs
* Scaling - there is a report that icons 'grow' on scaled screens. I have been unable to reproduce this.
+ This appears to happen on Windows (and probably Linux), with single screen only (dual or more it does not do this), resolution of 1400 by anything (or more), and scaled to more than 100%. The icons in the Directory Listing grow as the mouse moves. - TO BE TESTED
+ In addition, the tiling under the graphic for the filetype in the File Details, when it is not big enough, leaves a horrible black edge to the right and bottom. - TO BE TESTED
* File details tiling leaves empty areas after ejecting a disc while a file is selected.
* 'Bad FS Map' from BeebEm when loading an ADFS/AFS hybrid image after making a change to the ADFS partition. Unable to reproduce.
* Some SS DFS images are IDed as DS images when 'zero length images' is selected in the preferences.
* Access violation has been reported when creating an ADFS HDD image (default options) on Windows. - UNABLE TO REPLICATE
* Does not work on Windows 11. - UNABLE TO REPLICATE

General
* Drag and Drop facilities out of the application...currently looking unlikely for cross platform. This will need to be done using 'code-per-platform' directives.
Expand All @@ -20,12 +21,18 @@ General
* Cancel button for progress display?
* Side pane (left hand side) to allow separate images to be opened (REF:3).
* Use side pane for opening MMFS images and remove the code from TDiscImage (REF:3).
* Add option for 'beyond disc edge check' to ID DFS images in the settings.
* For macOS, change the settings being saved to the registry to being saved in a plist file, or within the application directory itself.

ADFS
* Change the size of the ADFS partition or image.

CFS (UEF)
* Remember the last block read and compare with the next to get around some tape protection methods.

AFS
* AFS0 images do not get created correctly (in particular the free space allocation maps).
* Add option to new Level 3 images for pre-1988 or post-1988 format.

Amiga
* Write/Delete/Rename files/directories to Amiga images.
* Create blank Amiga images.
Expand Down
9 changes: 4 additions & 5 deletions LazarusSource/AFSPartitionUnit.lfm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
object AFSPartitionForm: TAFSPartitionForm
Left = 436
Height = 156
Top = 248
Top = 272
Width = 320
BorderIcons = [biSystemMenu]
BorderStyle = bsDialog
Expand All @@ -11,7 +11,7 @@ object AFSPartitionForm: TAFSPartitionForm
Color = 15527148
OnPaint = FormPaint
Position = poMainFormCenter
LCLVersion = '2.0.12.0'
LCLVersion = '2.2.0.4'
object PartitionSize: TTrackBar
Left = 0
Height = 37
Expand All @@ -32,7 +32,6 @@ object AFSPartitionForm: TAFSPartitionForm
Align = alTop
Alignment = taCenter
Caption = 'PartitionSizeLabel'
ParentColor = False
end
object CancelButton: TBitBtn
Left = 8
Expand Down Expand Up @@ -85,8 +84,8 @@ object AFSPartitionForm: TAFSPartitionForm
ChildSizing.ShrinkVertical = crsScaleChilds
ChildSizing.Layout = cclLeftToRightThenTopToBottom
ChildSizing.ControlsPerLine = 1
ClientHeight = 37
ClientWidth = 310
ClientHeight = 39
ClientWidth = 318
ItemIndex = 0
Items.Strings = (
'Acorn File Server'
Expand Down
38 changes: 15 additions & 23 deletions LazarusSource/AboutUnit.lfm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
object AboutForm: TAboutForm
Left = 433
Height = 306
Top = 203
Top = 227
Width = 520
AutoSize = True
BorderIcons = [biSystemMenu]
Expand All @@ -13,7 +13,7 @@ object AboutForm: TAboutForm
Font.Color = clWindowText
Font.Name = 'Tahoma'
Position = poMainFormCenter
LCLVersion = '2.0.12.0'
LCLVersion = '2.2.0.4'
object CreditsPanel: TPanel
Left = 0
Height = 306
Expand All @@ -27,7 +27,7 @@ object AboutForm: TAboutForm
OnPaint = CreditsPanelPaint
object lb_Title: TLabel
Left = 1
Height = 36
Height = 38
Top = 1
Width = 518
Align = alTop
Expand All @@ -37,13 +37,12 @@ object AboutForm: TAboutForm
Font.Height = -32
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object WrittenByLabel: TLabel
Left = 1
Height = 13
Top = 37
Top = 39
Width = 518
Align = alTop
Alignment = taCenter
Expand All @@ -53,13 +52,12 @@ object AboutForm: TAboutForm
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object lb_Version: TLabel
Left = 1
Height = 17
Top = 63
Height = 19
Top = 65
Width = 518
Align = alTop
Alignment = taCenter
Expand All @@ -68,13 +66,12 @@ object AboutForm: TAboutForm
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object GHWebsiteLabel: TLabel
Left = 1
Height = 17
Top = 80
Height = 19
Top = 84
Width = 518
Align = alTop
Alignment = taCenter
Expand All @@ -84,13 +81,12 @@ object AboutForm: TAboutForm
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object GitHubWebsiteLabel: TLabel
Left = 1
Height = 17
Top = 101
Height = 19
Top = 107
Width = 518
Align = alTop
Alignment = taCenter
Expand All @@ -100,13 +96,12 @@ object AboutForm: TAboutForm
Font.Height = -16
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object LicenceLabel: TLabel
Left = 1
Height = 12
Top = 122
Height = 14
Top = 130
Width = 518
Align = alTop
Alignment = taCenter
Expand All @@ -115,27 +110,25 @@ object AboutForm: TAboutForm
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object AckLabel: TLabel
Left = 1
Height = 180
Top = 134
Height = 204
Top = 144
Width = 518
Align = alTop
Alignment = taCenter
Caption = 'Many thanks to the users and contributors of the Stardot forum whose feedback and advice has been greatly appreciated. Also a big thank you to Jasper Renow-Clark who helped me with the ADFS formats in the beginning, before this project started.'#10'This project was concieved as a module to the Repton Map Display application, with this application just being a demo (and for me to try the code out with). In December 2020, it became the Disc Image Manager.'#10'Additional thanks go to Robert Sprowson for his help with working out the parameters for ADFS Hard Drive images, and to David Pilling for his help with the Spark module.'#10'Suggestions, bug reports, or whatever please do not hesitate to email me on [email protected], or contact via Stardot forum.'
Font.Color = clWindowText
Font.Name = 'Tahoma'
ParentColor = False
ParentFont = False
WordWrap = True
end
object GraphicsLabel: TLabel
Left = 1
Height = 13
Top = 50
Top = 52
Width = 518
Align = alTop
Alignment = taCenter
Expand All @@ -145,7 +138,6 @@ object AboutForm: TAboutForm
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object IconImage: TImage
Expand Down
2 changes: 1 addition & 1 deletion LazarusSource/AboutUnit.pas
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
unit AboutUnit;

{
Copyright (C) 2018-2021 Gerald Holdsworth [email protected]
Copyright (C) 2018-2022 Gerald Holdsworth [email protected]
This source is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public Licence as published by the Free
Expand Down
19 changes: 8 additions & 11 deletions LazarusSource/ChangeInterleaveUnit.lfm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
object ChangeInterleaveForm: TChangeInterleaveForm
Left = 549
Height = 124
Top = 222
Top = 246
Width = 234
BorderIcons = []
BorderStyle = bsDialog
Expand All @@ -11,7 +11,7 @@ object ChangeInterleaveForm: TChangeInterleaveForm
Color = 15527148
OnPaint = FormPaint
Position = poMainFormCenter
LCLVersion = '2.0.12.0'
LCLVersion = '2.2.0.4'
object CancelButton: TBitBtn
Left = 8
Height = 30
Expand Down Expand Up @@ -51,46 +51,43 @@ object ChangeInterleaveForm: TChangeInterleaveForm
end
object CurrentLabel: TLabel
Left = 0
Height = 14
Height = 16
Top = 0
Width = 234
Align = alTop
Alignment = taCenter
Caption = 'Current Interleave Method'
Font.Color = clBlue
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object lb_Current: TLabel
Left = 0
Height = 15
Top = 14
Height = 16
Top = 16
Width = 234
Align = alTop
Alignment = taCenter
Caption = 'Interleave'
Font.Name = 'Courier New'
ParentColor = False
ParentFont = False
end
object NewLabel: TLabel
Left = 0
Height = 14
Top = 29
Height = 16
Top = 32
Width = 234
Align = alTop
Alignment = taCenter
Caption = 'New Interleave Method'
Font.Color = clBlue
Font.Style = [fsBold]
ParentColor = False
ParentFont = False
end
object cb_NewMethod: TComboBox
Left = 0
Height = 26
Top = 43
Top = 48
Width = 234
Align = alTop
Color = 15527148
Expand Down
7 changes: 3 additions & 4 deletions LazarusSource/CustomDialogueUnit.lfm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
object CustomDialogue: TCustomDialogue
Left = 668
Height = 195
Top = 257
Top = 281
Width = 360
BorderIcons = []
BorderStyle = bsDialog
Expand All @@ -11,7 +11,7 @@ object CustomDialogue: TCustomDialogue
Color = 15527148
OnPaint = FormPaint
Position = poMainFormCenter
LCLVersion = '2.0.12.0'
LCLVersion = '2.2.0.4'
object ErrorImg: TImage
Left = 8
Height = 42
Expand Down Expand Up @@ -213,13 +213,12 @@ object CustomDialogue: TCustomDialogue
OnPaint = FormPaint
object MessageLabel: TLabel
Left = 0
Height = 42
Height = 48
Top = 40
Width = 286
Alignment = taCenter
Caption = 'The file has been detected as an image.'#10'Would you like to import the contents or add to the open image?'
Constraints.MaxWidth = 288
ParentColor = False
WordWrap = True
end
end
Expand Down
2 changes: 1 addition & 1 deletion LazarusSource/CustomDialogueUnit.pas
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
unit CustomDialogueUnit;

{
Copyright (C) 2018-2021 Gerald Holdsworth [email protected]
Copyright (C) 2018-2022 Gerald Holdsworth [email protected]
This source is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public Licence as published by the Free
Expand Down
Loading

0 comments on commit 7efb231

Please sign in to comment.