From 3b72f0f39df5e8835d7214499f23a8653750363f Mon Sep 17 00:00:00 2001 From: IgorA Date: Tue, 22 Jun 2021 09:24:38 +0000 Subject: [PATCH] blocks: fix open from CommandLine, fix include files git-svn-id: svn://kolibrios.org@8919 a494cfbc-eb01-0410-851d-a64ba20cac60 --- programs/bcc32/games/blocks/bin/blocks.kex | Bin 8804 -> 9006 bytes programs/bcc32/games/blocks/blocks.cpp | 35 +++++++++++++++------ programs/bcc32/include/kos_lib.h | 2 ++ programs/bcc32/include/kos_lib.inc | 9 +++++- programs/bcc32/include/kos_start.inc | 28 +++-------------- programs/bcc32/include/kos_unpack.inc | 4 +-- 6 files changed, 42 insertions(+), 36 deletions(-) diff --git a/programs/bcc32/games/blocks/bin/blocks.kex b/programs/bcc32/games/blocks/bin/blocks.kex index e8bfa9155eef4d08fcb1c072b6365ef42df0b4cf..277c92014302a7e66da0efa75bc76d0acab83420 100644 GIT binary patch literal 9006 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 UUJZ`qa)@vCr@ovX%>V!Z0r^~`g#Z8m literal 8804 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 a&N7%muX69jugDl3jTSGxX}iP#0004EU-Q`j diff --git a/programs/bcc32/games/blocks/blocks.cpp b/programs/bcc32/games/blocks/blocks.cpp index 8ed9fcc156..3d73e3953c 100644 --- a/programs/bcc32/games/blocks/blocks.cpp +++ b/programs/bcc32/games/blocks/blocks.cpp @@ -48,7 +48,8 @@ struct ModelList{ char* name; long int color, t_cr; float x,y,z, r_x,r_y,r_z; - long int level, id_l; + unsigned long level; + long int id_l; }; ModelList* model_list = 0; @@ -73,8 +74,8 @@ float white_light[] = {1.0, 1.0, 1.0, 1.0}; //Цвет и интенсивнос float lmodel_ambient[] = {0.3, 0.3, 0.3, 1.0}; //Параметры фонового освещения char str1[] = "Show active level"; -check_box check1 = { {16,280,20,4}, 8, 0xffffff, 0x808080, 0xffffff, str1, ch_flag_middle }; -scrollbar sb_tcr = { 200,70,19,4, 16, 1, 20,1,0, 0x808080, 0xffffff, 0x0}; +check_box check1 = { {16,310,20,4}, 8, 0xffffff, 0x808080, 0xffffff, str1, ch_flag_middle }; +scrollbar sb_tcr = { 200,100,19,4, 16, 1, 20,1,0, 0x808080, 0xffffff, 0x0}; void SetLight() { @@ -195,9 +196,14 @@ bool init_block(){ FileInfoBlock* file; unsigned long int k; - file = FileOpen("block.bin"); + k = strlen(CurrentDirectoryPath); + while(CurrentDirectoryPath[k] != '\\' && CurrentDirectoryPath[k] != '/' && k) {k--;}; + memcpy(library_path,CurrentDirectoryPath,k); + strcpy(library_path+k,"block.bin"); + + file = FileOpen(library_path); if (!file){ - //SetWindowCaption("Error open file 'block.bin'"); + MessageBox("Error open file 'block.bin', file not found"); return false; } k = FileGetLength(file); @@ -218,9 +224,14 @@ bool init_block(){ f_data = 0; } } + FileClose(file); + } + else { + MessageBox("Error open file 'block.bin', file length == 0"); + FileClose(file); + return false; } - FileClose(file); - + if (b_data){ unsigned long i=0, n=0; b_count=0; @@ -245,7 +256,10 @@ bool init_block(){ compile_list(&b_list[n]); n++; }; - } + } + else { + MessageBox("Error open file 'block.bin', can't unpack file"); + } return (bool)b_data; } @@ -470,7 +484,8 @@ void KolibriOnPaint(void) // If button have ID 1, this is close button DrawButton(2,0xf0f0f0, 10,4,50,19); DrawText(20,10,0,"Open"); - DrawText(10,TOOLBAR_H+3,(1<<24)|0xffffff,DoubleToStr(sb_tcr.position,0,true)); + DrawRect(70,7, 24,18, 0x333333); + DrawText(70,7,(1<<24)|0xffffff,DoubleToStr(sb_tcr.position,0,true)); sb_tcr.all_redraw=1; scrollbar_h_draw(&sb_tcr); check_box_draw(&check1); @@ -567,7 +582,7 @@ void KolibriOnMouse(TThreadData /*th*/) } } -void KolibriOnSize(int window_rect[], TThreadData /*th*/) +void KolibriOnSize(int [], TThreadData /*th*/) { unsigned short int width, height; GetClientSize(width, height); diff --git a/programs/bcc32/include/kos_lib.h b/programs/bcc32/include/kos_lib.h index 655484ede2..df9ed88540 100644 --- a/programs/bcc32/include/kos_lib.h +++ b/programs/bcc32/include/kos_lib.h @@ -11,3 +11,5 @@ double floor(double x); const char *DoubleToStr(double x, unsigned short digits = 5, bool crop_0 = false); double StrToDouble(char *str); long StrToInt(char *str); + +void MessageBox(char *str); \ No newline at end of file diff --git a/programs/bcc32/include/kos_lib.inc b/programs/bcc32/include/kos_lib.inc index 2c75f32ad8..3269054e26 100644 --- a/programs/bcc32/include/kos_lib.inc +++ b/programs/bcc32/include/kos_lib.inc @@ -1,4 +1,4 @@ -include "..\..\..\develop\info3ds\info_fun_float.inc" +include "..\..\develop\info3ds\info_fun_float.inc" align 4 proc @DoubleToStr$qduso uses esi edi @@ -292,3 +292,10 @@ proc @floor$qd .floor_end: ret endp + +align 4 +proc @MessageBox$qpc + mov eax,[esp+4] + notify_window_run eax + ret +endp \ No newline at end of file diff --git a/programs/bcc32/include/kos_start.inc b/programs/bcc32/include/kos_start.inc index 569546c68f..5a3bbbd8b8 100644 --- a/programs/bcc32/include/kos_start.inc +++ b/programs/bcc32/include/kos_start.inc @@ -17,11 +17,11 @@ else dd 0 end if -include "..\..\..\KOSfuncs.inc" -include "..\..\..\proc32.inc" -include "..\..\..\macros.inc" -include "..\..\..\dll.inc" -include "..\..\..\load_lib.mac" +include "..\..\KOSfuncs.inc" +include "..\..\proc32.inc" +include "..\..\macros.inc" +include "..\..\dll.inc" +include "..\..\load_lib.mac" ptr equ offset equ @@ -33,24 +33,6 @@ OFFSET equ SHORT equ TBYTE equ TWORD -macro movsb a,b -{ - if a eq & b eq - movsb - else - movsx a,b - end if -} - -macro movsw a,b -{ - if a eq & b eq - movsw - else - movsx a,b - end if -} - macro segment name {} macro endseg name {} diff --git a/programs/bcc32/include/kos_unpack.inc b/programs/bcc32/include/kos_unpack.inc index 49efed0ee3..55c6d5772f 100644 --- a/programs/bcc32/include/kos_unpack.inc +++ b/programs/bcc32/include/kos_unpack.inc @@ -1,7 +1,7 @@ @@unpack$qqspvt1 equ unpack -include "..\..\..\system\skincfg\trunk\kglobals.inc" -include "..\..\..\system\skincfg\trunk\unpacker.inc" +include "..\..\system\skincfg\trunk\kglobals.inc" +include "..\..\system\skincfg\trunk\unpacker.inc" IncludeIGlobals IncludeUGlobals \ No newline at end of file