diff --git a/data/Tupfile.lua b/data/Tupfile.lua index a45c62664..f9ca86ddf 100644 --- a/data/Tupfile.lua +++ b/data/Tupfile.lua @@ -144,7 +144,6 @@ extra_files = { {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot.rtf"}, {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_866.txt"}, {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/usb_boot_1251.txt"}, - {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"}, {"kolibrios/3D/info3ds/INFO3DS.INI", PROGS .. "/develop/info3ds/info3ds.ini"}, {"kolibrios/3D/info3ds/OBJECTS.PNG", PROGS .. "/develop/info3ds/objects.png"}, {"kolibrios/3D/info3ds/TL_SYS_16.PNG", PROGS .. "/develop/info3ds/tl_sys_16.png"}, @@ -503,8 +502,10 @@ tup.append_table(extra_files, { {"HD_Load/USB_Boot/", PROGS .. "/hd_load/usb_boot/setmbr.exe"}, {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/MeOSload.com"}, {"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"}, + {"kolibrios/3D/3dsheart", PROGS .. "/demos/3dsheart/trunk/3dsheart"}, {"kolibrios/3D/info3ds/INFO3DS", PROGS .. "/develop/info3ds/info3ds"}, {"kolibrios/3D/info3ds/INFO3DS_U", PROGS .. "/develop/info3ds/info3ds_u"}, + {"kolibrios/3D/mos3de", PROGS .. "/demos/mos3de/mos3de"}, {"kolibrios/3D/voxel_editor/VOXEL_EDITOR", PROGS .. "/media/voxel_editor/trunk/voxel_editor"}, {"kolibrios/3D/voxel_utilites/VOX_CREATOR" , PROGS .. "/media/voxel_editor/utilites/vox_creator"}, {"kolibrios/3D/voxel_utilites/VOX_MOVER" , PROGS .. "/media/voxel_editor/utilites/vox_mover"}, diff --git a/programs/cmm/lib/gui/checkbox.h b/programs/cmm/lib/gui/checkbox.h index 81b780e06..8989a97d7 100644 --- a/programs/cmm/lib/gui/checkbox.h +++ b/programs/cmm/lib/gui/checkbox.h @@ -67,21 +67,20 @@ struct checkbox DefineButton(x-1, y-1, strlen(text)*8 + SIZE + 17, SIZE+2, id+BT_HIDE+BT_NOFRAME, 0); WriteTextWithBg(x+SIZE+8, SIZE / 2 + y -7, 0xD0, system.color.work_text, text, system.color.work); DrawRectangle(x, y, SIZE, SIZE, system.color.work_graph); - if (checked == 0) + if (disabled) + { + DrawRectangle(x+1, y+1, SIZE-2, SIZE-2, 0xffffff); + DrawBar(x+2, y+2, SIZE-3, SIZE-3, 0xCCCccc); + } + else if (checked == 0) { DrawRectangle3D(x+1, y+1, SIZE-2, SIZE-2, 0xDDDddd, 0xffffff); DrawBar(x+2, y+2, SIZE-3, SIZE-3, 0xffffff); } else if (checked == 1) { - DrawWideRectangle(x+1, y+1, SIZE-1, SIZE-1, 2, 0xffffff); _PutImage(x+1, y+1, 13, 13, #checkbox_flag); } - else if (checked == 2) //not active - { - DrawWideRectangle(x+1, y+1, SIZE-1, SIZE-1, 2, 0xffffff); - DrawBar(x+3, y+3, SIZE-5, SIZE-5, 0x888888); - } DrawRectangle3D(x-1,y-1,SIZE+2,SIZE+2,system.color.work_dark,system.color.work_light); } diff --git a/programs/cmm/panels_cfg/panels_cfg.c b/programs/cmm/panels_cfg/panels_cfg.c index 22a167cd0..06f9bd2ac 100644 --- a/programs/cmm/panels_cfg/panels_cfg.c +++ b/programs/cmm/panels_cfg/panels_cfg.c @@ -61,7 +61,8 @@ _ini taskbar_vars_ini = { #taskbar_ini_path, "Variables" }; _ini docky_ini = { "/sys/settings/docky.ini", "@" }; unsigned char panels_img_data[] = FROM "panels_image.raw"; -raw_image panels_img = { 37, 27, #panels_img_data }; +#define PIMG_W 37 +#define PIMG_H 27 //27*5 proc_info Form; @@ -147,6 +148,11 @@ void main() } } +void DrawPanelsImage(dword y, n) +{ + _PutImage(22, y, PIMG_W, PIMG_H, n * PIMG_W * PIMG_H * 3 + #panels_img_data); +} + void DrawWindowContent() { #define PD 10 @@ -156,8 +162,8 @@ void DrawWindowContent() frame_y = 15; y.n = frame_y; - DefineButton(22, y.inc(18), panels_img.w-1, 27-1, 100 + BT_HIDE, 0); - _PutImage(22, y.n, 37, 27, tbAttachment * 37 * 27 * 3 + panels_img.data); + DefineButton(22, y.inc(18), PIMG_W-1, PIMG_H-1, 100 + BT_HIDE, 0); + DrawPanelsImage(y.n, tbAttachment); WriteText(68, y.inc(7), 0x90, system.color.work_text, CHANGE_POS); tbSoftenUp.draw(22, y.inc(35)); tbClock.draw(win_center_x, y.n); @@ -173,8 +179,8 @@ void DrawWindowContent() DrawFrame(PD, frame_y, Form.cwidth-PD-PD, y.inc(32)-frame_y, TASK_FRAME_T); //DOCKY frame_y = calc(y.inc(20)); - DefineButton(22, y.inc(18), panels_img.w-1, 27-1, 200 + BT_HIDE, 0); - _PutImage(22, y.n, 37, 27, dkLocation + 1 * 37 * 27 * 3 + panels_img.data); + DefineButton(22, y.inc(18), PIMG_W-1, PIMG_H-1, 200 + BT_HIDE, 0); + DrawPanelsImage(y.n, dkLocation); WriteText(68, y.inc(7), 0x90, system.color.work_text, CHANGE_POS); dkFsize.draw(22, y.inc(35)); dkAshow.draw(win_center_x, y.n); diff --git a/programs/cmm/panels_cfg/panels_cfg.png b/programs/cmm/panels_cfg/panels_cfg.png index d3f747ef5..45bf07d3a 100644 Binary files a/programs/cmm/panels_cfg/panels_cfg.png and b/programs/cmm/panels_cfg/panels_cfg.png differ diff --git a/programs/cmm/panels_cfg/panels_image.raw b/programs/cmm/panels_cfg/panels_image.raw index d6eb89fa8..085d53118 100644 Binary files a/programs/cmm/panels_cfg/panels_image.raw and b/programs/cmm/panels_cfg/panels_image.raw differ diff --git a/programs/demos/mos3de/build.bat b/programs/demos/mos3de/build.bat index c53825e72..d8eee2adc 100644 --- a/programs/demos/mos3de/build.bat +++ b/programs/demos/mos3de/build.bat @@ -1,2 +1,2 @@ -@fasm MOS3DE01.ASM MOS3DE01 +@fasm MOS3DE.ASM MOS3DE @pause \ No newline at end of file diff --git a/programs/games/arcanii/trunk/arcanii.asm b/programs/games/arcanii/trunk/arcanii.asm index 63c68398a..1da73734d 100644 --- a/programs/games/arcanii/trunk/arcanii.asm +++ b/programs/games/arcanii/trunk/arcanii.asm @@ -142,14 +142,8 @@ still: ; ********************************************* show_screen: ; flips the virtual screen to the window - push_abc - - mov eax,7 - mov ebx,screen - mov ecx,X_SIZE*65536+Y_SIZE - mov edx,4*65536+20 - mcall - + push_abc + mcall 7, screen, , 0 pop_abc ret @@ -395,6 +389,7 @@ grad_fill_screen: ; eax - screen color ( 0x00RRGGBB ), ebx - mack .no_ch: pop ecx loop .lab1 + pop_abc ret @@ -414,15 +409,12 @@ intro: ; INTRO ; jne @f ret @@: - label 146,200,'ARCANOID II v0.30',0x100000FF - label 120,220,'by jj (jacek jerzy malinowski)',0x050505 - if lang eq it - label 100,240,'Premi spazio per iniziare una nuova partita',0x10FF0800 - else - label 100,240,'press SPACE to start a new game',0x10FF0800 - end if - label 15,240,'F1 + delay',0xFFA8FF - label 15,260,'F2 + delay',0xFFA8FF + + mcall 4,<115,150>,0x82050505,VERSION + mcall ,<125,180>,0x80050505,AUTHOR + mcall ,<90,210>,0x81EE0800,PRESS_SPACE + mcall ,<50,235>,0x81FFA8FF,CHANGE_SPEED + delay 10 ret @@ -432,19 +424,9 @@ level_info: jne @f ret @@: - if lang eq it - label 170,230,'L I V E L LO',0x100000FF - else - label 170,230,'L E V E L',0x100000FF - end if - - - outcount [level],195,250,0x100000FF,2*65536 - if lang eq it - label 100,270,'Premi spazio per iniziare il livello',0x10FF0800 - else - label 100,270,'press SPACE to start the level',0x10FF0800 - end if + mcall 4,<179,210>,0x810000FF,LEVEL + mcall ,<100,250>,0x81DD0800,PRESS_SPACE + outcount [level],195,230,0x10000FF,2*65536 delay 10 ret @@ -455,13 +437,9 @@ game_over: ; GAME OVER ; .g_ok: call grad_fill_screen call show_screen ; flips the screen - label 120,150,'G A M E O V E R',0x10050505 - if lang eq it - label 140,200,'Grazie per aver giocato',0x0FFF800 - else - label 140,200,'Thanks for playing',0x0FFF800 - end if - delay 20 + mcall 4,<100,110>,0x90050505,GAMEOVER + mcall ,<140,160>,0x80FFF800,THANKS_FOR_PLAYING + delay 20 ret @@ -490,7 +468,13 @@ fast_gfx: mov ebx,0xFFFF .g_ok: call grad_fill_screen + + ;black_bg + ;mov eax,0 + ;mov ebx,0 + ;call fill_screen + mov eax,37 ; get mouse position mov ebx,1 mcall @@ -818,15 +802,16 @@ ret draw_window: mcall 12,1 - mcall 0,<100,X_SIZE+8>,<100,Y_SIZE+21>,0x14ffffff, , VERSION - - if lang eq it - label 200,8,'VITE:',0x10ffffff - else - label 200,8,'LIVES:',0x10ffffff - end if - - outcount dword [lives],250,8,0x10ffffff,65536 + mcall 48,4 + lea ecx, [100*65536+Y_SIZE+4+eax]; [y start] *65536 + [y size] + [skin_height] + mcall 0,<100,X_SIZE+9>,,0x74ffffff,,0 + + mov eax, [lives] + add eax, '0' + mov esi, HEADER + add esi, 28 + mov [esi], eax + mcall 71,1,HEADER cmp [is_rolled_up], 1 je @f @@ -841,11 +826,25 @@ draw_window: ; DATA AREA ;#################### ;-----------;#################### -VERSION db 'ARCANOID II', 0 +GAMEOVER db 'G A M E O V E R', 0 +HEADER db 'ARCANOID II LIVES: ? ', 0 +VERSION db 'ARCANOID II',0 +AUTHOR db 'by jj (jacek jerzy malinowski)',0 +CHANGE_SPEED db 'F2 dec speed F3 inc speed',0 + +if lang eq it +THANKS_FOR_PLAYING db 'Grazie per aver giocato', 0 +PRESS_SPACE db 'Premi spazio per iniziare',0 +LEVEL db 'LIVELLO',0 +else +THANKS_FOR_PLAYING db 'Thanks for playing', 0 +PRESS_SPACE db 'press SPACE to start',0 +LEVEL db 'LEVEL',0 +end if is_rolled_up dd 0 - lives dd 5 + lives dd 0 mode dd 0 l_end dd 0 ; if 1 the level is over ; PAD x: diff --git a/programs/games/arcanii/trunk/arcanii.bmp b/programs/games/arcanii/trunk/arcanii.bmp index 6e1d07669..981d0fef5 100644 Binary files a/programs/games/arcanii/trunk/arcanii.bmp and b/programs/games/arcanii/trunk/arcanii.bmp differ diff --git a/programs/games/arcanii/trunk/arcanii_blackbg.bmp b/programs/games/arcanii/trunk/arcanii_blackbg.bmp new file mode 100644 index 000000000..d54ab331f Binary files /dev/null and b/programs/games/arcanii/trunk/arcanii_blackbg.bmp differ diff --git a/programs/games/arcanii/trunk/build.bat b/programs/games/arcanii/trunk/build.bat new file mode 100644 index 000000000..84dcbee43 --- /dev/null +++ b/programs/games/arcanii/trunk/build.bat @@ -0,0 +1,5 @@ +@erase lang.inc +@echo lang fix en >lang.inc +@fasm arcanii.asm arcanii +@erase lang.inc +@pause \ No newline at end of file