forked from KolibriOS/kolibrios
Kosilka: finalize translation, add extra files
git-svn-id: svn://kolibrios.org@7344 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
f8865e6262
commit
e96bb81f00
68
programs/games/kosilka/doexe2.asm
Normal file
68
programs/games/kosilka/doexe2.asm
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
filename equ 'kosilka.exe'
|
||||||
|
|
||||||
|
virtual at 0
|
||||||
|
file filename:3Ch,4
|
||||||
|
load pehea dword from 0
|
||||||
|
file filename:pehea,0F8h+28h*3
|
||||||
|
load NumberOfSections word from 4+6
|
||||||
|
load SizeOfOptionalHeader word from 4+14h
|
||||||
|
if NumberOfSections<>3
|
||||||
|
error Expected three sections, .text, .bss and .reloc
|
||||||
|
end if
|
||||||
|
if SizeOfOptionalHeader<>0E0h
|
||||||
|
error Nonstandard PE header
|
||||||
|
end if
|
||||||
|
load RelocsRVA dword from 4+0A0h
|
||||||
|
load RelocsSize dword from 4+0A4h
|
||||||
|
load ImageBase dword from 4+34h
|
||||||
|
load TextRVA dword from 4+0F8h+0Ch
|
||||||
|
load TextSize dword from 4+0F8h+8
|
||||||
|
load TextOffs dword from 4+0F8h+14h
|
||||||
|
load BSSSize dword from 4+0F8h+28h+10h
|
||||||
|
load RelocRVA dword from 4+0F8h+28h*2+0Ch
|
||||||
|
load RelocOffs dword from 4+0F8h+28h*2+14h
|
||||||
|
if BSSSize
|
||||||
|
error Second section expected to be .bss
|
||||||
|
end if
|
||||||
|
if RelocRVA<>RelocsRVA
|
||||||
|
error Third section expected to be .reloc
|
||||||
|
end if
|
||||||
|
;file 'test.exe':pehea+0F8h,28h
|
||||||
|
;load physofs dword from 4+14h
|
||||||
|
;load mem dword from 4+8
|
||||||
|
;file 'test.exe':physofs+16,4
|
||||||
|
;load sz dword from $-4
|
||||||
|
end virtual
|
||||||
|
|
||||||
|
file filename:TextOffs,TextSize
|
||||||
|
|
||||||
|
while RelocsSize>8
|
||||||
|
virtual at 0
|
||||||
|
file filename:RelocOffs,8
|
||||||
|
load CurRelocPage dword from 0
|
||||||
|
load CurRelocChunkSize dword from 4
|
||||||
|
end virtual
|
||||||
|
RelocsSize=RelocsSize-CurRelocChunkSize
|
||||||
|
CurRelocChunkSize = CurRelocChunkSize-8
|
||||||
|
RelocOffs=RelocOffs+8
|
||||||
|
while CurRelocChunkSize
|
||||||
|
virtual at 0
|
||||||
|
file filename:RelocOffs,2
|
||||||
|
RelocOffs=RelocOffs+2
|
||||||
|
CurRelocChunkSize=CurRelocChunkSize-2
|
||||||
|
load s word from 0
|
||||||
|
end virtual
|
||||||
|
CurRelocType = s shr 12
|
||||||
|
RelocItem = CurRelocPage + (s and 0xFFF)
|
||||||
|
if CurRelocType=0
|
||||||
|
else if CurRelocType=3
|
||||||
|
load z dword from RelocItem-TextRVA
|
||||||
|
store dword z-(TextRVA+ImageBase) at RelocItem-TextRVA
|
||||||
|
else
|
||||||
|
error Unexpected relocation type
|
||||||
|
end if
|
||||||
|
end while
|
||||||
|
end while
|
||||||
|
|
||||||
|
store dword TextSize at 10h
|
||||||
|
store dword RelocRVA-TextRVA at 14h
|
92
programs/games/kosilka/extra/develcnt.txt
Normal file
92
programs/games/kosilka/extra/develcnt.txt
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
‘Ž‡„€<EFBFBD>ˆ… „Ž<E2809E>Ž‹<C5BD>ˆ’…‹œ<E280B9>›• <20>€<EFBFBD>Ž<EFBFBD>Ž‚ “<>Ž‚<C5BD>…‰ ˆ ‘Šˆ<C5A0>Ž‚
|
||||||
|
„‹Ÿ ˆƒ<CB86>› "ŠŽ‘ˆ‹Š€"
|
||||||
|
__________________________________________________
|
||||||
|
|
||||||
|
ˆ£à "Š®á¨«ª " ¯®¤¤¥à¦¨¢ ¥â ¤®¯®«¨â¥«ìë¥
|
||||||
|
¡®àë ã஢¥© ¨ ᪨ë. ‚ í⮬ ¤®ªã¬¥â¥ ®¯¨á
|
||||||
|
áâàãªâãà ä ©«®¢ ᪨®¢ ¨ ã஢¥©.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
‘Ž‡„€<EFBFBD>ˆ… „Ž<E2809E>Ž‹<C5BD>ˆ’…‹œ<E280B9>›• “<>Ž‚<C5BD>…‰
|
||||||
|
--------------------------------------------------
|
||||||
|
|
||||||
|
<20> ç¨ ï á ¢¥àᨨ 0.5, ¨£à ¯®¤¤¥à¦¨¢ ¥â ¤®¯®«¨â¥«ìë¥
|
||||||
|
¡®àë ã஢¥©.
|
||||||
|
” ©« á ¤®¯®«¨â¥«ìë¬ ¡®à®¬ ã஢¥© ¤®«¦¥ §ë¢ âìáï
|
||||||
|
koslevel.pak ¨ 室¨âìáï ¢ ®¤®¬ ª â «®£¥ á ¨£à®©.
|
||||||
|
|
||||||
|
” ©« ¤®¯®«¨â¥«ìëå ã஢¥© ¤®«¦¥ §ë¢ âìáï
|
||||||
|
kosilka.klp ¨ 室¨âìáï ¢ ®¤®¬ ª â «®£¥ á
|
||||||
|
¨£à®©.
|
||||||
|
<20> §¬¥à ä ©« ¤®«¦¥ ¡ëâì ªà ⥠512 ¡ ©â ¬.
|
||||||
|
|
||||||
|
‘âàãªâãà ä ©« :
|
||||||
|
1-© ¡ ©â - ª®«¨ç¥á⢮ ã஢¥© (1-255)
|
||||||
|
< ¤ «¥¥ 室ïâáï á ¬¨ ã஢¨, ª ¦¤ë© ã஢¥ì
|
||||||
|
§ ¨¬ ¥â 400 ¡ ©â. Š ¦¤ë© ¡ ©â - ª«¥âª ª àâë.
|
||||||
|
|
||||||
|
‚®§¬®¦ë¥ § ç¥¨ï ª ¦¤®£® ¡ ©â :
|
||||||
|
0 - áª®è¥ ï âà ¢
|
||||||
|
1 - âà ¢
|
||||||
|
2 - ª®á¨«ª
|
||||||
|
3 - ª ¬¥ì
|
||||||
|
4 - ¤¥à¥¢® >
|
||||||
|
< ¤ «¥¥ § ¯¨áë¢ ¥âáï ¥®¡å®¤¨¬®¥ ª®«¨ç¥á⢮
|
||||||
|
ã«¥© ¤«ï ⮣®, ç⮡ë ä ©« ¡ë« ªà ⥠512
|
||||||
|
¡ ©â ¬ >
|
||||||
|
|
||||||
|
‚¨¬ ¨¥: ¤®«¦ ¡ëâì ஢® ®¤ ª®á¨«ª ã஢¥
|
||||||
|
¨ ¥ ¬¥¥¥ ®¤®© ¥¤¨¨æë âà ¢ë
|
||||||
|
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
‘Ž‡„€<EFBFBD>ˆ… ‘Šˆ<C5A0>Ž‚
|
||||||
|
--------------------------------------------------
|
||||||
|
|
||||||
|
<20> ç¨ ï á ¢¥àᨨ 1.11, "Š®á¨«ª " ¯®¤¤¥à¦¨¢ ¥â
|
||||||
|
áª¨ë ¢ 㨢¥àá «ì®¬ ä®à¬ ⥠USF+ (Universal Skin
|
||||||
|
Format +). ‘Šˆ<C5A0>› ‘’€<E28099>›• ”Ž<E2809D>Œ€’Ž‚ <20>Ž‹…… <20>… <20>Ž„„…<E2809E>†ˆ-
|
||||||
|
‚€ž’‘Ÿ ˆ „Ž‹†<E280B9>› <20>›’œ <20><>…Ž<E280A6><C5BD>€‡Ž‚€<E2809A>› ‚ ”Ž<E2809D>Œ€’ USF+.
|
||||||
|
” ©« ᪨ ¤®«¦¥ §ë¢ âìáï kosilka.usf ¨ å®-
|
||||||
|
¤¨âìáï ¢ ®¤®¬ ª â «®£¥ á ¨£à®©.
|
||||||
|
|
||||||
|
…᫨ ¨£à ®¡ à㦨¢ ¥â ᪨, â® ® ªâ¨¢¨àã¥âáï ¨ £à ä¨-
|
||||||
|
ç¥áª®¥ ®ä®à¬«¥¨¥ ¨£àë ¬¥ï¥âáï.
|
||||||
|
‘ª¨ ¬®¦® ®âª«îç¨âì. „«ï í⮣® ¦¬¨â¥ ª« ¢¨èã <s> ¢ £« ¢®¬
|
||||||
|
¬¥î.
|
||||||
|
|
||||||
|
‘âàãªâãà USF-ä ©« ᪨ ¤«ï "Š®á¨«ª¨":
|
||||||
|
|
||||||
|
<20> §¬¥à ä ©« ¤®«¦¥ ¡ëâì ªà ⥠512 ¡ ©â ¬.
|
||||||
|
<20>¥à¢ë© ¡ ©â - ª®«¨ç¥á⢮ "¢ ਠ⮢" ᪨ (á à §«¨ç-
|
||||||
|
묨 ¬ áèâ ¡ ¬¨) ¢ ä ©«¥. ‡¤¥áì § ¤ ñ¬ 0x01.
|
||||||
|
‘«¥¤ãî騥 3 ¡ ©â - ®¯¨á ¨¥ "¢ ਠâ " áªà¨ .
|
||||||
|
|
||||||
|
1) Š®«¨ç¥á⢮ ¨§®¡à ¦¥¨© - 㪠§ë¢ ¥¬ 0x08
|
||||||
|
2) ˜¨à¨ ¨§®¡à ¦¥¨ï - 㪠§ë¢ ¥¬ 0x18
|
||||||
|
3) ‚ëá®â ¨§®¡à ¦¥¨ï - 㪠§ë¢ ¥¬ 0x18
|
||||||
|
|
||||||
|
|
||||||
|
„ «¥¥ ¨¤ñâ ¥¯®á।á⢥® ᪨.
|
||||||
|
Ž, ª ª ¢ëè¥ ãª § «¨ ¬ë, ᮤ¥à¦¨â 8 ª à⨮ª à §¬¥-
|
||||||
|
஬ 24å24 (ª ¦¤ ï ¯® 1728 ¡ ©â).
|
||||||
|
–¢¥â ª ¦¤®© â®çª¨ ®¯¨áë¢ ¥âáï 3-¬ï ¡ ©â ¬¨: R,G,B
|
||||||
|
(ªà áë©, §¥«ñë©, ᨨ©).
|
||||||
|
|
||||||
|
Š à⨪¨ ¢ ä ©«¥ ¨¤ãâ ¢ á«¥¤ãî饬 ¯®à浪¥:
|
||||||
|
- Š®á¨«ª ¥¤¥â ¢¨§
|
||||||
|
- Š®á¨«ª ¥¤¥â ¢¢¥àå
|
||||||
|
- Š®á¨«ª ¥¤¥â ¢«¥¢®
|
||||||
|
- Š®á¨«ª ¥¤¥â ¢¯à ¢®
|
||||||
|
- ‘ª®á
|
||||||
|
- ’à ¢
|
||||||
|
- Š ¬¥ì
|
||||||
|
- „¥à¥¢®
|
||||||
|
|
||||||
|
„ «¥¥ ¢ ä ©« ¤®¯¨áë¢ ¥âáï ®¯à¥¤¥«ñ®¥ ª®«¨ç¥á⢮
|
||||||
|
ã«¥© (0x00) ¤«ï ⮣®, ç⮡ë à §¬¥à ä ©« ¡ë« ªà â¥
|
||||||
|
512 ¡ ©â ¬.
|
||||||
|
|
||||||
|
|
||||||
|
<EFBFBD><EFBFBD>ˆŒ…<EFBFBD>› ᪨ ¨ ¡®à ã஢¥© 室ïâáï ¢ ª â «®£¥
|
||||||
|
contsamp.
|
1
programs/games/kosilka/extra/kosilka.usf
Normal file
1
programs/games/kosilka/extra/kosilka.usf
Normal file
File diff suppressed because one or more lines are too long
BIN
programs/games/kosilka/extra/koslevel.pak
Normal file
BIN
programs/games/kosilka/extra/koslevel.pak
Normal file
Binary file not shown.
BIN
programs/games/kosilka/extra/koslevmk_1.3.exe
Normal file
BIN
programs/games/kosilka/extra/koslevmk_1.3.exe
Normal file
Binary file not shown.
BIN
programs/games/kosilka/extra/kskinmkr.exe
Normal file
BIN
programs/games/kosilka/extra/kskinmkr.exe
Normal file
Binary file not shown.
BIN
programs/games/kosilka/extra/kskinmkr_src.zip
Normal file
BIN
programs/games/kosilka/extra/kskinmkr_src.zip
Normal file
Binary file not shown.
@ -51,6 +51,22 @@ bool w_redraw=true;
|
|||||||
const char level_label[] = "“஢¥ì:";
|
const char level_label[] = "“஢¥ì:";
|
||||||
const char attempts_left[] = "Žáâ «®áì ¯®¯ë⮪:";
|
const char attempts_left[] = "Žáâ «®áì ¯®¯ë⮪:";
|
||||||
const char grass_left[] = "Žáâ «®áì âà ¢ë:";
|
const char grass_left[] = "Žáâ «®áì âà ¢ë:";
|
||||||
|
|
||||||
|
const char level_select_1[] = "‚ë¡¥à¨â¥ ¡®à ã஢¥© ( ¦¬¨â¥ <1> ¨«¨ <2>):";
|
||||||
|
const char level_select_2[] = "1. ‚áâà®¥ë¥ ã஢¨";
|
||||||
|
const char level_select_3[] = "2. ‚¥è¨© ¡®à ã஢¥©";
|
||||||
|
|
||||||
|
const char about1[] = "Š®««¥ªâ¨¢ à §à ¡®â稪®¢:";
|
||||||
|
const char about2[] = "€¤à¥© Œ¨å ©«®¢¨ç aka Dron2004 - ¯à®£à ¬¬¨à®¢ ¨¥, ¢áâ஥ ï £à 䨪 (¡¥§ ᪨ )";
|
||||||
|
const char about3[] = "Mario79 - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥, ¢ ¦ë¥ ¨¤¥¨";
|
||||||
|
const char about4[] = "Ataualpa - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥";
|
||||||
|
const char about5[] = "Leency - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥, § ¬¥ç ⥫ìë¥ áª¨ë, ¢ ¦ë¥ ¨¤¥¨";
|
||||||
|
const char about6[] = "Mike - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥";
|
||||||
|
const char about7[] = "bw - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥, ¢ ¦ë¥ ¨¤¥¨";
|
||||||
|
const char about8[] = "diamond - ¨¤¥ï ®â¬¥ë 室 , â¥áâ¨à®¢ ¨¥";
|
||||||
|
const char about9[] = "Žâ¤¥«ì®¥ ᯠᨡ®:";
|
||||||
|
const char about10[] = "‚ᥬ, ªâ® ¨£à ¥â ¢ íâã ¨£àã :-) !";
|
||||||
|
const char about11[] = " ¦¬¨â¥ <BACKSPACE> ¤«ï ¢®§¢à â ¢ ¬¥î";
|
||||||
#else
|
#else
|
||||||
const char windowTitle[] = "Kosilka for Kolibri";
|
const char windowTitle[] = "Kosilka for Kolibri";
|
||||||
const char version[] = " Ver. 1.16";
|
const char version[] = " Ver. 1.16";
|
||||||
@ -68,6 +84,22 @@ bool w_redraw=true;
|
|||||||
const char level_label[] = "Level:";
|
const char level_label[] = "Level:";
|
||||||
const char attempts_left[] = "Attempts left:";
|
const char attempts_left[] = "Attempts left:";
|
||||||
const char grass_left[] = "Grass left:";
|
const char grass_left[] = "Grass left:";
|
||||||
|
|
||||||
|
const char level_select_1[] = "Shoose level pack (press <1> or <2>):";
|
||||||
|
const char level_select_2[] = "1. Built-in levels";
|
||||||
|
const char level_select_3[] = "2. External levels";
|
||||||
|
|
||||||
|
const char about1[] = "Our team:";
|
||||||
|
const char about2[] = "Andrei Mikhailovich aka Dron2004 - development, built-in graphics (excluding skin)";
|
||||||
|
const char about5[] = "Leency - help in development and bugfixing, English translation, testing, beautiful skins";
|
||||||
|
const char about3[] = "Mario79 - testing, help in development, ideas";
|
||||||
|
const char about4[] = "Ataualpa - testing, help in development";
|
||||||
|
const char about6[] = "Mike - testing, help in development";
|
||||||
|
const char about7[] = "bw - testing, help in development, ideas";
|
||||||
|
const char about8[] = "diamond - idea of turn back, testing";
|
||||||
|
const char about9[] = "Special thanks to:";
|
||||||
|
const char about10[] = "Everyone who plays this game :-) !";
|
||||||
|
const char about11[] = "press <BACKSPACE> to back to menu";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int levelcount=7;
|
int levelcount=7;
|
||||||
@ -402,23 +434,23 @@ void draw_window(void){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
kos_WriteTextToWindow(40,40,0x80, 0xFFFFFF ,(char*)windowTitle,22);
|
kos_WriteTextToWindow(40,40,0x80, 0xFFFFFF, (char*)windowTitle,22);
|
||||||
kos_WriteTextToWindow(40,60,0x80, 0xFFFFFF ,(char*)version,12);
|
kos_WriteTextToWindow(40,60,0x80, 0xFFFFFF, (char*)version,12);
|
||||||
kos_WriteTextToWindow(40,75,0x80, 0xFFFFFF ,"________________________________________",40);
|
kos_WriteTextToWindow(40,75,0x80, 0xFFFFFF, "________________________________________",40);
|
||||||
|
|
||||||
kos_WriteTextToWindow(40,120,0x80, 0xFFFFFF ,"Š®««¥ªâ¨¢ à §à ¡®â稪®¢:",18);
|
kos_WriteTextToWindow(40,120,0x80, 0xFFFFFF, (char*)about1, 18);
|
||||||
kos_WriteTextToWindow(40,150,0x80, 0xEEFFEE ,"€¤à¥© Œ¨å ©«®¢¨ç aka Dron2004 - ¯à®£à ¬¬¨à®¢ ¨¥, ¢áâ஥ ï £à 䨪 (¡¥§ ᪨ )",32);
|
kos_WriteTextToWindow(40,150,0x80, 0xEEFFEE, (char*)about2, 32);
|
||||||
kos_WriteTextToWindow(40,170,0x80, 0xDDFFDD ,"Mario79 - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥, ¢ ¦ë¥ ¨¤¥¨",35);
|
kos_WriteTextToWindow(40,170,0x80, 0xDDFFDD, (char*)about3, 35);
|
||||||
kos_WriteTextToWindow(40,190,0x80, 0xCCFFCC ,"Ataualpa - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥",36);
|
kos_WriteTextToWindow(40,190,0x80, 0xCCFFCC, (char*)about4, 36);
|
||||||
kos_WriteTextToWindow(40,210,0x80, 0xBBFFBB ,"Leency - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥, § ¬¥ç ⥫ìë¥ áª¨ë, ¢ ¦ë¥ ¨¤¥¨",62);
|
kos_WriteTextToWindow(40,210,0x80, 0xBBFFBB, (char*)about5, 62);
|
||||||
kos_WriteTextToWindow(40,230,0x80, 0xAAFFAA ,"Mike - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥",34);
|
kos_WriteTextToWindow(40,230,0x80, 0xAAFFAA, (char*)about6, 34);
|
||||||
kos_WriteTextToWindow(40,250,0x80, 0x99FF99 ,"bw - â¥áâ¨à®¢ ¨¥, ¯®¬®éì ¢ à §à ¡®âª¥, ¢ ¦ë¥ ¨¤¥¨",49);
|
kos_WriteTextToWindow(40,250,0x80, 0x99FF99, (char*)about7, 49);
|
||||||
kos_WriteTextToWindow(40,270,0x80, 0x99FF99 ,"diamond - ¨¤¥ï ®â¬¥ë 室 , â¥áâ¨à®¢ ¨¥",49);
|
kos_WriteTextToWindow(40,270,0x80, 0x99FF99, (char*)about8, 49);
|
||||||
|
|
||||||
kos_WriteTextToWindow(40,300,0x80, 0x88FF88 ,"Žâ¤¥«ì®¥ ᯠᨡ®:",16);
|
kos_WriteTextToWindow(40,300,0x80, 0x88FF88, (char*)about9, 16);
|
||||||
kos_WriteTextToWindow(40,330,0x80, 0x77FF77 ,"‚ᥬ, ªâ® ¨£à ¥â ¢ íâã ¨£àã :-) !",50);
|
kos_WriteTextToWindow(40,330,0x80, 0x77FF77, (char*)about10, 50);
|
||||||
|
|
||||||
kos_WriteTextToWindow(40,430,0x80, 0x66FF66 ," ¦¬¨â¥ <BACKSPACE> ¤«ï ¢®§¢à â ¢ ¬¥î",35);
|
kos_WriteTextToWindow(40,430,0x80, 0x66FF66, (char*)about11, 35);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -438,9 +470,9 @@ void draw_window(void){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
kos_WriteTextToWindow(215, 200,0x80, 0xFFFFFF ,"‚ë¡¥à¨â¥ ¡®à ã஢¥© ( ¦¬¨â¥ <1> ¨«¨ <2>):",0);
|
kos_WriteTextToWindow(215, 200,0x80, 0xFFFFFF, (char*)level_select_1,0);
|
||||||
kos_WriteTextToWindow(215, 220,0x80, 0xFFFFFF ,"1. ‚áâà®¥ë¥ ã஢¨",0);
|
kos_WriteTextToWindow(215, 220,0x80, 0xFFFFFF, (char*)level_select_2,0);
|
||||||
kos_WriteTextToWindow(215, 240,0x80, 0xFFFFFF ,"2. ‚¥è¨© ¡®à ã஢¥©",0);
|
kos_WriteTextToWindow(215, 240,0x80, 0xFFFFFF, (char*)level_select_3,0);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user