Skip to content

Commit a426f43

Browse files
Updated to 1.47.5
1 parent 975cd14 commit a426f43

20 files changed

Lines changed: 697 additions & 293 deletions

Documentation/Changes.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1021,6 +1021,16 @@ New or improved features
10211021
* Added option to add implied 'RW' attributes to the *.inf file when exporting files from DFS/CFS/RFS to the host system.
10221022
* Expanded the diagnostics reports in the debug file.
10231023
* Major overhaul of all the functions and procedures to ensure proper variable initialisation.
1024+
* In the console, passing the 'config' command without enough parameters would list all the valid parameters instead of producing an error.
1025+
* In the console, the 'status' command now lists the configuration options alphabetically.
1026+
* In the console, the prompt will differ in colour depending on the image status: no image loaded - black; unmodified image loaded - blue; modified image loaded - red.
1027+
* Added a new command to the console, 'search'. This is similar to 'extract', but just lists the files found rather than extracting them.
1028+
* Added a new wildcard to file search, '|'. This needs to be the first character and is an exclusion, so that any files found following this are excluded from the search results.
1029+
* Added a new command to the console, 'find'. This is similar to 'add', but just lists the files found on the OS folder rather than adding them.
1030+
* Added a new command to the console, 'ls'. This catalogues the files in the local OS folder. The same as 'find *'.
1031+
* Added a new command to the console, 'type'. This sets the filetype for a file.
1032+
* Some text formatting and improvements in the console text.
1033+
* Wildcards are now accepted for the console commands 'access', 'exec', 'load', 'type' and 'stamp'.
10241034

10251035
Bug fixes
10261036
* ADFS directories would use the default ID (Hugo, Nick or SBPr/oven) depending on whether it is old, new or big. This would mean that images could end up with a mis-match of IDs, which Arthur ADFS was not keen on.
@@ -1029,6 +1039,7 @@ Bug fixes
10291039
* Decompacting an ADFS Old Map image a second time after decompacting would hang the application.
10301040
* Creating a new ADFS Old Map image, then adding a new directory, renaming then deleting would fail to delete. This bug is related to the failure to decompact bug.
10311041
* FAT12 HDD sizes of above 31MB were permitted to be created, which will produce invalid images.
1042+
* When changing the load and execution addresses of a file, editing one then clicking on the other would make the one you were editing disappear.
10321043

10331044
Platform History
10341045
----------------

LazarusSource/ConsoleAppUnit.pas

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ interface
2323

2424
uses
2525
{$IFDEF Windows}Windows,{$ENDIF}
26-
Classes, SysUtils, CustApp, MainUnit, Forms;
26+
Classes, SysUtils, CustApp, MainUnit, Forms, DiscImage;
2727

2828
type
2929

@@ -67,6 +67,8 @@ function CheckConsole: Boolean;
6767
FcmdBlue = #$1B'[94m';
6868
FcmdMagenta= #$1B'[95m';
6969
FcmdCyan = #$1B'[96m';
70+
//Number of rows for the console
71+
ConsoleWidth=80;
7072

7173
implementation
7274

@@ -183,7 +185,7 @@ function TConsoleApp.UserInterface: Boolean;
183185
ScriptOpen:=False;
184186
//Write out a header
185187
Write(cmdRed+cmdInverse);
186-
WriteLn(StringOfChar('*',80));
188+
WriteLn(StringOfChar('*',ConsoleWidth));
187189
Write(cmdNormal+cmdBold);
188190
Write(MainForm.ApplicationTitle+' Console V'+MainForm.ApplicationVersion);
189191
WriteLn(' by Gerald J Holdsworth');
@@ -197,7 +199,9 @@ function TConsoleApp.UserInterface: Boolean;
197199
WriteLn(cmdBold+'Ready'+cmdNormal);
198200
repeat
199201
//Prompt for input
200-
write('>');
202+
if MainForm.Image.FormatNumber<>diInvalidImg then //Change the colour depending on whether changed or not
203+
if MainForm.HasChanged then Write(cmdRed) else Write(cmdBlue);
204+
write(cmdBold+'>'+cmdNormal);
201205
//Read a line of input from the user
202206
ReadInput(input);
203207
//Process the input
@@ -220,7 +224,7 @@ function TConsoleApp.UserInterface: Boolean;
220224
if ScriptOpen then ScriptFile.Free;
221225
//Footer at close of console
222226
Write(cmdRed+cmdInverse);
223-
Write(StringOfChar('*',80));
227+
Write(StringOfChar('*',ConsoleWidth));
224228
WriteLn(cmdNormal);
225229
//Exit or not?
226230
Result:=LowerCase(Lparams[0])='exit';

LazarusSource/DiscImage.pas

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -816,7 +816,7 @@ TFragment = record //For retrieving the ADFS E/F fragment informati
816816
sfn: Boolean=False): Boolean;
817817
function FileExists(filename: String;var dir,entry: Cardinal;
818818
sfn: Boolean=False): Boolean; overload;
819-
function FileSearch(search: TDirEntry): TSearchResults;
819+
function FileSearch(search: TDirEntry;AddTo: TSearchResults=nil): TSearchResults;
820820
function FixDirectories: Boolean;
821821
function FormatFDD(major: Word;minor: Byte;tracks: Byte=0): Boolean;
822822
function FormatFDD(major: Word;filename: String): Boolean; overload;
@@ -832,8 +832,8 @@ TFragment = record //For retrieving the ADFS E/F fragment informati
832832
function GetDirSep(partition: Byte): Char;
833833
function GetFileCRC(filename: String;entry:Cardinal=0): String;
834834
function GetFileMD5(filename: String;entry:Cardinal=0): String;
835-
function GetFileTypeFromName(filetype: String): Integer;
836-
function GetFileTypeFromNumber(filetype: Integer): String;
835+
function GetFileType(filetype: String): Integer;
836+
function GetFileType(filetype: Integer): String; overload;
837837
function GetInterleaveString(Inter: Byte): String;
838838
function GetMaxLength: Cardinal;
839839
function GetNumberOfInterleaves: Byte;

0 commit comments

Comments
 (0)