diff --git a/backup/main.lfm b/backup/main.lfm index 07313d9..702f061 100644 --- a/backup/main.lfm +++ b/backup/main.lfm @@ -329,7 +329,6 @@ object GUIForm: TGUIForm BevelOuter = bvNone ClientHeight = 589 ClientWidth = 1014 - Color = clAqua ParentColor = False TabOrder = 2 object sidecarPanel: TPanel @@ -5660,6 +5659,13 @@ object GUIForm: TGUIForm object N7: TMenuItem Caption = '-' end + object miOpenPAK: TMenuItem + Caption = 'Open microPAK...' + OnClick = miOpenPAKClick + end + object N16: TMenuItem + Caption = '-' + end object miOpenFreeze: TMenuItem Caption = 'Open Freeze...' OnClick = miOpenFreezeClick @@ -10465,7 +10471,7 @@ object GUIForm: TGUIForm object odDiskImages: TOpenDialog Title = 'Open Disk Image' DefaultExt = '.*' - Filter = 'All Floppy Images|*.dsk; *.do; *.po; *.woz; *.nib|All HDD Images|*.po; *.2mg; *.hdv|Disk Image|*.dsk|ProDOS Ordered Image|*.po|DOS Ordered Image|*.do|Nibble Image|*.nib|WOZ Image|*.woz|2MG Image|*.2mg|HDV Image|*.hdv' + Filter = 'All Floppy Images|*.dsk; *.do; *.po; *.woz; *.nib|All HDD Images|*.po; *.2mg; *.hdv|MicroPAK|*.pak|Disk Image|*.dsk|ProDOS Ordered Image|*.po|DOS Ordered Image|*.do|Nibble Image|*.nib|WOZ Image|*.woz|2MG Image|*.2mg|HDV Image|*.hdv' left = 24 top = 104 end diff --git a/backup/main.pas b/backup/main.pas index 0bb84e0..0440ce0 100644 --- a/backup/main.pas +++ b/backup/main.pas @@ -27,6 +27,8 @@ type btnHide: TButton; Label1: TLabel; Label2: TLabel; + miOpenPAK: TMenuItem; + N16: TMenuItem; miCameraReset: TMenuItem; N15: TMenuItem; miPRFReboot: TMenuItem; @@ -437,6 +439,7 @@ type procedure miMonoVoxelsClick(Sender: TObject); procedure miMVOL000Click(Sender: TObject); procedure miOpenFreezeClick(Sender: TObject); + procedure miOpenPAKClick(Sender: TObject); procedure miPasteTextClick(Sender: TObject); procedure miPDFTO5sClick(Sender: TObject); procedure miPRFIIeClick(Sender: TObject); @@ -546,6 +549,7 @@ type function IsMicroM8Active: boolean; procedure WaitReposTimer(Sender: TObject); procedure SendOSDMessage(msg: string); + procedure LaunchPAK(disk: string); private lx, ly, lw, lh: integer; lastShowTime: TDateTime; @@ -1324,6 +1328,19 @@ begin ShowM8; end; +procedure TGUIForm.miOpenPAKClick(Sender: TObject); +begin + RepaintWindow; + HideM8; + odDiskImages.FilterIndex := 3; + if odDiskImages.Execute then + begin + LaunchPAK( odDiskImages.Filename ); + //StatusBar1.SimpleText := odDiskImages.Filename; + end; + ShowM8; +end; + procedure TGUIForm.miPasteTextClick(Sender: TObject); var s: string; @@ -2209,6 +2226,20 @@ begin Respo.Destroy; end; +procedure TGUIForm.LaunchPAK(disk: string); +var + json, S: string; + Respo: TStringStream; +begin + json := '{"pakfile": "' + disk + + '"}'; + Respo := TStringStream.Create(''); + SimpleFormPost(baseUrl + '/api/control/system/launch',json,Respo); + S := Respo.DataString; + self.StatusBar1.SimpleText:=S; + Respo.Destroy; +end; + procedure TGUIForm.LaunchCommand(dialect: string; path: string; command: string); var json, S: string; diff --git a/lib/x86_64-win64/main.lfm b/lib/x86_64-win64/main.lfm index 07313d9..702f061 100644 --- a/lib/x86_64-win64/main.lfm +++ b/lib/x86_64-win64/main.lfm @@ -329,7 +329,6 @@ object GUIForm: TGUIForm BevelOuter = bvNone ClientHeight = 589 ClientWidth = 1014 - Color = clAqua ParentColor = False TabOrder = 2 object sidecarPanel: TPanel @@ -5660,6 +5659,13 @@ object GUIForm: TGUIForm object N7: TMenuItem Caption = '-' end + object miOpenPAK: TMenuItem + Caption = 'Open microPAK...' + OnClick = miOpenPAKClick + end + object N16: TMenuItem + Caption = '-' + end object miOpenFreeze: TMenuItem Caption = 'Open Freeze...' OnClick = miOpenFreezeClick @@ -10465,7 +10471,7 @@ object GUIForm: TGUIForm object odDiskImages: TOpenDialog Title = 'Open Disk Image' DefaultExt = '.*' - Filter = 'All Floppy Images|*.dsk; *.do; *.po; *.woz; *.nib|All HDD Images|*.po; *.2mg; *.hdv|Disk Image|*.dsk|ProDOS Ordered Image|*.po|DOS Ordered Image|*.do|Nibble Image|*.nib|WOZ Image|*.woz|2MG Image|*.2mg|HDV Image|*.hdv' + Filter = 'All Floppy Images|*.dsk; *.do; *.po; *.woz; *.nib|All HDD Images|*.po; *.2mg; *.hdv|MicroPAK|*.pak|Disk Image|*.dsk|ProDOS Ordered Image|*.po|DOS Ordered Image|*.do|Nibble Image|*.nib|WOZ Image|*.woz|2MG Image|*.2mg|HDV Image|*.hdv' left = 24 top = 104 end diff --git a/lib/x86_64-win64/main.o b/lib/x86_64-win64/main.o index 0c70124..9f1495e 100644 Binary files a/lib/x86_64-win64/main.o and b/lib/x86_64-win64/main.o differ diff --git a/lib/x86_64-win64/main.ppu b/lib/x86_64-win64/main.ppu index f641cba..fd200a6 100644 Binary files a/lib/x86_64-win64/main.ppu and b/lib/x86_64-win64/main.ppu differ diff --git a/lib/x86_64-win64/poc.obj b/lib/x86_64-win64/poc.obj index fdb46f2..9520bc5 100644 Binary files a/lib/x86_64-win64/poc.obj and b/lib/x86_64-win64/poc.obj differ diff --git a/main.lfm b/main.lfm index 79f1870..702f061 100644 --- a/main.lfm +++ b/main.lfm @@ -5659,6 +5659,13 @@ object GUIForm: TGUIForm object N7: TMenuItem Caption = '-' end + object miOpenPAK: TMenuItem + Caption = 'Open microPAK...' + OnClick = miOpenPAKClick + end + object N16: TMenuItem + Caption = '-' + end object miOpenFreeze: TMenuItem Caption = 'Open Freeze...' OnClick = miOpenFreezeClick @@ -10464,7 +10471,7 @@ object GUIForm: TGUIForm object odDiskImages: TOpenDialog Title = 'Open Disk Image' DefaultExt = '.*' - Filter = 'All Floppy Images|*.dsk; *.do; *.po; *.woz; *.nib|All HDD Images|*.po; *.2mg; *.hdv|Disk Image|*.dsk|ProDOS Ordered Image|*.po|DOS Ordered Image|*.do|Nibble Image|*.nib|WOZ Image|*.woz|2MG Image|*.2mg|HDV Image|*.hdv' + Filter = 'All Floppy Images|*.dsk; *.do; *.po; *.woz; *.nib|All HDD Images|*.po; *.2mg; *.hdv|MicroPAK|*.pak|Disk Image|*.dsk|ProDOS Ordered Image|*.po|DOS Ordered Image|*.do|Nibble Image|*.nib|WOZ Image|*.woz|2MG Image|*.2mg|HDV Image|*.hdv' left = 24 top = 104 end diff --git a/main.pas b/main.pas index 0bb84e0..bb810c6 100644 --- a/main.pas +++ b/main.pas @@ -27,6 +27,8 @@ type btnHide: TButton; Label1: TLabel; Label2: TLabel; + miOpenPAK: TMenuItem; + N16: TMenuItem; miCameraReset: TMenuItem; N15: TMenuItem; miPRFReboot: TMenuItem; @@ -437,6 +439,7 @@ type procedure miMonoVoxelsClick(Sender: TObject); procedure miMVOL000Click(Sender: TObject); procedure miOpenFreezeClick(Sender: TObject); + procedure miOpenPAKClick(Sender: TObject); procedure miPasteTextClick(Sender: TObject); procedure miPDFTO5sClick(Sender: TObject); procedure miPRFIIeClick(Sender: TObject); @@ -546,6 +549,7 @@ type function IsMicroM8Active: boolean; procedure WaitReposTimer(Sender: TObject); procedure SendOSDMessage(msg: string); + procedure LaunchPAK(disk: string); private lx, ly, lw, lh: integer; lastShowTime: TDateTime; @@ -1324,6 +1328,19 @@ begin ShowM8; end; +procedure TGUIForm.miOpenPAKClick(Sender: TObject); +begin + RepaintWindow; + HideM8; + odDiskImages.FilterIndex := 3; + if odDiskImages.Execute then + begin + LaunchPAK( ReplaceStr( odDiskImages.Filename, '\', '/' ) ); + //StatusBar1.SimpleText := odDiskImages.Filename; + end; + ShowM8; +end; + procedure TGUIForm.miPasteTextClick(Sender: TObject); var s: string; @@ -2209,6 +2226,20 @@ begin Respo.Destroy; end; +procedure TGUIForm.LaunchPAK(disk: string); +var + json, S: string; + Respo: TStringStream; +begin + json := '{"pakfile": "' + disk + + '"}'; + Respo := TStringStream.Create(''); + SimpleFormPost(baseUrl + '/api/control/system/launch',json,Respo); + S := Respo.DataString; + self.StatusBar1.SimpleText:=S; + Respo.Destroy; +end; + procedure TGUIForm.LaunchCommand(dialect: string; path: string; command: string); var json, S: string;