italian version

git-svn-id: svn://kolibrios.org@3139 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
fedesco 2012-12-28 13:24:35 +00:00
parent 805b19b4e9
commit eb5804429c
67 changed files with 8540 additions and 0 deletions

BIN
data/it/3d/cubeline Normal file

Binary file not shown.

BIN
data/it/3d/cubetext Normal file

Binary file not shown.

BIN
data/it/3d/gears Normal file

Binary file not shown.

BIN
data/it/3d/house.3ds Normal file

Binary file not shown.

BIN
data/it/3d/logio.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -0,0 +1,60 @@
[Associations]
asm=TinyPad
inc=TinyPad
ini=TinyPad
txt=TinyPad
gif=/sys/media/kiv
bmp=/sys/media/kiv
png=/sys/media/kiv
tga=/sys/media/kiv
jpg=/sys/media/kiv
jpeg=/sys/media/kiv
ico=/sys/media/kiv
cur=/sys/media/kiv
pcx=/sys/media/kiv
xcf=/sys/media/kiv
pbm=/sys/media/kiv
pgm=/sys/media/kiv
pnm=/sys/media/kiv
tif=/sys/media/kiv
tiff=/sys/media/kiv
wbmp=/sys/media/kiv
3ds=/sys/3d/view3ds
lif=/sys/demos/life2
skn=/sys/desktop
htm=/sys/HTMLv
html=/sys/HTMLv
mht=/sys/HTMLv
fb2=/sys/HTMLv
rtf=/sys/RtfRead
obj=/sys/develop/cObj
sna=/sys/e80
nes=/sys/games/fceu
xm=/sys/media/AC97SND
wav=/sys/media/AC97SND
mp3=/sys/media/AC97SND
mid=/sys/media/MIDAMP
m3u=/sys/media/listplay
lap=/sys/media/listplay
asf=/sys/media/listplay
kla=/sys/games/klavisha
avi=/bd0/4/fplay
mkv=/bd0/4/fplay
vob=/bd0/4/fplay
flv=/bd0/4/fplay
mp4=/bd0/4/fplay
mpg=/bd0/4/fplay
mpeg=/bd0/4/fplay
smc=/bd0/4/zsnes
pdf=/bd0/4/updf
mcr=/bd0/4/psx4all
[Config]
SelectionColor=94AECE
LineHeight=18
ShowDeviceName=1
[UserDirectories]
;ïàïêè äëÿ áûñòðîãî ïåðåõîäà - ïîêà ÷òî íå ðàáîòàåò
/bd0/4/kolibri/

View File

@ -0,0 +1,143 @@
asm=4
inc=4
txt=3
rtf=3
ini=3
log=3
dic=3
doc=3
exc=3
wtx=3
inf=3
xml=3
odt=3
jpg=6
jpe=6
jpeg=6
jif=6
jfif=6
jp2=6
jpx=6
jpk=6
j2k=6
jpc=6
j2c=6
bmp=6
dib=6
rle=6
pbm=6
pgm=6
pnm=6
wbm=6
wbmp=6
xbm=6
xpm=6
gif=6
png=6
ico=6
cur=6
ani=6
tif=6
tiff=6
xif=6
tga=6
pcx=6
xcf=6
dcx=6
ppm=6
psd=6
psp=6
raw=6
raf=6
x3f=6
orf=6
nef=6
mrw=6
dcr=6
crw=6
cr2=6
ras=6
pix=6
pict=6
pct=6
pic=6
pef=6
pcd=6
iff=6
lbm=6
ilbm=6
fpx=6
djv=6
djvu=6
iw4=6
wav=7
mp3=7
xm=7
mid=7
midi=7
aif=7
aifc=7
aiff=7
au=7
snd=7
wma=7
wm=7
avi=11
mpg=11
mpe=11
mpeg=11
flv=11
3gp=11
mkv=11
wmv=11
mov=11
mp4=11
img=5
ima=5
imz=5
bwz=5
dsk=5
vfd=5
wil=5
wlz=5
exe=8
com=8
bat=8
7z=9
rar=9
zip=9
cab=9
arj=9
lha=9
lzh=9
tar=9
taz=9
tbz=9
tbz2=9
bz=9
bz2=9
ice=9
gz=9
tgz=9
uue=9
uu=9
xxe=9
z=9
dat=10
ttf=12
ttc=12
chr=12
mt=12
htm=13
html=13
mht=13
eml=13
lif=14
3ds=15
kex=16
skn=17
obj=18
dll=18
ocx=18
so=18
drv=18

View File

@ -0,0 +1,79 @@
[Associations]
asm=/sys/TinyPad; AsmMenu1,AsmMenu2
inc=/sys/TinyPad
ini=/sys/TinyPad
txt=/sys/TinyPad
jpg=/sys/media/kiv
jpeg=/sys/media/kiv
gif=/sys/media/kiv; ViewGraph,MenuAnimage
wav=/sys/media/AC97SND
mp3=/sys/media/AC97SND
xm=/sys/media/AC97SND
mid=/sys/media/MIDAMP
bmp=/sys/media/kiv; ViewGraph,MenuAnimage
png=/sys/media/kiv
ico=/sys/media/kiv
cur=/sys/media/kiv
pcx=/sys/media/kiv
xcf=/sys/media/kiv
pbm=/sys/media/kiv
pgm=/sys/media/kiv
pnm=/sys/media/kiv
tif=/sys/media/kiv
tiff=/sys/media/kiv
wbmp=/sys/media/kiv
rtf=/sys/RtfRead
3ds=/sys/3d/view3ds
lif=/sys/demos/life2
skn=/sys/desktop
m3u=/sys/media/listplay
lap=/sys/media/listplay
asf=/sys/media/listplay
cvs=/sys/graph
obj=/sys/develop/cObj
nes=/sys/fceu
sna=/sys/e80
htm=/sys/HTMLv
html=/sys/HTMLv
fb2=/sys/HTMLv
[Menu]
AsmMenu1=&Edit,/sys/TinyPad
AsmMenu2=&Compile,/sys/develop/fasm
ViewGraph=&View,/sys/media/kiv
MenuAnimage=&Edit,/sys/media/animage
[Panels]
; View modes for files on panels
; values correspond to digits for LCtrl+<1-4>
LeftViewMode=2
RightViewMode=2
; Sort modes for files on panels
; values are 2 * N + M, where
; M = 0 - normal sorting, M = 1 - reverse sorting
; N = 0-6 correspond to sort mode for Ctrl+F<3-9>
LeftSortMode=0
RightSortMode=0
[Editor]
; Symbols for end-of-line, which will be added by kfar editor
; when new line will be created:
; DOS - like in DOS/Win (0D 0A), Unix - like in Unix (0A),
; Mac - like in Mac (0D)
EOLStyle=Unix
[FolderShortcuts]
; You can define up to 10 links to folders Shortcut0...Shortcut9,
; the quick jump to such folders can be done with RCtrl+<digit>
Shortcut0=/rd/1
[Confirmations]
Delete=1
DeleteIncomplete=0
[Plugins]
; On left of the equal sign any sensical or nonsensical name can appear;
; on right - path to plugin.
; If path is not absolute, it is counted from the folder with kfar binary.
ArchiveReader=/sys/lib/archiver.obj

View File

@ -0,0 +1,199 @@
start
<>icons_associations
asm 0004
inc 0004
txt 0003
rtf 0003
ini 0003
log 0003
dic 0003
doc 0003
exc 0003
wtx 0003
inf 0003
jpg 0006
jpe 0006
jpeg 0006
jif 0006
jfif 0006
jp2 0006
jpx 0006
jpk 0006
j2k 0006
jpc 0006
j2c 0006
bmp 0006
dib 0006
rle 0006
wbm 0006
wbmp 0006
xbm 0006
xpm 0006
gif 0006
png 0006
ico 0006
cur 0006
ani 0006
tif 0006
tiff 0006
xif 0006
tga 0006
pcx 0006
pbm 0006
pgm 0006
pnm 0006
xcf 0006
dcx 0006
ppm 0006
psd 0006
psp 0006
raw 0006
raf 0006
x3f 0006
orf 0006
nef 0006
mrw 0006
dcr 0006
crw 0006
cr2 0006
ras 0006
pix 0006
pict 0006
pct 0006
pic 0006
pef 0006
pcd 0006
iff 0006
lbm 0006
ilbm 0006
fpx 0006
djv 0006
djvu 0006
iw4 0006
wav 0007
mp3 0007
xm 0007
mid 0007
midi 0007
aif 0007
aifc 0007
aiff 0007
au 0007
snd 0007
wma 0007
wm 0007
avi 0011
mpg 0011
mov 0011
flv 0011
wmv 0011
vob 0011
mkv 0011
mp4 0011
mpeg 0011
3gp 0011
img 0005
ima 0005
imz 0005
bwz 0005
dsk 0005
vfd 0005
wil 0005
wlz 0005
exe 0008
com 0008
bat 0008
7z 0009
rar 0009
zip 0009
cab 0009
arj 0009
lha 0009
lzh 0009
tar 0009
taz 0009
tbz 0009
tbz2 0009
bz 0009
bz2 0009
ice 0009
gz 0009
tgz 0009
uue 0009
uu 0009
xxe 0009
z 0009
dat 0010
ttf 0012
ttc 0012
chr 0012
mt 0012
htm 0013
html 0013
lif 0014
3ds 0015
kex 0016
skn 0017
<>end
<>files_associations
asm /sys/tinypad
inc /sys/tinypad
txt /sys/tinypad
ini /sys/tinypad
log /sys/tinypad
dat /sys/tinypad
inf /sys/tinypad
bat /sys/tinypad
jpg /sys/media/kiv
jpeg /sys/media/kiv
jpe /sys/media/kiv
gif /sys/media/kiv
wav /sys/media/ac97snd
mp3 /sys/media/ac97snd
xm /sys/media/ac97snd
mid /sys/media/midamp
bmp /sys/media/kiv
png /sys/media/kiv
ico /sys/media/kiv
cur /sys/media/kiv
pcx /sys/media/kiv
xcf /sys/media/kiv
pbm /sys/media/kiv
pgm /sys/media/kiv
pnm /sys/media/kiv
tif /sys/media/kiv
tiff /sys/media/kiv
wbmp /sys/media/kiv
rtf /sys/rtfread
3ds /sys/3d/view3ds
lif /sys/demos/life2
skn /sys/desktop
avi /hd0/1/fplay.kex
mpg /hd0/1/fplay.kex
mov /hd0/1/fplay.kex
flv /hd0/1/fplay.kex
wmv /hd0/1/fplay.kex
vob /hd0/1/fplay.kex
mkv /hd0/1/fplay.kex
mp4 /hd0/1/fplay.kex
mpeg /hd0/1/fplay.kex
3gp /hd0/1/fplay.kex
m3u /sys/media/listplay
lap /sys/media/listplay
asf /sys/media/listplay
cvs /sys/graph
obj /sys/develop/cObj
nes /sys/fceu
sna /sys/e80
htm /sys/HTMLv
html /sys/HTMLv
fb2 /sys/HTMLv
kla /sys/games/klavisha
<>end
<>files_association1
bmp /sys/media/animage
<>end
end

639
data/it/Makefile Normal file
View File

@ -0,0 +1,639 @@
# General rule for naming: variables with CAPITALIZED names hold settings,
# you can - and are expected - to modify it; variables with lowercase names
# are intermediate variables and macroses not to be modified unless you
# know what you're doing.
# Define directories for destination, source repository, sources of kernel, sources of programs.
BUILD_DIR:=build
REPOSITORY:=../..
KERNEL:=$(REPOSITORY)/kernel/trunk
PROGS:=$(REPOSITORY)/programs
# The main goal: build kolibri.img and kolibri.iso
all: $(BUILD_DIR)/kolibri.img $(BUILD_DIR)/kolibri.iso
# Docpak requires some documents; we place them
# into 'docs' subdir and communicate with FASM
# through environment var DOCDIR.
DOCDIR:=docs/
export DOCDIR
# Because most programs are written in FASM and have
# the common structure of one main .asm file possibly including
# several .inc files, we handle this case separately.
# Namely, we organize one big list of such programs
# (FASM_PROGRAMS, see below) containing name of local binary file,
# name of file inside kolibri.img and name of the source file.
# This list is maintained by hand, and the rest is done with some macroses...
# well, slightly complicated macroses - however, you do not need to
# understand them in order to maintain the list.
# To add a FASM program with one .asm file, just
# add the corresponding item to the list and enjoy
# the power of GNU make.
# The list of all FASM programs with one main FASM file.
# Every item consists of three parts, separated by ':'.
# First part is the real name of binary file in $(BUILD_DIR)
# as it should be produced by make.
# Second part is the name of a file inside kolibri.img,
# usually uppercased version of first part - to save space
# for FAT filesystem.
# Third part is the name of the source file.
# Spaces separate items, so spaces in names should be
# represented as '|'.
FASM_PROGRAMS:=\
@clip:@CLIP:$(PROGS)/system/clip/trunk/@clip.ASM \
@menu:@MENU:$(PROGS)/system/menu/trunk/menu.asm \
@notify:@NOTIFY:$(PROGS)/system/notify/trunk/@notify.asm \
@panel:@PANEL:$(PROGS)/system/panel/trunk/@PANEL.ASM \
@rb:@RB:$(PROGS)/system/rb/trunk/@RB.ASM \
@ss:@SS:$(PROGS)/system/ss/trunk/@ss.asm\
refrscrn:REFRSCRN:$(PROGS)/system/refrscrn/refrscrn.asm \
asciivju:ASCIIVJU:$(PROGS)/develop/asciivju/trunk/asciivju.asm \
calc:CALC:$(PROGS)/other/calc/trunk/calc.asm \
calendar:CALENDAR:$(PROGS)/system/calendar/trunk/calendar.asm \
commouse:COMMOUSE:$(PROGS)/system/commouse/trunk/commouse.asm \
cpu:CPU:$(PROGS)/system/cpu/trunk/cpu.asm \
cpuid:CPUID:$(PROGS)/system/cpuid/trunk/CPUID.ASM \
desktop:DESKTOP:$(PROGS)/system/desktop/trunk/desktop.asm \
disptest:DISPTEST:$(PROGS)/system/disptest/trunk/disptest.ASM \
docpack:DOCPACK:$(PROGS)/system/docpack/trunk/docpack.asm \
end:END:$(PROGS)/system/end/light/end.asm \
gmon:GMON:$(PROGS)/system/gmon/gmon.asm \
hdd_info:HDD_INFO:$(PROGS)/system/hdd_info/trunk/hdd_info.asm \
icon:ICON:$(PROGS)/system/icon/trunk/icon.asm \
cropflat:CROPFLAT:$(PROGS)/system/cropflat/cropflat.asm \
kbd:KBD:$(PROGS)/system/kbd/trunk/kbd.ASM \
kpack:KPACK:$(PROGS)/other/kpack/trunk/kpack.asm \
launcher:LAUNCHER:$(PROGS)/system/launcher/trunk/launcher.asm \
magnify:MAGNIFY:$(PROGS)/demos/magnify/trunk/magnify.asm \
mgb:MGB:$(PROGS)/system/mgb/trunk/mgb.asm \
mousemul:MOUSEMUL:$(PROGS)/system/mousemul/trunk/mousemul.asm \
madmouse:MADMOUSE:$(PROGS)/other/madmouse/madmouse.asm \
mykey:MYKEY:$(PROGS)/system/MyKey/trunk/MyKey.asm \
pcidev:PCIDEV:$(PROGS)/system/pcidev/trunk/PCIDEV.ASM \
pic4:PIC4:$(PROGS)/media/pic4/trunk/pic4.asm \
rdsave:RDSAVE:$(PROGS)/system/rdsave/trunk/rdsave.asm \
rtfread:RTFREAD:$(PROGS)/other/rtfread/trunk/rtfread.asm \
run:RUN:$(PROGS)/system/run/trunk/run.asm \
scrshoot:SCRSHOOT:$(PROGS)/media/scrshoot/scrshoot.asm \
setup:SETUP:$(PROGS)/system/setup/trunk/setup.asm \
test:TEST:$(PROGS)/system/test/trunk/test.asm \
tinypad:TINYPAD:$(PROGS)/develop/tinypad/trunk/tinypad.asm \
zkey:ZKEY:$(PROGS)/system/zkey/trunk/ZKEY.ASM \
3d/3dcube2:3D/3DCUBE2:$(PROGS)/demos/3dcube2/trunk/3DCUBE2.ASM \
3d/3dsheart:3D/3DSHEART:$(PROGS)/demos/3dsheart/trunk/3dsheart.asm \
3d/3dwav:3D/3DWAV:$(PROGS)/demos/3dwav/trunk/3dwav.asm \
3d/crownscr:3D/CROWNSCR:$(PROGS)/demos/crownscr/trunk/crownscr.asm \
3d/flatwav:3D/FLATWAV:$(PROGS)/demos/flatwav/trunk/FLATWAV.ASM \
3d/free3d04:3D/FREE3D04:$(PROGS)/demos/free3d04/trunk/free3d04.asm \
3d/view3ds:3D/VIEW3DS:$(PROGS)/demos/3DS/VIEW3DS.ASM \
demos/bcdclk:DEMOS/BCDCLK:$(PROGS)/demos/bcdclk/trunk/bcdclk.asm \
demos/circle:DEMOS/CIRCLE:$(PROGS)/develop/examples/circle/trunk/circle.asm \
demos/colorref:DEMOS/COLORREF:$(PROGS)/demos/colorref/trunk/colorref.asm \
demos/cslide:DEMOS/CSLIDE:$(PROGS)/demos/cslide/trunk/cslide.asm \
demos/eyes:DEMOS/EYES:$(PROGS)/demos/eyes/trunk/eyes.asm \
demos/fire:DEMOS/FIRE:$(PROGS)/demos/fire/trunk/fire.asm \
demos/firework:DEMOS/FIREWORK:$(PROGS)/demos/firework/trunk/firework.asm \
demos/movback:DEMOS/MOVBACK:$(PROGS)/demos/movback/trunk/movback.asm \
demos/plasma:DEMOS/PLASMA:$(PROGS)/demos/plasma/trunk/plasma.asm \
demos/timer:DEMOS/TIMER:$(PROGS)/demos/timer/trunk/timer.asm \
demos/tinyfrac:DEMOS/TINYFRAC:$(PROGS)/demos/tinyfrac/trunk/tinyfrac.asm \
demos/trantest:DEMOS/TRANTEST:$(PROGS)/demos/trantest/trunk/trantest.asm \
demos/tube:DEMOS/TUBE:$(PROGS)/demos/tube/trunk/tube.asm \
demos/unvwater:DEMOS/UNVWATER:$(PROGS)/demos/unvwater/trunk/unvwater.asm \
demos/web:DEMOS/WEB:$(PROGS)/demos/web/trunk/web.asm \
develop/board:DEVELOP/BOARD:$(PROGS)/system/board/trunk/board.asm \
develop/cObj:DEVELOP/cObj:$(PROGS)/develop/cObj/trunk/cObj.asm \
develop/fasm:DEVELOP/FASM:$(PROGS)/develop/fasm/trunk/fasm.asm \
develop/h2d2b:DEVELOP/H2D2B:$(PROGS)/develop/h2d2b/trunk/h2d2b.asm \
develop/heed:DEVELOP/HEED:$(PROGS)/develop/heed/trunk/heed.asm \
develop/ipc:DEVELOP/IPC:$(PROGS)/network/ipc/trunk/ipc.asm \
develop/keyascii:DEVELOP/KEYASCII:$(PROGS)/develop/keyascii/trunk/keyascii.asm \
develop/mtdbg:DEVELOP/MTDBG:$(PROGS)/develop/mtdbg/mtdbg.asm \
develop/scancode:DEVELOP/SCANCODE:$(PROGS)/develop/scancode/trunk/scancode.asm \
develop/t_edit:DEVELOP/T_EDIT:$(PROGS)/other/t_edit/t_edit.asm \
develop/test_gets:DEVELOP/test_gets:$(PROGS)/develop/libraries/console/examples/test_gets.asm \
develop/testcon2:DEVELOP/TESTCON2:$(PROGS)/develop/libraries/console/examples/testcon2.asm \
develop/thread:DEVELOP/THREAD:$(PROGS)/develop/examples/thread/trunk/thread.asm \
develop/info/asm.syn:DEVELOP/INFO/ASM.SYN:$(PROGS)/other/t_edit/info/asm_syn.asm \
develop/info/cpp_kol_cla.syn:DEVELOP/INFO/CPP_KOL_CLA.SYN:$(PROGS)/other/t_edit/info/cpp_kol_cla_syn.asm \
develop/info/cpp_kol_dar.syn:DEVELOP/INFO/CPP_KOL_DAR.SYN:$(PROGS)/other/t_edit/info/cpp_kol_dar_syn.asm \
develop/info/cpp_kol_def.syn:DEVELOP/INFO/CPP_KOL_DEF.SYN:$(PROGS)/other/t_edit/info/cpp_kol_def_syn.asm \
develop/info/default.syn:DEVELOP/INFO/DEFAULT.SYN:$(PROGS)/other/t_edit/info/default_syn.asm \
develop/info/html.syn:DEVELOP/INFO/HTML.SYN:$(PROGS)/other/t_edit/info/html_syn.asm \
develop/info/ini_files.syn:DEVELOP/INFO/INI_FILES.SYN:$(PROGS)/other/t_edit/info/ini_files_syn.asm \
develop/info/win_const.syn:DEVELOP/INFO/WIN_CONST.SYN:$(PROGS)/other/t_edit/info/win_const_syn.asm \
drivers/com_mouse.obj:DRIVERS/COM_MOUSE.OBJ:$(KERNEL)/drivers/com_mouse.asm \
drivers/emu10k1x.obj:DRIVERS/EMU10K1X.OBJ:$(KERNEL)/drivers/emu10k1x.asm \
drivers/fm801.obj:DRIVERS/FM801.OBJ:$(KERNEL)/drivers/fm801.asm \
drivers/infinity.obj:DRIVERS/INFINITY.OBJ:$(KERNEL)/drivers/infinity.asm \
drivers/ps2mouse.obj:DRIVERS/PS2MOUSE.OBJ:$(REPOSITORY)/drivers/mouse/ps2mouse4d/trunk/ps2mouse.asm \
drivers/sb16.obj:DRIVERS/SB16.OBJ:$(KERNEL)/drivers/sb16/sb16.asm \
drivers/sound.obj:DRIVERS/SOUND.OBJ:$(KERNEL)/drivers/sound.asm \
drivers/tmpdisk.obj:DRIVERS/TMPDISK.OBJ:$(KERNEL)/drivers/tmpdisk.asm \
drivers/vt8235.obj:DRIVERS/VT8235.OBJ:$(KERNEL)/drivers/vt823x.asm \
File|Managers/kfar:File|Managers/KFAR:$(PROGS)/fs/kfar/trunk/kfar.asm \
File|Managers/kfm:File|Managers/KFM:$(PROGS)/fs/kfm/trunk/kfm.asm \
File|Managers/opendial:File|Managers/OPENDIAL:$(PROGS)/fs/opendial/opendial.asm \
games/15:GAMES/15:$(PROGS)/games/15/trunk/15.ASM \
games/arcanii:GAMES/ARCANII:$(PROGS)/games/arcanii/trunk/arcanii.asm \
games/freecell:GAMES/FREECELL:$(PROGS)/games/freecell/freecell.asm \
games/gomoku:GAMES/GOMOKU:$(PROGS)/games/gomoku/trunk/gomoku.asm \
games/invaders:GAMES/INVADERS:$(PROGS)/games/invaders/invaders.asm \
games/klavisha:GAMES/KLAVISHA:$(PROGS)/games/klavisha/trunk/klavisha.asm \
games/lines:GAMES/LINES:$(PROGS)/games/lines/lines.asm \
games/mblocks:GAMES/MBLOCKS:$(PROGS)/games/mblocks/trunk/mblocks.asm \
games/msquare:GAMES/MSQUARE:$(PROGS)/games/MSquare/trunk/MSquare.asm \
games/phenix:GAMES/PHENIX:$(PROGS)/games/phenix/trunk/phenix.asm \
games/pipes:GAMES/PIPES:$(PROGS)/games/pipes/pipes.asm \
games/pong:GAMES/PONG:$(PROGS)/games/pong/trunk/pong.asm \
games/pong3:GAMES/PONG3:$(PROGS)/games/pong3/trunk/pong3.asm \
games/rsquare:GAMES/RSQUARE:$(PROGS)/games/rsquare/trunk/rsquare.asm \
games/soko:GAMES/SOKO:$(PROGS)/games/soko/trunk/SOKO.ASM \
games/snake:GAMES/SNAKE:$(PROGS)/games/snake/trunk/snake.asm \
games/sq_game:GAMES/SQ_GAME:$(PROGS)/games/sq_game/trunk/SQ_GAME.ASM \
games/sudoku:GAMES/SUDOKU:$(PROGS)/games/sudoku/trunk/sudoku.asm \
games/sw:GAMES/SW:$(PROGS)/games/sw/trunk/sw.asm \
games/tanks:GAMES/TANKS:$(PROGS)/games/tanks/trunk/tanks.asm \
games/tetris:GAMES/TETRIS:$(PROGS)/games/tetris/trunk/tetris.asm \
lib/archiver.obj:LIB/ARCHIVER.OBJ:$(PROGS)/fs/kfar/trunk/kfar_arc/kfar_arc.asm \
lib/box_lib.obj:LIB/BOX_LIB.OBJ:$(PROGS)/develop/libraries/box_lib/trunk/box_lib.asm \
lib/console.obj:LIB/CONSOLE.OBJ:$(PROGS)/develop/libraries/console/console.asm \
lib/libgfx.obj:LIB/LIBGFX.OBJ:$(PROGS)/develop/libraries/libs-dev/libgfx/libgfx.asm \
lib/libimg.obj:LIB/LIBIMG.OBJ:$(PROGS)/develop/libraries/libs-dev/libimg/libimg.asm \
lib/libini.obj:LIB/LIBINI.OBJ:$(PROGS)/develop/libraries/libs-dev/libini/libini.asm \
lib/libio.obj:LIB/LIBIO.OBJ:$(PROGS)/develop/libraries/libs-dev/libio/libio.asm \
lib/network.obj:LIB/NETWORK.OBJ:$(PROGS)/develop/libraries/network/network.asm \
lib/proc_lib.obj:LIB/PROC_LIB.OBJ:$(PROGS)/develop/libraries/proc_lib/trunk/proc_lib.asm \
lib/cnv_png.obj:LIB/CNV_PNG.OBJ:$(PROGS)/media/zsea/plugins/png/cnv_png.asm \
media/animage:MEDIA/ANIMAGE:$(PROGS)/media/animage/trunk/animage.asm \
media/cdp:MEDIA/CDP:$(PROGS)/media/cdp/trunk/cdp.asm \
media/kiv:MEDIA/KIV:$(PROGS)/media/kiv/trunk/kiv.asm \
media/listplay:MEDIA/LISTPLAY:$(PROGS)/media/listplay/trunk/listplay.asm \
media/midamp:MEDIA/MIDAMP:$(PROGS)/media/midamp/trunk/midamp.asm \
media/startmus:MEDIA/STARTMUS:$(PROGS)/media/startmus/trunk/STARTMUS.ASM \
network/airc:NETWORK/AIRC:$(PROGS)/network/airc/trunk/airc.asm \
network/arpstat:NETWORK/ARPSTAT:$(PROGS)/network/arpstat/trunk/arpstat.asm \
network/chess:NETWORK/CHESS:$(PROGS)/network/chess/trunk/chess.asm \
network/downloader:NETWORK/DOWNLOADER:$(PROGS)/network/downloader/trunk/downloader.asm \
network/ethstat:NETWORK/ETHSTAT:$(PROGS)/network/ethstat/trunk/ethstat.asm \
network/ftps:NETWORK/FTPS:$(PROGS)/network/ftps/trunk/FTPS.ASM \
network/https:NETWORK/HTTPS:$(PROGS)/network/https/trunk/https.asm \
network/nntpc:NETWORK/NNTPC:$(PROGS)/network/nntpc/trunk/nntpc.asm \
network/nslookup:NETWORK/NSLOOKUP:$(PROGS)/develop/libraries/network/examples/nslookup.asm \
network/popc:NETWORK/POPC:$(PROGS)/network/popc/trunk/popc.asm \
network/smtps:NETWORK/SMTPS:$(PROGS)/network/smtps/trunk/smtps.asm \
network/stackcfg:NETWORK/STACKCFG:$(PROGS)/network/stackcfg/trunk/stackcfg.asm \
network/telnet:NETWORK/TELNET:$(PROGS)/network/telnet/trunk/telnet.asm \
network/tftpc:NETWORK/TFTPC:$(PROGS)/network/tftpc/trunk/tftpc.asm \
network/VNCclient:NETWORK/VNCclient:$(PROGS)/network/VNCclient/VNCclient.asm \
network/ym:NETWORK/YM:$(PROGS)/network/ym/trunk/ym.asm \
network/zeroconf:NETWORK/ZEROCONF:$(PROGS)/network/zeroconf/trunk/zeroconf.asm \
# end of list
# The list of all FASM programs with one main FASM file for CD image.
# Format of an item is exactly the same as in the previous list.
FASM_PROGRAMS_CD:=\
drivers/atikms:DRIVERS/ATIKMS:$(REPOSITORY)/drivers/video/drm/radeon/atikms.asm \
# end of list
# The list of all FASM programs which needs to be compiled without KPACKing.
FASM_NOKPACK_PROGRAMS:=\
distr_data/9x2klbr.exe:-:$(PROGS)/hd_load/9x2klbr/9x2klbr.asm \
distr_data/MeOSload.com:-:$(PROGS)/hd_load/meosload/MeOSload.asm \
distr_data/mtldr:-:$(PROGS)/hd_load/mtldr/mtldr.asm \
mtldr_for_installer:-:$(PROGS)/hd_load/mtldr_install/mtldr_code/mtldr.asm \
distr_data/mtldr_install.exe:-:$(PROGS)/hd_load/mtldr_install/mtldr_install.asm \
distr_data/MeOSload_for_usb_boot_old.com:-:$(PROGS)/hd_load/usb_boot_old/MeOSload.asm \
distr_data/enable_for_usb_boot_old.exe:-:$(PROGS)/hd_load/usb_boot_old/enable.asm \
distr_data/BOOT_F32.BIN:-:$(PROGS)/hd_load/usb_boot/BOOT_F32.ASM \
distr_data/MTLD_F32:-:$(PROGS)/hd_load/usb_boot/mtldr.asm \
distr_data/inst.exe:-:$(PROGS)/hd_load/usb_boot/inst.asm \
distr_data/setmbr.exe:-:$(PROGS)/hd_load/usb_boot/setmbr.asm \
#end of list
# The list of all NASM programs with one main NASM file.
# Format of an item is exactly the same as in the previous list.
NASM_PROGRAMS:=\
demos/aclock:DEMOS/ACLOCK:$(PROGS)/demos/aclock/trunk/aclock.asm \
games/c4:GAMES/C4:$(PROGS)/games/c4/trunk/c4.asm \
# end of list
# The list of files which should be copied from somewhere.
# Format of an item is exactly the same as in the previous list.
COPY_FILES:=\
macros.inc:MACROS.INC:$(PROGS)/macros.inc \
config.inc:CONFIG.INC:$(PROGS)/config.inc \
struct.inc:STRUCT.INC:$(PROGS)/struct.inc \
develop/te_icon.png:DEVELOP/TE_ICON.PNG:$(PROGS)/other/t_edit/te_icon.png \
develop/tl_nod_16.png:DEVELOP/TL_NOD_16.PNG:$(PROGS)/other/t_edit/tl_nod_16.png \
develop/tl_sys_16.png:DEVELOP/TL_SYS_16.PNG:$(PROGS)/media/log_el/trunk/tl_sys_16.png \
develop/t_edit.ini:DEVELOP/T_EDIT.INI:$(PROGS)/other/t_edit/t_edit.ini \
File|Managers/z_icons.png:File|Managers/Z_ICONS.PNG:$(PROGS)/fs/opendial/z_icons.png \
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT:$(PROGS)/fs/kfm/trunk/docs/english/kfm_keys.txt \
File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP:$(PROGS)/fs/kfm/trunk/buttons.bmp \
File|Managers/icons.bmp:File|Managers/ICONS.BMP:$(PROGS)/fs/kfm/trunk/icons.bmp \
fonts/litt.chr:FONTS/LITT.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/LITT.CHR \
games/snake.ini:GAMES/SNAKE.INI:$(PROGS)/games/snake/trunk/snake.ini \
games/skin.raw:GAMES/SKIN.RAW:$(PROGS)/games/soko/trunk/SKIN.RAW \
games/soko-4.lev:GAMES/SOKO-4.LEV:$(PROGS)/games/soko/trunk/SOKO-4.LEV \
games/soko-5.lev:GAMES/SOKO-5.LEV:$(PROGS)/games/soko/trunk/SOKO-5.LEV \
games/soko-6.lev:GAMES/SOKO-6.LEV:$(PROGS)/games/soko/trunk/SOKO-6.LEV \
games/soko-7.lev:GAMES/SOKO-7.LEV:$(PROGS)/games/soko/trunk/SOKO-7.LEV \
games/soko-8.lev:GAMES/SOKO-8.LEV:$(PROGS)/games/soko/trunk/SOKO-8.LEV \
games/soko-9.lev:GAMES/SOKO-9.LEV:$(PROGS)/games/soko/trunk/SOKO-9.LEV \
media/kiv.ini:MEDIA/KIV.INI:$(PROGS)/media/kiv/trunk/kiv.ini \
.shell:.shell:$(PROGS)/system/shell/bin/eng/.shell \
mykey.ini:MYKEY.INI:$(PROGS)/system/MyKey/trunk/mykey.ini \
# end of list
# The list of all C-- programs with one main C-- file.
# Format of an item is exactly the same as in the previous list,
# except that there can be fourth field with parameters for a compiler.
CMM_PROGRAMS:=\
File|Managers/Eolite:File|Managers/EOLITE:$(PROGS)/fs/Eolite/trunk/Eolite.c-- \
games/clicks:GAMES/CLICKS:$(PROGS)/games/clicks/trunk/clicks.c \
games/FindNumbers:GAMES/FindNumbers:$(PROGS)/games/FindNumbers/trunk/FindNumbers.c-- \
games/flood-it:GAMES/flood-it:$(PROGS)/games/flood-it/trunk/flood-it.c \
games/mine:GAMES/MINE:$(PROGS)/games/mine/trunk/mine.c--:/MEOS \
HTMLv:HTMLv:$(PROGS)/network/htmlv/browser/HTMLv.c \
#develop/c--:DEVELOP/C--:$(PROGS)/develop/c--/trunk/32.c-- \
# end of list
# List of other files to be included in the image file.
# Some of them are auto-built with special rules, some just exist before build.
# Each item is of the form <local name>:<name inside image>.
# Spaces should be represented as |.
OTHER_FILES:=autorun.dat:AUTORUN.DAT \
background.png:background.png default.skn:DEFAULT.SKN \
e80:E80 graph:GRAPH hdread:HDREAD \
icons.dat:ICONS.DAT iconstrp.png:ICONSTRP.PNG index_htm:INDEX.HTM \
kernel.mnt:KERNEL.MNT kerpack:KERPACK keymap.key:KEYMAP.KEY \
kuzkina.mid:KUZKINA.MID lang.inc:LANG.INC lang.ini:LANG.INI \
menu.dat:MENU.DAT \
panel.ini:PANEL.INI setup.dat:SETUP.DAT \
shell:SHELL table:TABLE \
vmode:VMODE 3d/3dsheart:3D/3DSHEART \
3d/cubeline:3D/CUBELINE 3d/gears:3D/GEARS 3d/house.3ds:3D/HOUSE.3DS \
demos/ak47.lif:DEMOS/AK47.LIF \
demos/barge.lif:DEMOS/BARGE.LIF demos/life2:DEMOS/LIFE2 \
demos/relay.lif:DEMOS/RELAY.LIF demos/rpento.lif:DEMOS/RPENTO.LIF \
demos/use_mb:DEMOS/USE_MB \
File|Managers/eolite.ini:File|Managers/EOLITE.INI \
File|Managers/icons.ini:File|Managers/ICONS.INI \
File|Managers/kfar.ini:File|Managers/KFAR.INI \
File|Managers/kfm.ini:File|Managers/KFM.INI \
games/checkers:GAMES/CHECKERS \
games/kosilka:GAMES/KOSILKA games/kosskin.gfx:GAMES/KOSSKIN.GFX \
games/reversi:GAMES/REVERSI games/rforces:GAMES/RFORCES \
games/xonix:GAMES/XONIX games/megamaze:GAMES/MEGAMAZE \
lib/msgbox.obj:LIB/MSGBOX.OBJ \
lib/pixlib.obj:LIB/PIXLIB.OBJ lib/sort.obj:LIB/SORT.OBJ \
drivers/intel_hda.obj:DRIVERS/intel_hda.obj \
media/ac97snd:MEDIA/AC97SND \
network/jmail:NETWORK/JMAIL network/zeroconf.ini:NETWORK/ZEROCONF.INI \
#end of list
#3d/logio.bmp:3D/LOGIO.BMP 3d/cubetext:3D/CUBETEXT
# Generate skins list understandable by gnu make
Makefile.skins: $(REPOSITORY)/skins/authors.txt $(REPOSITORY)/data/generate_makefile_skins.sh
cut -f1 $< | $(SHELL) $(REPOSITORY)/data/generate_makefile_skins.sh > $@
include Makefile.skins
# Extra targets for LiveCD image in the syntax of mkisofs
MKISOFS_EXTRA:=\
dosbox/=$(PROGS)/emulator/DosBox/dosbox \
dosbox/=$(PROGS)/emulator/DosBox/dosbox.conf \
dosbox/=$(PROGS)/emulator/DosBox/readme.txt \
/=distr_data/autorun.inf \
/=distr_data/KolibriOS_icon.ico \
/=distr_data/readme.txt \
Skins/=$(REPOSITORY)/skins/authors.txt \
Docs/config.txt=docs/CONFIG.TXT \
Docs/copying.txt=docs/COPYING.TXT \
Docs/hot_keys.txt=docs/HOT_KEYS.TXT \
Docs/install.txt=docs/INSTALL.TXT \
Docs/readme.txt=docs/README.TXT \
Docs/stack.txt=docs/STACK.TXT \
Docs/sysfuncs.txt=docs/SYSFUNCS.TXT \
HD_Load/9x2klbr/=distr_data/9x2klbr.exe \
HD_Load/9x2klbr/=../common/HD_load/9x2klbr/LDKLBR.VXD \
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme.txt \
HD_Load/MeOSLoad/=distr_data/MeOSload.com \
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/AUTOEXEC.BAT \
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/CONFIG.SYS \
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/L_readme.txt \
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/L_readme_Win.txt \
HD_Load/mtldr/=distr_data/mtldr \
HD_Load/mtldr/install.txt=$(PROGS)/hd_load/mtldr/install_eng.txt \
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/vista_install.bat \
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/vista_remove.bat \
HD_Load/=distr_data/mtldr_install.exe \
HD_Load/memdisk=../common/HD_load/memdisk \
HD_Load/USB_Boot/=distr_data/BOOT_F32.BIN \
HD_Load/USB_Boot/=distr_data/MTLD_F32 \
HD_Load/USB_Boot/=distr_data/inst.exe \
HD_Load/USB_Boot/=distr_data/setmbr.exe \
HD_Load/USB_Boot/readme.txt=$(PROGS)/hd_load/usb_boot/readme_eng.txt \
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 \
HD_Load/USB_boot_old/MeOSload.com=distr_data/MeOSload_for_usb_boot_old.com \
HD_Load/USB_boot_old/enable.exe=distr_data/enable_for_usb_boot_old.exe \
games/=../common/games \
games/fara=games/fara \
games/soko/soko=games/soko \
#end of list
# Some macro for convenient work.
# Macros for replacing '|' to escaped space '\ '.
space:=\ #plus space
respace=$(subst |,$(space),$(1))
# Macro for selecting different parts of ':'-separated items.
binarypart=$(word 1,$(subst :, ,$(1)))
imagepart=$(word 2,$(subst :, ,$(1)))
sourcepart=$(word 3,$(subst :, ,$(1)))
parampart=$(word 4,$(subst :, ,$(1)))
# Get file names, possibly with spaces inside, from an item.
# Here $(f) is an item - in fact, macro argument.
fbinary=$(call respace,$(call binarypart,$(f)))
fimage=$(call respace,$(call imagepart,$(f)))
fsource=$(call respace,$(call sourcepart,$(f)))
fparam=$(call respace,$(call parampart,$(f)))
# Define targets for image file.
# Join all the lists above.
targets_full:=$(COPY_FILES) $(FASM_PROGRAMS) $(NASM_PROGRAMS) $(OTHER_FILES) $(CMM_PROGRAMS)
# For each item in the united list call fbinary.
targets:=$(foreach f,$(targets_full),$(fbinary))
# Define a command for copying a file inside the image.
# mcopy_command is a macro with two parameters,
# local file name $(1) and image file name $(2).
# Note that spaces in these have to be escaped with backslashes.
mcopy_command=mcopy -moi $(BUILD_DIR)/kolibri.img $(1) ::$(2)
# Specialize a previous command for an item $(f) in one of lists.
mcopy_item_command=$(call mcopy_command,$(fbinary),$(fimage))
# Join all $(mcopy_item_command) for all items,
# append newline after each item.
# The first newline character after "define" line and
# the last newline character before "endef" line get away
# with define/endef, so we make three newline characters,
# that is two empty lines, in order to get one in $(newline).
define newline
endef
mcopy_all_items:=$(foreach f,$(targets_full),$(mcopy_item_command)$(newline))
# add skins to MKISOFS_EXTRA
MKISOFS_EXTRA:=$(MKISOFS_EXTRA) $(foreach f,$(SKIN_SOURCES),$(call imagepart,$(f))=$(call binarypart,$(f)))
# dependencies of MKISOFS_EXTRA; we iterate through $(MKISOFS_EXTRA),
# substitute "=" with space, get the 2nd word and join all results
mkisofs_extra_targets:=$(call respace,$(foreach f,$(MKISOFS_EXTRA),$(word 2,$(subst =, ,$(f)))))
# The first goal: floppy image.
$(BUILD_DIR)/kolibri.img: $(BUILD_DIR)/.dir \
Makefile \
$(BUILD_DIR)/boot_fat12.bin \
$(targets)
# SYSXTREE
# 3d/CUBETEXT
# 3d/LOGIO.BMP
str=`date -u +"[auto-build %d %b %Y %R, r$(REV)]"`; \
echo -n $$str|dd of=kernel.mnt bs=1 seek=`expr 279 - length "$$str"` conv=notrunc 2>/dev/null
dd if=/dev/zero of=$(BUILD_DIR)/kolibri.img count=2880 bs=512 2>&1
mformat -f 1440 -i $(BUILD_DIR)/kolibri.img ::
dd if=$(BUILD_DIR)/boot_fat12.bin of=$(BUILD_DIR)/kolibri.img count=1 bs=512 conv=notrunc 2>&1
mmd -i $(BUILD_DIR)/kolibri.img ::3D
mmd -i $(BUILD_DIR)/kolibri.img ::DEMOS
mmd -i $(BUILD_DIR)/kolibri.img ::DEVELOP
mmd -i $(BUILD_DIR)/kolibri.img ::DEVELOP/INFO
mmd -i $(BUILD_DIR)/kolibri.img ::DRIVERS
mmd -i $(BUILD_DIR)/kolibri.img ::File\ Managers
mmd -i $(BUILD_DIR)/kolibri.img ::FONTS
mmd -i $(BUILD_DIR)/kolibri.img ::GAMES
mmd -i $(BUILD_DIR)/kolibri.img ::LIB
mmd -i $(BUILD_DIR)/kolibri.img ::MEDIA
mmd -i $(BUILD_DIR)/kolibri.img ::NETWORK
$(mcopy_all_items)
# The second goal: LiveCD image.
$(BUILD_DIR)/kolibri.iso: $(BUILD_DIR)/kolibri.img $(mkisofs_extra_targets)
mkisofs -U -J -pad -b kolibri.img -c boot.catalog -hide-joliet boot.catalog -graft-points \
-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "KolibriOS r$(REV)" -sysid "KOLIBRI" \
-iso-level 3 -o $(BUILD_DIR)/kolibri.iso $(BUILD_DIR)/kolibri.img $(call respace,$(MKISOFS_EXTRA)) 2>&1
# Special targets to modify behaviour of make.
.DELETE_ON_ERROR:
.SUFFIXES: # delete all predefined rules
# The floppy bootsector.
$(BUILD_DIR)/boot_fat12.bin: $(KERNEL)/bootloader/boot_fat12.asm $(KERNEL)/bootloader/floppy1440.inc
fasm $(KERNEL)/bootloader/boot_fat12.asm $(BUILD_DIR)/boot_fat12.bin
$(BUILD_DIR)/.dir 3d/.dir demos/.dir develop/.dir develop/info/.dir drivers/.dir fonts/.dir \
games/.dir lib/.dir media/.dir network/.dir allskins/.dir distr_data/.dir .deps/.dir:
mkdir -p $(dir $@)
touch $@
develop/info/.dir: develop/.dir
File\ Managers/.dir:
mkdir -p "File Managers"
touch "File Managers/.dir"
# extra dependency for mtldr_install.exe
distr_data/mtldr_install.exe: mtldr_for_installer
# FASM black magic goes to Makefile.fasm.
include Makefile.fasm
# Similar for NASM.
include Makefile.nasm
# Similar for copying files.
include Makefile.copy
# Special rules for copying sysfuncs.txt - it isn't directly included in the image.
docpack: $(DOCDIR)SYSFUNCS.TXT
$(DOCDIR)SYSFUNCS.TXT: $(KERNEL)/docs/sysfuncs.txt
cp $(KERNEL)/docs/sysfuncs.txt $(DOCDIR)SYSFUNCS.TXT
# Similar for C--.
include Makefile.cmm
# Sorry, even black magic seems to be insufficient for
# auto-handling all subtle effects. So we just define
# command lines for compiling and linking, and
# maintain the list of sources and objects by hand.
include Makefile.msvc
# Rules for table
table: .obj.table/table.exe
$(msvc_final)
TABLE_OBJECTS:=.obj.table/calc.obj .obj.table/func.obj .obj.table/hello.obj \
.obj.table/KosFile.obj .obj.table/kosSyst.obj .obj.table/math2.obj \
.obj.table/mcsmemm.obj .obj.table/parser.obj
TABLE_H_FILES:=$(wildcard $(PROGS)/other/table/*.h)
.obj.table/table.exe: $(TABLE_OBJECTS)
$(msvc_link)
$(TABLE_OBJECTS): .obj.table/%.obj: $(PROGS)/other/table/%.cpp $(TABLE_H_FILES) Makefile.msvc | .obj.table
$(msvc_compile)
.obj.table:
mkdir -p .obj.table
# Rules for graph
graph: .obj.graph/graph.exe
$(msvc_final)
GRAPH_CPP_OBJECTS:=.obj.graph/func.obj .obj.graph/hello.obj .obj.graph/kolibri.obj \
.obj.graph/KosFile.obj .obj.graph/kosSyst.obj .obj.graph/math2.obj \
.obj.graph/mcsmemm.obj .obj.graph/parser.obj
GRAPH_C_OBJECTS:=.obj.graph/string.obj
GRAPH_H_FILES:=$(wildcard $(PROGS)/other/graph/*.h)
GRAPH_FASM_OBJECTS:=.obj.graph/memcpy.obj .obj.graph/memset.obj
.obj.graph/graph.exe: $(GRAPH_CPP_OBJECTS) $(GRAPH_C_OBJECTS) $(GRAPH_FASM_OBJECTS)
$(msvc_link)
$(GRAPH_CPP_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.cpp $(GRAPH_H_FILES) Makefile.msvc | .obj.graph
$(msvc_compile)
$(GRAPH_C_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.c $(GRAPH_H_FILES) Makefile.msvc | .obj.graph
$(msvc_compile)
$(GRAPH_FASM_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.asm Makefile.msvc | .obj.graph
fasm $< $@
.obj.graph:
mkdir -p .obj.graph
# Rules for kosilka
games/kosilka: .obj.kosilka/kosilka.exe
$(msvc_final)
KOSILKA_OBJECTS:=.obj.kosilka/kosilka.obj .obj.kosilka/KosFile.obj .obj.kosilka/kosSyst.obj .obj.kosilka/mcsmemm.obj
KOSILKA_H_FILES:=$(PROGS)/games/kosilka/*.h
.obj.kosilka/kosilka.exe: $(KOSILKA_OBJECTS)
$(msvc_link)
$(KOSILKA_OBJECTS): .obj.kosilka/%.obj: $(PROGS)/games/kosilka/%.cpp $(KOSILKA_H_FILES) Makefile.msvc | .obj.kosilka
$(msvc_compile)
.obj.kosilka:
mkdir -p .obj.kosilka
include Makefile.gcc
# Rules for shell
shell: .obj.shell/start.o .obj.shell/shell.o .obj.shell/kolibri.o .obj.shell/stdlib.o .obj.shell/string.o .obj.shell/ctype.o \
$(PROGS)/system/shell/kolibri.ld
$(call gcc_link,$(PROGS)/system/shell/kolibri.ld)
.obj.shell/shell.o: $(PROGS)/system/shell/shell.c \
$(PROGS)/system/shell/all.h \
$(PROGS)/system/shell/system/*.h \
$(PROGS)/system/shell/cmd/*.c \
$(PROGS)/system/shell/modules/*.c \
$(PROGS)/system/shell/locale/rus/globals.h \
Makefile.gcc | .obj.shell
$(gcc_compile)
.obj.shell/kolibri.o .obj.shell/stdlib.o .obj.shell/string.o .obj.shell/ctype.o: .obj.shell/%.o: \
$(PROGS)/system/shell/system/%.c $(PROGS)/system/shell/system/*.h \
Makefile.gcc | .obj.shell
$(gcc_compile)
win32-gcc -c -Os -o $@ $<
.obj.shell/start.o: $(PROGS)/system/shell/start.asm | .obj.shell
fasm $< $@
.obj.shell:
mkdir -p .obj.shell
# Rules for e80
E80DIR=$(PROGS)/emulator/e80/trunk
e80: .obj.e80/start.o .obj.e80/kolibri.o .obj.e80/stdlib.o .obj.e80/string.o .obj.e80/z80.o .obj.e80/e80.o
$(call gcc_link,$(E80DIR)/kolibri.ld)
.obj.e80/e80.o: $(E80DIR)/e80.c $(E80DIR)/48.h \
$(E80DIR)/system/*.h $(E80DIR)/system/msgbox.c \
$(E80DIR)/z80/z80.h Makefile.gcc | .obj.e80
$(gcc_compile)
.obj.e80/kolibri.o .obj.e80/stdlib.o .obj.e80/string.o: .obj.e80/%.o: \
$(E80DIR)/system/%.c $(E80DIR)/system/*.h Makefile.gcc | .obj.e80
$(gcc_compile)
.obj.e80/z80.o: $(E80DIR)/z80/z80.c $(E80DIR)/z80/*
$(gcc_compile)
.obj.e80/start.o: $(E80DIR)/asm_code.asm | .obj.e80
fasm $< $@
.obj.e80:
mkdir -p .obj.e80
# Rules for sdk/sound, used by media/ac97snd
SOUNDDIR=$(PROGS)/develop/sdk/trunk/sound/src
SOUND_OBJECTS:=$(patsubst $(SOUNDDIR)/%.asm,.sdk/%.obj,$(wildcard $(SOUNDDIR)/*.asm))
SOUND_INC_FILES:=$(wildcard $(SOUNDDIR)/*.inc)
.sdk/sound.lib: $(SOUND_OBJECTS)
win32-link /lib /out:$@ $^
$(SOUND_OBJECTS): .sdk/%.obj: $(SOUNDDIR)/%.asm $(SOUND_INC_FILES) | .sdk
fasm $< $@
.sdk:
mkdir -p .sdk
# Rules for media/ac97snd
AC97DIR=$(PROGS)/media/ac97snd
media/ac97snd: .obj.ac97snd/ac97snd.exe
$(msvc_final)
.obj.ac97snd/ac97snd.exe: .obj.ac97snd/ac97wav.obj .obj.ac97snd/crt.obj .obj.ac97snd/k_lib.obj \
.obj.ac97snd/mpg.lib .sdk/sound.lib .obj.ac97snd/ufmod.obj
$(msvc_link)
.obj.ac97snd/ac97wav.obj: $(AC97DIR)/ac97snd/ac97wav.c \
$(AC97DIR)/kolibri.h $(AC97DIR)/ac97snd/ac97wav.h $(AC97DIR)/mpg/mpg123.h \
$(AC97DIR)/sound.h $(AC97DIR)/ufmod-codec.h Makefile.msvc | .obj.ac97snd
$(msvc_compile)
.obj.ac97snd/crt.obj: $(AC97DIR)/ac97snd/crt.c $(AC97DIR)/ac97snd/crt.h Makefile.msvc | .obj.ac97snd
$(msvc_compile)
.obj.ac97snd/k_lib.obj: $(AC97DIR)/ac97snd/k_lib.asm $(AC97DIR)/ac97snd/proc32.inc | .obj.ac97snd
fasm $< $@
.obj.ac97snd/ufmod.obj: $(AC97DIR)/ufmod-config.asm | .obj.ac97snd
fasm $< $@ -s .deps/ac97snd-ufmod.fas
prepsrc .deps/ac97snd-ufmod.fas /dev/stdout | \
perl -n -e 's|\\|/|g;s| |\\ |g;push @a,$$1 if/^;include\\ \x27(.*?)\x27/;' \
-e 'END{$$a=join " \\\n ",@a;print "$@: $$a\n$$a:\n"}' > .deps/ac97snd-ufmod.Po
-include .deps/ac97snd-ufmod.Po
AC97SND_MPG_C_FILES:=$(wildcard $(AC97DIR)/mpg/*.c)
AC97SND_MPG_H_FILES:=$(wildcard $(AC97DIR)/mpg/*.h)
AC97SND_MPG_C_OBJECTS:=$(patsubst $(AC97DIR)/mpg/%.c,.obj.ac97snd/%.o,$(AC97SND_MPG_C_FILES))
.obj.ac97snd/mpg.lib: $(AC97SND_MPG_C_OBJECTS) .obj.ac97snd/pow.obj
win32-link /lib /ltcg /out:$@ $^
$(AC97SND_MPG_C_OBJECTS): .obj.ac97snd/%.o: $(AC97DIR)/mpg/%.c $(AC97SND_MPG_H_FILES) Makefile.msvc | .obj.ac97snd
$(msvc_compile)
.obj.ac97snd/pow.obj: $(AC97DIR)/mpg/pow.asm $(AC97DIR)/mpg/proc32.inc | .obj.ac97snd
fasm $< $@
.obj.ac97snd:
mkdir -p .obj.ac97snd
# Rules for atikms.dll
# Use Makefile from $(REPOSITORY)/drivers/ddk and $(REPOSITORY)/drivers/video/drm/radeon
# However, dependencies must be duplicated - I don't know how to avoid this
# without need to rebuild kolibri.img at every iteration...
# Note that we are going to write in the directory shared
# between all Makefiles, so we need locked operations.
drivers/atikms.dll: $(REPOSITORY)/drivers/video/drm/radeon/atikms.dll drivers/.dir
kpack --nologo $< $@
$(REPOSITORY)/drivers/video/drm/radeon/atikms.dll: $(REPOSITORY)/drivers/video/drm/radeon/Makefile.lto
flock $(REPOSITORY)/drivers/video/drm/radeon/.lock \
$(MAKE) CC=win32-gcc45 AS=win32-as LD=win32-ld AR=win32-ar FASM=fasm -C $(REPOSITORY)/drivers/video/drm/radeon -f Makefile.lto
$(REPOSITORY)/drivers/ddk/libddk.a: $(REPOSITORY)/drivers/ddk/Makefile
flock $(REPOSITORY)/drivers/ddk/.lock \
$(MAKE) CC=win32-gcc45 AS=win32-as LD=win32-ld AR=win32-ar FASM=fasm -C $(REPOSITORY)/drivers/ddk libddk.a
$(REPOSITORY)/drivers/ddk/libcore.a: $(REPOSITORY)/drivers/ddk/Makefile
flock $(REPOSITORY)/drivers/ddk/.lock \
$(MAKE) CC=win32-gcc45 AS=win32-as LD=win32-ld AR=win32-ar FASM=fasm -C $(REPOSITORY)/drivers/ddk libcore.a
# dependencies
$(REPOSITORY)/drivers/video/drm/radeon/atikms.dll: \
$(REPOSITORY)/drivers/video/drm/radeon/atikms.lds \
$(REPOSITORY)/drivers/ddk/libddk.a \
$(REPOSITORY)/drivers/ddk/libcore.a \
$(REPOSITORY)/drivers/video/drm/radeon/*.[Sch] \
$(REPOSITORY)/drivers/video/drm/radeon/*.asm \
$(REPOSITORY)/drivers/video/drm/radeon/Makefile \
$(REPOSITORY)/drivers/video/drm/radeon/firmware/*.bin \
$(REPOSITORY)/drivers/include/*.h \
$(REPOSITORY)/drivers/include/*/*.h \
$(REPOSITORY)/drivers/include/*/*/*.h \
$(REPOSITORY)/drivers/include/*/*/*/*.h
$(REPOSITORY)/drivers/ddk/libddk.a: \
$(REPOSITORY)/drivers/ddk/*/* \
$(REPOSITORY)/drivers/include/*.h \
$(REPOSITORY)/drivers/include/*/*.h \
$(REPOSITORY)/drivers/include/*/*/*.h \
$(REPOSITORY)/drivers/include/*/*/*/*.h
$(REPOSITORY)/drivers/ddk/libcore.a: \
$(REPOSITORY)/drivers/ddk/core.S

15
data/it/Makefile.cmm Normal file
View File

@ -0,0 +1,15 @@
# This is similar to Makefile.fasm, look there for comments.
# No dependency tracking, so force dependencies on all files
# in dir/* and dir/*/*
# Also, we cannot set output file name and need to guess
# whether c-- has created .com file or no-extension file.
define cmm_meta_rule
$(1): $(2) Makefile.cmm $$(call respace,$$(addsuffix .dir,$(3))) \
$$(wildcard $$(dir $(2))*) $$(wildcard $$(dir $(2))*/*)
flock $$(dir $(2)).lock -c '\
(cd "$$(dir $(2))" && win32-c-- /D=AUTOBUILD /D=LANG_ENG $(5) $$(notdir $(2)) >&2) && \
if [ -e $$(basename $$<) ]; then f=$$(basename $$<); else f=$$(basename $$<).com; fi && \
kpack --nologo $$$$f "$$@" && rm $$$$f'
endef
$(foreach f,$(CMM_PROGRAMS),$(eval $(call cmm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname),$(fparam))))

6
data/it/Makefile.copy Normal file
View File

@ -0,0 +1,6 @@
# This is similar to Makefile.fasm, look there for comments.
define copy_meta_rule
$(1): $(2) Makefile.copy $$(call respace,$$(addsuffix .dir,$(3)))
cp $$< "$$@"
endef
$(foreach f,$(COPY_FILES),$(eval $(call copy_meta_rule,$(fbinary),$(fsource),$(binarydir))))

60
data/it/Makefile.fasm Normal file
View File

@ -0,0 +1,60 @@
# This is not a independent Makefile; it is auxiliary file
# included from main Makefile.
# It depends on the following variables and macro:
# $(FASM_PROGRAMS) is a list of all programs to build with FASM rule;
# $(binarypart) is a macro which converts from $(1)=item of $(FASM_PROGRAMS)
# to space-escaped full name of binary, $(respace) unescapes spaces;
# $(fbinary) and $(fsource) gives space-unescaped full name of binary
# and source (respectively) of $(f)=item of $(FASM_PROGRAMS).
# Define the rule for all FASM programs.
# Yes, this looks like a black magic.
# But it is not so scary as it seems.
# First, we define "meta-rule" as a rule which is
# macro depending on $(fasmprog).
# Second, the construction foreach+eval creates
# usual rules, one for each $(fasmprog) in $(FASM_PROGRAMS).
# Note that meta-rule is double-expanded, first
# time as the arg of eval - it is the place where $(fasmprog)
# gets expanded - and second time as the rule;
# so all $ which are expected to expand at the second time should be escaped.
# And all $ which are expected to be expanded by the shell should be escaped
# twice, so they become $$$$.
# The arguments of macro fasm_meta_rule:
# $(1) = name of binary file,
# $(2) = name of main source file.
# $(3) = folder of binary file - without spaces.
# $(4) = name of program - without path and extension,
define fasm_meta_rule
$(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3)))
tmpfile=`mktemp --tmpdir build.XXXXXXXX` && \
(fasm -m 65536 "$$<" "$$@" -s $$$$tmpfile && \
fasmdep -e $$$$tmpfile > .deps/$(4).Po && \
rm $$$$tmpfile) || (rm $$$$tmpfile; false)
kpack --nologo "$$@"
-include .deps/$(4).Po
endef
define fasm_nokpack_meta_rule
$(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3)))
tmpfile=`mktemp --tmpdir build.XXXXXXXX` && \
(fasm -m 65536 "$$<" "$$@" -s $$$$tmpfile && \
fasmdep -e $$$$tmpfile > .deps/$(4).Po && \
rm $$$$tmpfile) || (rm $$$$tmpfile; false)
-include .deps/$(4).Po
endef
progname=$(call respace,$(basename $(notdir $(call binarypart,$(f)))))
binarydir=$(subst ./,,$(dir $(call binarypart,$(f))))
$(foreach f,$(FASM_PROGRAMS) $(FASM_PROGRAMS_CD) $(SKIN_SOURCES),$(eval $(call fasm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
$(foreach f,$(FASM_NOKPACK_PROGRAMS),$(eval $(call fasm_nokpack_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
# Rule for the kernel differs: it uses kerpack instead of kpack.
kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir
tmpfile=`mktemp --tmpdir build.XXXXXXXX` && \
(fasm -m 65536 "$<" "$@" -s $$tmpfile && \
fasmdep -e $$tmpfile > .deps/kernel.Po && \
rm $$tmpfile) || (rm $$tmpfile; false)
kerpack "$@"
-include .deps/kernel.Po

8
data/it/Makefile.gcc Normal file
View File

@ -0,0 +1,8 @@
define gcc_compile
win32-gcc -c -Os -DAUTOBUILD -DLANG_ENG=1 -o $@ $<
endef
define gcc_link
win32-ld -nostdlib -T $(1) -o "$@" $^
win32-objcopy "$@" -O binary
kpack --nologo "$@"
endef

13
data/it/Makefile.msvc Normal file
View File

@ -0,0 +1,13 @@
define msvc_compile
win32-cl /c /O2 /Os /Oy /GF /GS- /GR- /EHs-c- /fp:fast /GL /QIfist /Gr /DAUTOBUILD /Fo$@ Z:$< >&2
endef
define msvc_link
win32-link /section:.bss,E /fixed:no /subsystem:native \
/merge:.data=.text /merge:.rdata=.text /merge:.1seg=.text \
/entry:crtStartUp /out:$@ /ltcg /nodefaultlib \
$(addprefix Z:,$^) >&2
endef
define msvc_final
EXENAME=$< fasm doexe2.asm "$@"
kpack --nologo "$@"
endef

16
data/it/Makefile.nasm Normal file
View File

@ -0,0 +1,16 @@
# This is similar to Makefile.fasm, look there for comments.
define nasm_meta_rule
.deps/$(4).Po: $(2) Makefile.nasm .deps/.dir
nasm -I$$(dir $(2)) -o "$(1)" -M $$< > .deps/$(4).Tpo 2>/dev/null; \
if [ $$$$? -eq 0 ]; then perl -ln -e 'next unless $$$$_;' \
-e 'm/((.*): )?(.*)/;$$$$a=$$$$2 if $$$$2;push @b,$$$$3;' \
-e 'END{$$$$b=join "\n",@b;print "$$$$a .deps/$(4).Po: $$$$b\n$$$$b:"}' \
.deps/$(4).Tpo > .deps/$(4).Po; fi
rm -f .deps/$(4).Tpo
$(1): $(2) Makefile.nasm $$(call respace,$$(addsuffix .dir,$(3)))
nasm -I$$(dir $(2)) -o "$$@" $$<
kpack --nologo "$$@"
-include .deps/$(4).Po
endef
$(foreach f,$(NASM_PROGRAMS),$(eval $(call nasm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))

18
data/it/autorun.dat Normal file
View File

@ -0,0 +1,18 @@
# Syntaxis is: <Program_Name> <Parameter(s)> <Delay_Time>
# Use "parameter value" for parameters with spaces. Use "" if no parameter is required.
# Delay time means how much the system should wait, before running the next line. It is measured in 1/100 seconds.
# If delay is negative, wait for termination of the spawned process. Otherwise, simply wait
#
#/RD/1/CROPFLAT "XS800 YS480" 1 # set limits of screen
/RD/1/refrscrn "" 1 # Refresh screen
/RD/1/COMMOUSE "" 1 # COM mice detector
/RD/1/MEDIA/KIV \T__background.png -1 # Desktop background image
/RD/1/@CLIP "" 1 # Clipboard
/RD/1/@RB "" 1 # Desktop right-click menu
/RD/1/@SS ASSM 1 # Screensaver
/RD/1/@PANEL "" 1 # Start panel
#/RD/1/DEVELOP/BOARD "" 1 # Load DEBUG board
/RD/1/SETUP BOOT 1 # Load device settings
/RD/1/ICON BOOT 1 # Multithread icon
/RD/1/NETWORK/ZEROCONF "" 1 # Network configuration
### Hello, ASM World! ###

BIN
data/it/background.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 365 B

BIN
data/it/default.skn Normal file

Binary file not shown.

71
data/it/demos/ak47.lif Normal file
View File

@ -0,0 +1,71 @@
#Life 1.05
#D AK47, a gun at 47 gens/shot.
#D The AK47 reaction (middle)
#D by Richard Schroeppel was
#D known for years before
#D stabilizers were found by
#D Paul Callahan in July 1994.
#D See also P94S.
#N
#P -23 -11
...**
..*..*
.*.*..*
.*.*...*
**.*.******
...*..*.*
...***.*..*
.**...*.*.*
*..*.**.*
.**...*.**
...**....*
...*.*...*
**.*.....**
.*.*.**
.*.*..*
..*..*
...**
#P -6 -12
**.......*
**.....***
......*
......**
.
...***
..*...*
.*.....*
.*.....*
.*.....*
..*...*
...***
.
.
.
.
.
.
.
.
.
....**
.....*
..***.....**
..*.......**
#P 12 -5
......**
.....*..*
....*.**.*
.*...*.*.*
.*...*.*.**
*......*
..*..***
..*.....**
..*.**.*..*
.**.*...**
**...***
.**....*
**..**.*.**
....**.*.*
....*..*.*
.....*..*
......**

406
data/it/demos/barge.lif Normal file
View File

@ -0,0 +1,406 @@
#Life 1.05
#D c/3 spaceship extensible in 2 dimensions
#D Hartmut Holzwart, David Bell
#N
#P -32 -50
...*
..*.*
.**
..*
.*.*
.*
*
*.*
*.*
.****
...*.*
...*.*
..*
..***
*
***
.***.*
...*
...*
...**
#P -29 -29
**
*..*
*.**
.***
.**
...*
.**
..*.*
...*
.
...*
..*.*
.**
...*
.**
.***
*.**
*..*
**
.
**
*..*
*.**
.***
.**
...*
.**
..*.*
...*
.
...*
..*.*
.**
...*
.**
.***
*.**
*..*
**
.
**
*..*
*.**
.***
.**
...*
.**
..*.*
...*
.
...*
..*.*
.**
...*
.**
.***
*.**
*..*
**
#P -32 31
...**
...*
...*
.***.*
***
*
..***
..*
...*.*
...*.*
.****
*.*
*.*
*
.*
.*.*
..*
.**
..*.*
...*
#P -24 -29
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
#P -12 -29
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
#P 0 -29
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
#P 12 -29
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
#P 24 -29
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*
.
..**.*.*.*
.*...*..**
*.....*
.*......*.*
...**..**.*
..*...*
..*.***...*
..*
...********
.
...********
..*
..*.***...*
..*...*
...**..**.*
.*......*.*
*.....*
.*...*..**
..**.*.*.*

BIN
data/it/demos/life2 Normal file

Binary file not shown.

12
data/it/demos/relay.lif Normal file
View File

@ -0,0 +1,12 @@
#Life 1.05
#D Relay between two pentadecathlons
#D Well known.
#N
#P -17 -2
**********
#P -1 0
*
.**
**
#P 8 2
**********

13
data/it/demos/rpento.lif Normal file
View File

@ -0,0 +1,13 @@
#Life 1.05
#D r-pentomino
#D A small, vigorous, common pattern.
#D
#D When the Game of Life was first
#D introduced around 1970, this was
#D proposed as the smallest pattern
#D for which the outcome was unknown.
#N
#P 3 3
.**
**
.*

BIN
data/it/demos/use_mb Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -0,0 +1,3 @@
[AutoRun]
icon=KolibriOS_icon.ico
shellexecute=readme.txt

View File

@ -0,0 +1,14 @@
Kolibri OS 0.7.7.0+ night build, LiveCD-version.
Questo è un CD bootabile. Per eseguire il contenuto, riavvia il computer e
imposta nel BIOS l'avvio da CD.
Le modifiche fate da Kolibri x.y.z.t sono descritte nel file readme.txt
nella cartella docs oppure all'interno del sistema operativo nel docpack
delle applicazioni.
Le istruzioni per installare il sistema su altri media e i requisiti
minimi sono descritti nel file install.ttx
Le istruzioni per configurare il sistema si possono trovare nel file
config.txt.

111
data/it/docs/CONFIG.TXT Normal file
View File

@ -0,0 +1,111 @@
È possibile impostare alcune configurazioni all'interno di KolibriOS.
Questo file funge da guida e descrive come personalizzare il sistema.
Per modificare le impostazione è necessario modificare i file nella memoria
RAM. Se si sta eseguendo KolibriOS da floppy, allora è possibile modificare
i file direttamente da floppy. Se invece si sta usando una immagine kolibri.img
del disco floppy, allora è possibile usare un programma in grado di modificare
i file su immagini del disco, oppure salvare le modifiche direttamente da
KolibriOS con l'applicazione rdsave, oppure durante lo spegnimento del sistema.
Tra parentesi vengono riportati i nomi degli eseguibili dei singoli programmi.
1. Sfondo del desktop. //testare i tre metodi
a) Modificare nel file autorun.dat (si tratta di un file di testo)
il parametro "\T__background.jpg" con il nome del nuovo file immagine
(può essere un file jpg, bmp, gif o png). Una volta che è stato impostato
come nuovo sfondo è possibile eliminare il file background.jpg
b) Modificare all'interno del file autorun.dat la voce
"/RD/1/KIV \S__background.jpg" in "/rd/1/PIC4". È possibile
eliminare il file background.jpg e il nuovo sfondo sara una texture.
Per i programmatori:
È possibile cambiare texture e colori all'interno del file pic4.asm
* per modificare la texture: modificare il valore della variabile
usearray (stringa 585) da ptarray a ptarray2, ptarray3, ... o
ptarray9
* per cambiare colore: nella procedura check_parameters cercare la
stringa con il commento appropriato (stringa 127) e aggiungere a
0x40000 1 o 2.
Dopo le modifiche ricompilare pic4 con fasm e comprimerlo con kpack,
infine inserire il file in RAM.
c) I due metodi descritti precedentemente permettevano di modificare lo
sfondo a lungo termine (fino alla prossima reinstallazzione). È
possibile modificare lo sfondo durante l'esecuzione di KolibriOS fino
al prossimo riavvio con i programma Visualizzatore Immagini (kiv),
Gestore icone (icon), generatore di sfondi (pic4) oppure il programma
frattale (tinyfrac).
2. Configurare il menu di sistema.
Le voci relative al menu sono salvate nel file di testo menu.dat. È
possibile modificare tale file con un editor di testo qualsiasi. Se
si sta usando il programma TINYPAD di KolibriOS allora è necessario
disabilitare la voce "optimal fill on saving" dal menu opzioni.
3. Configurare i programmi in avvio automatico.
La lista dei programmi caricati durante l'avvio del sistema è salvata
nel file di testo autorun.dat. È possibile modificare tale lista con
un editor di testo qualsiasi.
4. Icone sul desktop.
La lista delle icone sul dekstop è salvata nel file di testo icons.dat,
per modificare tale file è consigliato usare il programma icon manager.
Le immagini delle icone sono salvate nel file iconstrp.gif, per
modificarlo è necessario usare un editor grafico.
5. Colori e temi.
È possibile visualizzare e modificare l'interfaccia (skin) dinamicamente
con l'applicazione "Colori e temi" (desktop). È possibile rendere
permanenti i cambiamenti modificando o sostituendo il file default.skn,
dal quale viene caricato durante l'avvio il tema. È possibile trovare
temi alternativi nella cartella skins. Altrimenti è possibile creare
temi propri, per i dettagli è consigliato vedere i sorgenti presenti
nella cartella skins.
6. Suono. //non trovo sis7012
I driver sound.obj, sono compatibili con le schede audio Intel ICH,
ICH0, ICH2, ICH3, ICH4, ICH5, ICH6, ICH7 e NVidia NForce, NForce 2,
NForce 3, NForce 4.
Se si ha una scheda audio compatibile con SB16, allora è necessario
rimuovere il file sound.obj dal ram Disk e rinominare il file sb16.obj
dalla cartella 'drivers' in sound.obj.
Se si ha una scheda audio sis7012, è necessario rinominare il file sis.obj
dalla cartella radice del floppy, e copiarlo nella cartella driver nella ram,
sostituendo il vecchio file.
Il driver fm801.obj serve per le schede audio ForceMedia FM801, il
driver vt8235.obj per i chipset VIA e i driver emu10k1x.obj per gli
audioprocessori EMU10K1X. La loro inizializzazione è analoga quella del
file sis7012, è necessario copiarli nella cartella drivers, rinominadoli
in sis.obj e rimuovendo il vecchio file.
7. Bus Disconnect.
La applicazione KBD (Kolibri Bus Disconnect), permette di disconnettere
il bus del processore per abbassare la sua temperatura. Un effetto
collaterale è del rumore nei codec AC97. L'applicazione può essere
caricata automaticamente all'avvio del sistema, in tal caso è necessario
aggiungere la voce
"/RD/1/KBD BOOT 20 # Enable Bus Disconnect for AMD K7 processors".
al file autorun.dat
8. Impostazioni Network.
le impostazioni iniziali sono lette durante l'avvio del sistema dal file
/rd/1/network/zeroconf.ini.
È possibile impostare il rivelamento automatico con DHCP ("type=zeroconf")
oppure impostare un indirizzo IP fissato ("type=static").
9. Configurazione video per schede video ATI.
I driver per le schede video ATI possono impostare la risoluzione dello
schermo e il parametro di refresh durante l'avvio del sistema, se
supportate. La lista completa dei modelli supportati è ottenibile dal
programma VMODE, è inoltre possibile impostare manualmente i parametri
desiderati.
Per impostare i parametri durante l'avvio è necessario passare tramite
il file AUTORUN.DAT l'argomento -m<larghezza>x<altezza>x<refresh> al
driver ATIKMS, ad esempio
/RD/1/DRIVERS/ATIKMS -m1024x768x60 -1
Attenzione al fatto che il formato autorun.dat non accetta spazi,
quindi non è possibile inserire ulteriori argomenti.
Si può inoltre disabilitare la possibilità di modificare i parametri durante l'avvio passando l'opzione -n. I driver supportano comunque il cursore hardware. Per disabilitare completamente il driver è sufficiente rimuovere la relativa voce dal file autorun.dat.

347
data/it/docs/COPYING.TXT Normal file
View File

@ -0,0 +1,347 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
Appendix: How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

49
data/it/docs/FARA.TXT Normal file
View File

@ -0,0 +1,49 @@
PHARAOH TOMB
Lo scopo di questo gioco è quello di aprire un passaggio muovendo i
geroglifici per entrare nella stanza (8x8) successiva. È possibile
scambiare due geroglifici adiacenti se dopo tale azioni sono presente
almeno tre simboli in fila (orizzontale o verticale).
Se viene creata una tale sequenza, questa sparisce facendo spazio a dei
nuovi geroglifici, creati in modo casuale, che "cadono" dall'alto.
Ogni volta che vengono fatti sparire dei geroglifici si ricevono dei
punti calcolati dalla formula max(L+(L+1)^(N-3), 20*L*N), dove N è il
numero di geroglifici rimossi e L è il livello.
Per passare al livello al livello successivo è necessario rimuovere
alcuni geroglifici particolari, che variano da livello a livello. Nel
pannello inferiore è indicato quanti ne sono stati rimossi, e quanti
sono i rimanenti.
1o livello - 500
2o livello - 450
3o livello - 400
4o livello - 350
5o livello - 300
6o livello e superirio - 50*(L+1)
Nel 1o livello vi sono 6 tipi di geroglifici differenti, ad ogni
livello si aggiunge un nuovo tipo, ma mai più di dieci (quindi dal 5o
livello in poi saranno 10 tipi, senza considerare quelli speciali).
A partire dal 2o livello, per ogni combinazione di 4 o più
geroglifici, ed ogni volta che si passa un quarto di livello, il
giocatore riceve un geroglifico bonus da sostituire quando preferisce
con un altro geroglifico.
A partire dal 3o livello, per ogni combinazione di 5 o più
geroglifici, e per ogni volta che si completa un terzo del livello, il
giocatore ottiene una "chiave universale" in grado di risolvere
qualsiasi combinazione di geroglifici e che può essere quindi usata per
risolvere in un colpo più combinazioni.
A partire dal 4o livello, per ogni combinazione di 6 o più
geroglifici, e quando si completa mezzo livello, il giocatore ottiene
uno "space crooker", che gli permette, quando usato, di fare tre mosse
(non per forza in successione) diagonali.
Il giocatore non può salvare più di un geroglifico (1 usuale, 1 joker e
1 crooker).
Il gioco termina quando il giocatore non può effettuare movimenti che
gli permettono di eliminare geroglifici con quelli attualmente in gioco.

4723
data/it/docs/FASM.TXT Normal file

File diff suppressed because it is too large Load Diff

16
data/it/docs/HOT_KEYS.TXT Normal file
View File

@ -0,0 +1,16 @@
Le seguenti scorciatoie di tasiera sono valide in tutto il sistema
1) Ctrl + Alt + Del avvia il gestore dei processi mostranod i consumi del sistema
start of the application CPU (the manager of processes), is a sole combination maintained on a level of a kernel, all rest "hot" key is realized at the expense of the application @PANEL.
2) Ctrl + Shift cambia lingua della tastiera
3) Win Apre il MENU
4) Alt + Ctrl + F12 Fa partire l'applicazione END- start of the application END.
5) Alt + F4 Termina l'applicazione in uso
6) Alt + Tab Permette di passare da una applicazione aperta all'altra
7) Alt + Shift + Tab Permette di passare da una applicazione aperta all'altra in ordine inverso
8) Alt + Shift + NumLock Fa partire l'applicazione MOUSEMUL, che permette di emulare il mouse con il numpad, when NumLock è attivato
9) Alt + 1...7 Permette di selezionare una specifica linga per la tastiera
10) Win + D minimizza/ripristina tutte le finestre in uso
11) Win + R Inizializza l'applicazione Esegui
12) Alt + Ctrl + ArrowLeft Permette di scorrere le applicazioni nella taskbar
13) Alt + Ctrl + ArrowRight Permette di scorrere le applicazioni nella taskbar in ordine inverso
14) PrintScreen Esegue l'applicazione SCRSHOOT. Permette di effettuare uno screenshoot e di salvare l'immagine come file bmp.

25
data/it/docs/INI.TXT Normal file
View File

@ -0,0 +1,25 @@
I file ini sono file di testo dal seguente tipo di contenuto
[Nome prima sezione]
Key1=value1
Key2=value2
;commento
[Nome seconda sezione]
Key3=value3
Tutte le righe che iniziano con ';' sono considerate dei commenti e ignorate, servono per migliorare la leggibilità
Le scorciatoie da tastiera sono descritte nel seguente modo:
u numero qualsiasi di modificatori Ctrl/Alt/Shift/LCtrl/LAlt/LShift/RCtrl/RAlt/RShift,
seguiti da una carattere alfanumerico o uno dei seguenti simboli su tastiera:
F1 - F12
Home; End; PgUp; PgDn; Ins, equivalentemente, Insert; Del, equivalentemente, Delete;
Tab; Plus; Esc; Enter; Backspace; Space;
Left (left arrow); Right (right arrow); Up (up arrow); Down (down arrow).
Le scorciatoie sono case sensitive, e possono essere scritte senza il simbolo +
per il concatenamento, ad esempio:
Ctrl+Alt+Backspace
RCtrl+RShift
ShiftA
f10
shiftalt5

113
data/it/docs/INSTALL.TXT Normal file
View File

@ -0,0 +1,113 @@
Requisiti minimi di sistema per Kolibri 0.7.x.0:
* CPU: Pentium, AMD 5x86 oppure Cyrix 5x86 senza MMX con frequenza 100 MHz
* RAM: 8 Mb
* Scheda video: supporting VGA (640*480*16 mode) or Vesa
* Tastiera: AT
* Mouse: COM or PS/2
Il sistema può essere avviato da uno dei seguenti dispositivi
- Floppy 3.5
- IDE HDD LBA
- CD/DVD
- Chiave USB
I. Installazione su floppy
1) Inserire un floppy non danneggiato nel computer.
2) Scriverci sopra il file kolibri.img con un metodo qualsiasi a
disposizione, ad esempio:
a) (se si sta usando KolibriOS) usando il programma rdsave e
selezionando il floppy su cui salvare il contenuto
b) (per DOS e Windows) è possibile eseguire il file install.bat
c) con programmi come WinImage o analoghi (ad esempio DiskExplorer)
d) (per GNU/Linux) marcare come eseguibile lo script install.sh ed
eseguirlo
Ora è possibile far partire il computer da floppy (è necessario riavviare
il computer e settare nel BIOS la voce relativa all'avvio da floppy)
II. Installazione su disco fisico.
Esistono diversi bootloader da poter usare, tra cui anche il bootloader
GRUB dei sistemi GNU/Linux, e tutti dovrebbero essere ing rado di far
partire il file kolibri.img
Se si ha gia installato una vecchia versione di Kolibri, allora è
sufficiente sostituire il file kolibri.img
Se invece si sta eseguendo kolibri da Cd live, allora esso non contiene
il file kolibri.img. Con il programma rdsave è possibile crearlo, basta
indicare su quale partizione salvare il file. Poiché KolibriOS deve
essere in grado di scrivere sulla partizione, serve che questa sia di
tipo FAT
1) Il loader mtldr (scritto da Diamond) - funziona con
DOS/Win95/98/NT/2k/XP/Vista, e partizioni del tipo FAT32 and NTFS, e
può essere installato su qualsiasi cartella del disco.
Per usarlo basta eseguire il file HD_load\mtldr_install.exe e
selezionare il file kolibri.img
Co questo metodo è possibile installare anche più file immagine di
Kolibri.
2) Anche il loader MeOSLoad (scritto da Trans, migliorato da Mario79)
funziona con DOS/Win95/98, su partizioni di tipo FAT32. Si trova,
insieme alla relativa documentazione, nella cartella HD_load\MeOSLoad.
3) Esiste un programma, 9x2klbr (scritto da Diamond) in grado di avviare
Kolibri direttamente da Windows 95/98/Me, il programma funziona con
le partizioni FAT32 e NTFS.
4) È possibile usare il bootloader GRUB per caricare Kolibri. È
necessario usare il file 'memdisk', come descritto da derPENGUIN sul
forum (http://meos32.7.forumer.com/viewtopic.php?t=110).
Il metodo suggerito (descritto da Alver) è stato testato con
grub-0.97-19mdv2007.0.
1. Kolibri può scrivere solamente sui filesystem di tipo FAT, se
quindi il file immagine non si trova su una partizione di questo
tipo, non sarà in grado di salvare eventuali impostazioni.
2. Questo metodo richiede il file 'memdisk' dal pacchetto 'syslinux'
(http://syslinux.zytor.com).
3. È sufficiente posizionare il file 'memdisk' nella cartella '/boot'
oppure nella stessa partizione usata da KolibriOS.
4. Aggiungere al file 'menu.lst' ('grub.conf') le seguenti righe di
configurazione:
title KolibriOS
kernel (hd[Hard disk number],[partition number])[path]/memdisk
initrd (hd[Hard disk number],[partition number])[path]/kolibri.img
(NOTA: La numerazione delle partizioni di GRUB parte da 0.)
Esempio:
title KolibriOS
kernel (hd0,0)/boot/memdisk
initrd (hd0,3)/kolibri/kolibri.img
La prima variante era:
label KolibriOS
root (hd[numero disco fisso],[numero partizione])
kernel [percorso]/memdisk
initrd [percorso]/kolibri.img
In questo caso 'memdisk' e 'kolibri.img' devono essere sulla
stessa partizione.
Esempio:
label KolibriOS
root (hd0,0)
kernel /boot/memdisk
initrd /boot/kolibri.img
Con questa variante, descritta nel forum, KolibriOS è posizionato
nella cartella di boot di GN/Linux, quindi non si trova su una
partizione FAT32 e non sarà in grado di salvare eventuali modifiche.
5) I comandi descritti precedentemente potrebbero non funzionare con
GRUB2, (testato da Apocalypse_dn), in tal caso sostituire "linux16" e
"initrd16" a "kernel" and "initrd" (suggerito da vkos).
III. Installazione su chiave USB.
Nella cartella HD_load\USB_Boot è possibile trovare un loader che
permette di installare KolibriOS su chiave USB. Se la chiave USB non è
formattata in FAT32 usare il contenuto della cartella HD_load\USB_Boot_old.
IV. Installazione su CD/DVD.
Esiste una versione speciale di KolibriOS, che contiene, oltra al contenuto presente sul file immagine per i floppy, alcuni programmi pesanti (per gli standard di KolibriOS):
l'emulatore DosBox, i giochi "Fixed Rate Pig" e "sokoban".
È possibile creare un CD live partendo dal file kolibri.img, aggiungendo
tutto quello che si desidera. Successivamente basta un programma per
scrivere su CD/DVD per avere un CD Live.
//non chiaro
The appropriate actions are determined by used CD/DVD write program
(focus on words such as "boot floppy emulation").

104
data/it/docs/KFAR_KEYS.TXT Normal file
View File

@ -0,0 +1,104 @@
Scorciatoie da tastiera per il programma KFar.
Per i pannelli:
frecce, Home, End - muove il cursore sul pannello attivo
Tab - cambia pannello attivo
Enter - entra nella cartella oppure esegue il programma selezionato
F3 - visualizza file selezionato
F5 - copia elementi selezionati nell'altro pannello
Shift+F5 - copia elementi selezionati nello stesso pannello
(ovviamente è necessario specificare un altro nome per i file)
F7 - crea cartella
F8 - cancella gli elementi selezionati
F10 - esce
Alt+F1/Alt+F2 - cambia pannello
Alt+F9 - ingrandisce finestra oppure rimpicciolisce alla dimensione
iniziale
Ctrl+F3 - ordina file e cartelle del pannello attivo per nome
Ctrl+F4 - ordina file e cartelle del pannello attivo per estensione
Ctrl+F5 - ordina file e cartelle del pannello attivo per data
dell'ultima modifica
Ctrl+F6 - ordina file e cartelle del pannello attivo per dimensione
Ctrl+F7 - non ordina, visualizza nell'ordine in cui si trovano sul
- disco ingr
Ctrl+F8 - ordina file e cartelle del pannello attivo per data di
- creazione
Ctrl+F9 - ordina file e cartelle del pannello attivo per data di ultimo
- accesso
F12 - visualizza screen menu
Ctrl+R - aggiorna il pannello attivo
Menu - Mostra il context menu per i file selezionati
LeftCtrl+1/2/3/4 - cambia modalità pannello (brief/medium/full/wide)
RightCtrl+0..9 - va nella cartelle specificata nella sezione
[FolderShortcuts] del file ini relativo a Shortcut0..9
Insert - (de)selezione elemento corrente
Grey[+] - Selezione file e cartelle filtrati
Grey[-] - Selezione file e cartelle non filtrati
I filtri sono del tipo "*.asm,*.inc|template.asm" (seleziona tutti i
file con estensione asm e inc, esclusi quelli chiamati template.asm).
il filtro "*.*" seleziona tutti i file che contengono il carattere
".", quindi tutti quelli che hanno una estensione, per selezionare
tutti i file usare "*".
Il parametro "|" serve per escludere alcuni elementi, mentre ',' o
';' servono a concatenare più criteri.
Grey[*] - Inverte selezione
Alt+<lettera o cifra> - posiziona il cursore sul file che inizia per la
lettera o cifra digitata.
Mostra inoltre una finestra nella quale è possibile scrivere una
successione di caratteri alfanumerici per effettuare una ricerca
più precisa. Le combinazioni Ctrl+Enter/Shift+Ctrl+Enter servono
per spostarsi tra gli elementi inclusi nei risultati di ricerca.
Per il visualizzatore:
Esc = F3 = F10 = Numpad5 - esci
Down - linea successiva
PgDn - pagina successiva
Up - linea precedente
PgUp - pagina precedente
Home - Vai a inizio file
End - Vai a fine file
Left - carattere a destra
Right - carattere a sinistra
Ctrl+Left - nella modalità testo 20 caratteri a sinistra;
nella modalità Hex 1 byte a sinistra
Ctrl+Right - nella modalità testo 20 caratteri a destra;
nella modalità Hex 1 byte a destra
Ctrl+Shift+Left - Vai alla prima riga su schermo
Ctrl+Shift+Right - Vai alla prima riga su schermo
F2 - toggle line wrap
F4 - cambia tra modalità testo e hex
F8 - cambia tra codifica cp866 (DOS) e cp1251 (Win)
Shift+F8 - encoding tables menu
F12 - mostra il menu
F7 - cerca una stringa a partire dalla attuale posizione
(the string and settings are set in the following dialog)
Shift+F7 - continua la ricerca precedente
(use the string and settings from last search by F7)
Alt+F9 - ingrandisce finestra oppure rimpicciolisce alla dimensione
iniziale
Per l'editor:
Esc = F10 - Esci; se il file è stato modificato chiede se salvare le
modifiche
Shift+F10 - Salva ed esci
F2 - Salva il file
Down - muovi il cursore in basso di una riga
PgDn - muovi il cursore in basso di una pagina
Up - muovi il cursore in alto di una riga
PgUp - muovi il cursore in alto di una pagina
Left - muovi il cursore di una posizione a sinistra
Right - muovi il cursore di una posizione a destra
Home - muovi il cursore all'inizio dell riga corrente
End - muovi il cursore alla fine della riga attuale
Backspace - cancella il simbolo che precede il cursore
Del - cancella il simbolo sotto il cursore
Ins - Cambia tra modalità inserici e sostituisci quando si immettono simboli
F12 - mostra il menu
Alt+F9 - ingrandisce finestra oppure rimpicciolisce alla dimensione
iniziale
F7 - cerca una stringa a partire da dove è posizionato il cursore
(la stringa da cercare e altri parametri sono da mettere nella finistra che appare)
Shift+F7 - continua a cercare
diamond
mailto:diamondz@land.ru

238
data/it/docs/MTDBG.TXT Normal file
View File

@ -0,0 +1,238 @@
Introduzione.
mtdbg è un debugger per il sistema operativo KolibriOS. Questo documento
descrive come utilizzare tale programma. Per eventuali domande conviene
scrivere sul forum (in russo, ma esiste anche una sezione inglese)
-- board.kolibrios.org.
Descrizione generica.
mtdbg è in grado di fare il debug di un solo programma alla volta, se non
viene caricato nessun programma, il debug viene disabilitato.
Il programma è a linea di comando, e accetta in input comandi da tastiera
La linea di comando è posizionata in basso, e accetta in input tasti
Backspace,Delete,Home,End,frecce sinistra/destra.
I comandi non sono case-sensitive e il delimitatore è un numero arbitrario
non nullo di spazi.
Per chiudere il debugger è sufficiente usare il comando "quit" senza
nessun argomento, altrimenti da interfaccia cliccando sul pulsante di
chiusura come per le altre applicazioni.
Quando il debugger viene avviato senza argomenti, non viene caricato
nessun programma. Se invece viene avviato con degli argomenti, mtdbg
cercherà di caricare il programma indicato come primo argomento e con
eventuali parametri per il programma passati come argomenti successivi.
È possibile caricare un qualsiasi programma in un secondo
momento con il comando
load <percorso all'eseguibile> [<parametri>]
ad esempio:
load /rd/1/example
LOAD /rd/1/aclock w200 h200
LoaD /hd0/1/menuetos/dosbox/dosbox
negli esempi, mtdbg caricherà il programma passato come primo argomenti,
un eventuale secondo argomento è il parametro da passare al programma
che si vuole caricare.
Il comando "load" restituisce in output nel "messages window", poco più
in alto della linea di comando, se il programma è stato caricato con
successo o meno. In caso di errore, verra mostrata la causa.
L'errore più comune è del tipo, "file not found", probabilmente perché
si è digitato in modo errato il percorso o il nome del programma da
caricare.
Il debugger è in grado di caricare file con simboli relativi al
programma di cui si vuole effetuare il debug.
Si tratta di file di testo, dei quali ogni riga inizia con
0x<hex_value_of_addr> <name>
(righe che non iniziano in questo modo vengono ignorate). Tali file si
possono creare a mano o tramite fasm. È possibile caricare questi file
esplicitamente con il comando
load-symbols <percorso al file>
Inoltre, quando viene eseguito il comando "load", mtdbg controllerà
la presenza di un file contenente simboli relativi al programma e di
estensione .dbg (nel primo esempio controlla la presenza del file
/rd/1/example.dbg). Se tale file esiste, questo viene caricato
automaticamente and if such file exists, e verrà notificato tramite il
messaggio "Symbols loaded", se il caricamento viene eseguito con
successo.
Può succedere che un programma che si vuole caricare è stato
compresso. La compressione funziona, in linea generale, nel
seguente modo: il file di input viene compresso (da qualche
programma apposito), successivamente viene aggiunto un pezzo di codice
che all'avvio del programma effettua una decompressione in memoria.
Se un programma è stato compresso, il suo codice non è visibile al
debugger, e deve venir prima decompresso.
mtdbg è in grado di determinare la maggior parte di compressori
(mxp,mxp_lzo,mxp_nrv,mtappack) e in questi casi suggerisce in automatico
di effettuare la decompressione per vedere il codice del programma.
È sufficiente pigiare 'y' e enter per accettare l'opzione, altrimenti
rifiutarla. Se non viene riconosciuto il metodo di compressione, è
sempre possibile usare il comando unpack (senza argomenti).
Tale comando è da usare solamente se si è sicuro che il programma sia
compresso e che non sia già stato decompresso dal debugger.
[A partire da Kolibri 0.6.5.0, questo paragrafo non è più attuale poiché
è possibile comprimere le applicazioni con kpack e il decompressore è
implementato a livello kernel, in modo da rendere il debug trasparente]
Un programma caricato può essere terminato tramite il comando
"terminate" senza argomenti. Il comando "detach", senza parametri
aggiuntivi "stacca" il programma dal debugger, nel senso che questo
continuerà la sua normale esecuzione senza il debugger, come se questo
non vi fosse mai stato.
Dato uno di questi due comandi, l'attività di debug viene terminata.
È possibile ricaricare il programma precedente con il comando "reload",
senza parametri. Se nel frattempo è stato caricato un altro programma,
questo viene terminato e viene ricaricato il programma precedente con
gli argomenti passati precedentemente, come se fossero stati dati i
comandi
terminate
load <vecchio programma> <vecchi parametri>
Il vantaggio di reload sta nel fatto di essere più immediato e che viene
mantenuto l'indirizzo di memoria, mentre con il comando load questo
viene spostato all'indirizzo 0. (vedi sotto)
Il comando "help", oppure "h", è sempre disponibile.
Tutti i comandi sono divisi in gruppi
"help" senza argomenti mostra l'elenco dei comandi disponibili
"help" con il nome di un gruppo mostra i comandi relativi al gruppo
"help" con il nome di un comando mostra informazioni sull'uso di tale
comando
esempi:
help
help control
h LoaD
La finestra del debugger è composta dai seguenti elementi enumerati
dall'alto al basso:
- status string. Se è stato caricato un programma, mostra il suo nome e
stato ("Running/Paused"), altrimenti "No program
loaded".
- registers window - Mostra valori di caratteri generico, valori di
registro e stato delle singole flag:
CF,PF,AF,ZF,SF,DF,OF: se una flag viene rimossa,
allora è contrassegnata da lettere minuscole, se
creata allora da lettere maiuscole. I valori di
registro che vengono modificati sono contrassegnati
in verde.
- data window (dump window) - mostra la porzione di memoria contenente
il programma caricato
- code window (disassembler window) - mostra il codice del programma come
"disassembled instructions"
- messages window
- command line window
Nella "Dump window" è possibile osservare i dati a partire da ogni
indirizzo, usare il comando
d <espressione>
Il comando "d", senza parametri mostra la "dump window".
In modo analogo funziona il seguente comando per la "code window"
u <espressione>
oppure "u".
Esempi:
d esi - mostra i dati all'indirizzo esi (e.g. utile prima di eseguire
una istruzione rep movsb)
d esp - mostra lo stack
u eip - disassembla le istruzioni a partire dall'attuale indirizzo
Le espressioni in mtdbg possono includere
- costanti esadecimali
- nomi generici dei registri degli indirizzi (8 32-bits, 8 16-bits e
8 8-bits) e registri eip; valori di 16- e 8-bits sono riempiti nel
registro di 0 fino a raggiungere i 32 bit.
- quattro operatori aritmetici +,-,*,/ (con le priorità standard) e le
parentesi
- [se sono stati caricati i simboli del programma] nomi, caricati dal
file dbg
Tutti i calcoli sono effettuati modulo 2^32.
Esempi di espressioni:
eax
eip+2
ecx-esi-1F
al+AH*bl
ax + 2* bH*(eip+a73)
3*esi*di/EAX
Il comando
? <espressione>
calcola il valore della espressione passata come argomento.
I valori del registro caricato nel programma può essere modificato con
il comando "r" in uno dei seguenti modi (sono equivalenti)
r <registro> <espressione>
r <registro>=<espressione>
Supponendo che sia stato caricato un programma con successo per il
debug, subito dopo il programma verrà sospeso e non più eseguito.
Premendo Ctrl+F7 (oppure dalla linea di comando "s") è possibile far
effettuare una azione al programma, dopodiché questo verrà sospeso
immediatamente, e il debugger mostrerà i nuovi valori nel registro e in
memoria.
la chiamata di sistema "int 40h" è considerata una azione.
Premendo Ctrl+F8 (oppure dalla linea di comando "p") permette di
eseguire il programma, e chiamate a procedure esterne, cicli e altre
strutture di controllo oppure operazioni con prefisso rep/repz/repnz
verranno interpretate come una singola azione.
Solitamente si chiede di eseguire azioni singole su sezioni di
programmi, ad esempio per tenere traccia dei valori in memoria e nel
registro.
Il comando
g <espressione>
riprende l'esecuzione del programma e attende che il controllo vada a
eip=indirizzo dato, e in quel momento sospende il programma.
Se il comando "g" viene dato senza argomenti, viene semplicemente
ripresa l'esecuzione del programma.
Per sospendere l'esecuzione del programma è sufficiente usare il comando
"stop", senza parametri o argomenti.
In una situazione standard il programma viene eseguito normalmente,
quando sono soddisfatte alcune condizioni, il programma viene sospeso e
invia un segnale al debugger. Tali condizioni sono chiamate
"breakpoints" o "breaks".
L'utilizzo principale dei breakpoints è quello di interrompere
l'esecuzione del programma in determinati punti. I breakpoint si
impostano con il comando
bp <espressione>
Si noti che se è presente un solo breakpoint, allora è più conveniente
usare il comando "g" con parametri.
Vi sono altri tipi di breakpoint che permettono di accedera ad una data
area di memoria. Il numero massimo di breakpoint di questo tipo sono 4,
causa limitazioni hardware.
bpm <espressione> - interrompe ad ogni accesso ad ogni byte ad un
indirizzo dato
bpm w <espressione> - interrompe alla scrittura di ogni byte ad un
indirizzo dato
bpmb,bpmw,bpmd <espressione> - interrompe all'accesso di ogni byte, o
dword all'indirizzo dato. bpm e bpmb sono
sinonimi. Quando viene usato bpmw o bpmd,
gli indirizzi devono essere del tipo
corrispondenti al tipo di dato, quindi
per i word è dispari, per i dword è
divisibile per 4.
bpmb,bpmw,bpmd w <espressione> - simile al break in scrittura.
Per vedere la lista dei breakpoints impostati, usare il comando "bl",
per ottenere informazioni su un particolare breakpoint, usare il
comando "bl <numero>".
È possibile rimuovere i breakpoint con il comando "bc <numero>", oppure
disabilitati momentaneamente con il comando "bd <numero>" e riabilitati
con "be <numero>"
Note.
1. Quando si effettua il debug di un proprio programma, è possibile
mettere nel codice istruzione int3. Queste istruzioni creano delle
eccezioni durante la normale esecuzione, che porta alla terminazione
del programma, ma durante l'attività di debug permette di non dover
pensare agli indirizzi di memoria da usare nei comandi g e bp.
2. La notazione standard per l'output e input è quella esadecimale.
3. Quando il programma viene eseguito, la finestra del registro e dei
dati mostrano delle informazioni prima dell'avvio. Non si possono
impostare i valori di registro in questo mode. Tuttavia il
comando "d" in questo modo mostra informazioni che erano vere nel
momento in cui si è immesso il comando.
diamond

269
data/it/docs/README.TXT Normal file
View File

@ -0,0 +1,269 @@
************************
* Kolibri OS 0.7.7.0+ *
* Febbraio 2010 *
************************
L'ultima versione di KolibriOS è disponibile sul sito ufficiale:
http://kolibrios.org
Se ci sono domande potete trovare supporto sul nostro forum
http://board.kolibrios.org (russo, inglese)
***********************************
* Novità di questa release *
***********************************
Sono state apportate le seguenti modifiche, revisioni e correzioni
nel kernel (il testo è in inglese):
From Evgeny Grechnikov (Diamond) - Russian Federation
1) Improvement of drives detection using BIOS service (V86)
2) Kernel bugfixes.
From Sergey Semyonov (Serge) - Russian Federation
1) Driver for ATI videocards updated.
2) Linux-like kernel mutexes
From Mihail Semenyako (mike.dld) - Republic of Belarus
1) Refactoring of window subsystem.
From <Lrz>
1) Processing API functions in order to completely remove the shift-register-call
2) Refactoring, optimization, bugfixes of some places in the kernel.
From A.Jerdev (art_zh) - United Kingdom
1) Memory-mapped I/O (MMIO) access from the userworld.
2) PCIe Extended configuration space access (auto-adjust for AMD-NPT since Athlon64).
From turbanoff
1) Read from ext2fs/ext3fs.
From Marat Zakiyanov (Mario79) - Russian Federation
1) Improvements in the processing of mouse clicks.
From hidnplayr
1) Rewriting of the entire network subsystem.
From Asper
1) Drivers for the sound cards VT823(X) and EMU10K1X.
From tsdima
1) Driver for the sound card ForteMedia fm801.
From Maxis
1) changes in free memory checks.
Sono state apportate le seguenti modifiche, revisioni e correzioni
nelle applicazioni (il testo é in inglese):
* Nuove versioni di applicazioni e nuove applicazioni:
FTPS - tsdima, some improvements
VIEW3DS - macgub, version 0.054
FASM - Pavel Rymovski (Heavyiron), updated to version 1.69.11
IgorA, use the library box_lib, russification,
Marat Zakiyanov (Mario79) fix bugs encountered
Evgeny Grechnikov (Diamond), fix of window wrapping
PCIDEV - art_zh, MMIO sample dumps added; vendors database
trimmed to reduce the distro size.
BOARD - Evgeny Grechnikov (Diamond), do not throw out existing
messages at the program start
UNVWATER - Asper, demo ported from OctaOS
(the author is Octavio Vega Fernandez).
HEED - staper, version 0.14: use the library box_lib;
Ctrl+C/X/V, Ctrl+B to select a block
Marat Zakiyanov (Mario79), using of OpenDialog component,
little optimization of the code
SHELL - Albom, version 0.4.2
CPU - Evgeny Grechnikov (Diamond) at the suggestion of
Kirill Lipatov (Leency), do not show system processes
by default
HTMLV - Kirill Lipatov (Leency), version 0.62a
EOLITE - Kirill Lipatov (Leency), version 0.98.7a
RTFREAD - Sorcerer, cosmetic fix
dunkaist, menu_bar and scroll_bar from box_lib, 'end' hotkey
E80 - Albom, version 0.5.1
KIV - Evgeny Grechnikov (Diamond), file name in the window
title, configurable keyboard shortcuts for next/prev
images in the current folder
SUDOKU - staper, port of Sudoku game - that is a puzzle with digits, where you
have to fill free cells with digits from 1 to 9 so that every row,
every column and every small square 3x3 contain each digit just one time.
There are 9 levels in the game.
REVERSI - staper, port of strategy game Reversi (Othello)
MSQUARE - staper, math puzzle "magic square": sum of the numbers in rows, columns
(less often in diagonals) should be equal
FINDN-S - Artemonische, a simple game in which you have to collect all the numbers
in the order of 10 to 90
PANEL - Evgeny Grechnikov (Diamond), a little change in the panel clock
and reanimation of backlight on the Alt+[Shift+]Tab press.
AC97SND - Asper, support of playlists in m3u format.
@NOTIFY - SoUrcerer, program for popup text messages
DOSBOX - Evgeny Grechnikov (Diamond), version 0.74
ASCIIVJU - Konstantin Dutkevich (Nazarus), program shows ASCII table
PIPETKA - Rock_maniak_forever, program to get color of a pixel on the screen
SNAKE - dunkaist, yet another implementation of classic game
* Nuove versioni delle librerie dinamiche e nuove librerie dinamiche:
libini - Evgeny Grechnikov (Diamond), added function to read
keyboard shortcuts
box_lib - IgorA, update component tree_list, new component
text_editor, documentation on the library
Marat Zakiyanov (Mario79) refinement of ОpenDialog component, rewriting
of some applications to use it, new component PathShow
/------------------------------------------------\
* Date di pubblicazione dei kit di distribuzione *
\------------------------------------------------/
RE N1 30.08.2003
RE N2 07.10.2003
RE N3 26.11.2003
RE N4 23.12.2003
RE N5 15.02.2004
RE N6 27.03.2004
KOLIBRI N1 16.05.2004
RE N7 11.06.2004
KOLIBRI N2 28.08.2004
RE N8 01.12.2004
KOLIBRI N3 22.02.2005
Beta 2: 20.03.2005
KOLIBRI N4 07.06.2005
KOLIBRI 0.5.0.0 04.10.2005
0.5.1.0 12.10.2005
0.5.2.0 02.12.2005
0.5.3.0 18.03.2006
0.5.8.0 09.07.2006
0.5.8.1 25.07.2006
0.6.0.0 04.09.2006
0.6.3.0 31.10.2006
0.6.5.0 14.02.2007
0.7.0.0 07.06.2007
0.7.1.0 23.09.2007
0.7.5.0 31.01.2009
0.7.7.0 13.12.2009
/----------------\
* KolibriOS TEAM *
\----------------/
Questa lista contiene i nomi di tutti coloro che hanno partecipati in
modo attivo alla creazione e manutenzione, ove e quando possibile, al
progetto KolibriOS.
(I nomi sono enumerati in base a quando si sono aggiunte al progetto, a partire da chi ha partecipato sin dall'inizio, fino a chi si è aggregato negli ultimi giorni)
* Trans \
* VaStaNi |
* Ivan Poddubny |
* Marat Zakiyanov (Mario79) |
* Mihail Semenyako (mike.dld) | Programmazione del sistema
* Sergey Kuzmin (Wildwest) |
* Andrey Halyavin (halyavin) | loader,
* Mihail Lisovin (Mihasik) | miglioramenti al kernel
* Andrey Ignatiev (andrew_programmer) | e via dicendo
* NoName |
* Evgeny Grechnikov (Diamond) |
* Iliya Mihailov (Ghost) |
* Sergey Semyonov (Serge) |
* Johnny_B |
* kasTIgar |
* SPraid |
* Rus |
* Alver |
* Maxis |
* Galkov |
* CleverMouse |
* tsdima |
* turbanoff |
* Asper |
* art_zh /
* Mihail Lisovin (Mihasik) \
* Andrey Ivushkin (Willow) |
* Mihail Semenyako (mike.dld) |
* Pavlushin Evgeny (Exis) |
* Ivan Poddubny | Programmazione di applicazioni
* Marat Zakiyanov (Mario79) |
* Sergey Kuzmin (Wildwest) |
* Andrey Halyavin (halyavin) | creazione di nuove e
* Hex | port di esistenti,
* Andrey Ignatiev (andrew_programmer) | come anche revisione
* ealex | di vecchie applicazioni
* Olaf |
* Evgeny Grechnikov (Diamond) |
* Navanax |
* Johnny_B |
* Pavel Rymovski (Heavyiron) |
* Vitaly Bendik (mistifi(ator) |
* Iliya Mihailov (Ghost) |
* Maxim Evtihov (Maxxxx32) |
* Vladimir Zaitsev (Rabid Rabbit) |
* vectoroc |
* Alexey Teplov (<Lrz>) |
* Sergey Semyonov (Serge) |
* YELLOW |
* iadn |
* Maciej Guba (macgub) |
* Mario Birkner (cYfleXX) |
* hidden player (hidnplayr) |
* trolly |
* nilgui |
* kaitz |
* DedOk |
* SPraid |
* Rus |
* Alver |
* Dron2004 |
* Gluk |
* Aleksandr Bogomaz (Albom) |
* Kirill Lipatov (Leency) |
* Vasiliy Kosenko (vkos) |
* IgorA |
* staper |
* chaykin |
* Alexander Meshcheryakov |
(Self-Perfection) |
* CleverMouse |
* tsdima |
* art_zh |
* Asper |
* Pterox |
* Artemonische |
* dunkaist /
* Hex \
* Diamond / Documentazione
* CodeWorld \ Forum http://meos.sysbin.com
* mike.dld / Sito web http://kolibrios.org; Server SVN
* Alexey Teplov (<Lrz>) \ (logo)
* goglus | Design (sfondo)
* Kirill Lipatov (Leency) / (icone)
* Pavel Rymovski (Heavyiron) \
* Vitaly Bendik (mistifi(ator) |
* vectoroc |
* Veliant | testing
* AqwAS |
* Mike |
* camper |
* Dmitry the Sorcerer |
* Ataualpa |
* Maxis |
* Galkov |
* ChE /
e altri...
KolibriOS team

387
data/it/docs/STACK.TXT Normal file
View File

@ -0,0 +1,387 @@
Cosaè implementato
==================
Le seguenti feature sono presenti nel codice stack TCP/IP:
IP layer.
ICMP.
TCP layer.
UDP layer.
local loopback.
Realtek 8029 PCI ethernet interface.
Realtek 8139 PCI ethernet interface.
Intel i8255x PCI ethernet interface.
Dynamic ARP table.
PPP dialer
E sono implementate le seguenti applicazioni:
Server HTTP
Telnet
Client POP
DNS Name resolver
Server MP3
Client TFTP
Client IRC
Vi sono inoltre applicazioni sperimentali, per los terming di musica e
per la comunicazione via socket, in fase di sviluppo vi è anche un
browser web.
Cosa non è implementato
=======================
Il layer IP non processa le opzioni dello header.
Il layer IP non supporta il routing.
Non è supportata la 'Packet fragmentation'.
Come configurare Kolibri per il PPP
===================================
Vedi ppp.txt
Come configurare Kolibri per l'Ethernet
=======================================
Inanzitutto è necessario possedere una scheda ethernet supportata e
installata, o presente sulla scheda madre. Se non si è certi del tipo di
hardware, si può provare a configurare lo stack. Se l'hardware è
supportato allora verrà notificato e configurato correttamente.
Setting Up the ARP Table
------------------------
Kolibri's ARP table is dynamically created and maintained; You can see what
hosts Kolibri has communicated with by running the ARPSTAT application.
Enabling Ethernet
-----------------
Boot Kolibri, then select STACKCFG from the NET menu.
Press the 'Read' Button, then select 'Packet Driver'.
Press 'Change' next to the IP address, and enter the IP address you want
to use. Make sure it is on the same sub-net as the LAN to which you are
connected.
Press 'Apply' to action the changes.
Close the program.
The stack is now running, which you can test by pinging Kolibri from a
remote host.
The simplest way to connect two PC's together is using a 'Null Modem'
Ethernet cable. These simply cross certain wires over. They can be
purchased from PC stores, but are simple to make. Details can be found
on the web. Look on google for 'ethernet cross over cable' or similar.
How to use TCP/IP locally, with no Network
==========================================
Kolibri supports a form of local loopback that means applications on the
same PC can communicate with each other via sockets as though they
were on separate hosts. To connect to an application on the same machine,
specify the local IP address as the destination address. You do not even
need to configure the stack for ethernet; local loopback will work without
any network hardware. It's great for development and testing.
Application Programming Interface
=================================
The developer can access the stack through interrupt 0x40, function 53.
The file TFTPC.ASM gives a good example of how to use the programming
interface ( at least, for UDP), but as network communication is complex
I'll give an overview.
Sockets
=======
Applications connect to each other and pass information between themselves
through a mechanism called a 'socket'. Sockets are end-points for
communication; You need one at each application to communicate.
Using sockets is a little like using files on an OS; You open them, read
and write to them, then close them. The only thing that makes life slightly
more complicated is that unlike with a file, you have something intelligent
at the other end ( which for example may not want to close when you do! )
Lets deal with the terminology before we go any further.
socket A unique identifier used by the application for communication.
local port A number that identifies this application on the local host.
Ports are a way to allow multiple applications to communicate
with other hosts without the data becoming mixed up. ( The
technical term is 'multiplex' ). Port numbers are 16 bit.
remote port A number that identifies the application on the remote host
to which we are communicating with. To the remote host, this is
it's 'local port'. Port numbers are 16 bit.
IP Address A 32 bit number that identifies the remote host PC that we are
communicating with.
Passive Refers to the mode by which a socket is opened; When opening in
passive mode, the local PC is awaiting an incoming connection.
Active Refers to the mode by which a socket is opened; When opening in
active mode, the local PC will attempt to connect to a remote
PC.
When you connect to a socket on a remote PC, you need to specify more than
just the IP address, otherwise the remote stack will not know to which
application it should send your data. You must fully qualify the address,
which means you specify the IP address and the port number. This would be
written like this
192.168.1.10:80 ; Connect to port 80 on the machine 192.168.1.10
Port numbers are important. Some are 'well known' and provide access to
common applications. For example port 80 is used by HTTP servers; That
way I can connect to a webserver on a host without having to find out
what port number the application is listening on.
This brings me to the way in which you open a socket; As I said earlier,
there are two modes, Passive and Active. A webserver would open a passive
socket, as it is waiting for incoming connection requests. A web browser
would open an active socket because it is attempting to connect to a
specified remote host.
Access to programming interface
===============================
The developer accesses the stack functions through interrupt 0x40,
function 53. Some functions may be accessed through function 52, but these
are mainly for stack configuration.
Here is a summary of the functions that you may use and the parameter
definitions.
Get Local IP Address
--------------------
eax = 52
ebx = 1
IP address returned in eax ( in internet byte order )
Write to stack input queue
--------------------------
eax = 52
ebx = 6
edx = number of bytes to write
esi = pointer to data ( in application space )
On return, eax holds 0 for OK, or 0xFFFFFFFF for error.
This interface is for slow network drivers only ( PPP, SLIP )
Read data from network output queue
-----------------------------------
eax = 52
ebx = 8
esi = pointer to data ( in application space )
On return, eax holds number of bytes transferred.
This interface is for slow network drivers only ( PPP, SLIP )
Open a UDP socket
-----------------
eax = 53
ebx = 0
ecx = local port
edx = remote port
esi = remote ip address ( in internet byte order )
The socket number allocated is returned in eax.
A return value of 0xFFFFFFFF means no socket could be opened.
Open a TCP socket
-----------------
eax = 53
ebx = 5
ecx = local port
edx = remote port
esi = remote ip address ( in internet byte order )
edi = mode : SOCKET_PASSIVE or SOCKET_ACTIVE ( defined in stack.inc )
The socket number allocated is returned in eax.
A return value of 0xFFFFFFFF means no socket could be opened.
Close a socket (UDP Only )
--------------------------
eax = 53
ebx = 1
ecx = socket number
On return, eax holds 0 for OK, or 0xFFFFFFFF for error.
Close a socket (TCP Only )
--------------------------
eax = 53
ebx = 8
ecx = socket number
On return, eax holds 0 for OK, or 0xFFFFFFFF for error.
Poll socket
-----------
eax = 53
ebx = 2
ecx = socket number
On return, eax holds the number of bytes in the receive buffer.
Read socket data
----------------
eax = 53
ebx = 3
ecx = socket number
On return, eax holds the number of bytes remaining, bl holds a data byte.
Write to socket ( UDP only )
----------------------------
eax = 53
ebx = 4
ecx = socket number
edx = number of bytes to write
esi = pointer to data ( in application space )
On return, eax holds 0 for OK, or 0xFFFFFFFF for error.
Return socket status ( TCP only )
---------------------------------
eax = 53
ebx = 6
ecx = socket number
On return, eax holds the sockets TCP status.
This function can be used to determine when a socket has actually connected
to another socket - data cannot be written to a socket until the connection
is established (TCB_ESTABLISHED). The states a socket can be in are defined
in stack.inc as TCB_
Write to socket ( TCP only )
----------------------------
eax = 53
ebx = 7
ecx = socket number
edx = number of bytes to write
esi = pointer to data ( in application space )
On return, eax holds 0 for OK, or 0xFFFFFFFF for error.
Check port number
-----------------
eax = 53
ebx = 9
ecx = port number
This function is used to determine if a port number
is in use by any sockets as a local port number. Local
port numbers are normally unique.
On return, eax is 1 for port number not in use, 0 otherwise.
Opening a TCP socket in Kolibri
===============================
There are two ways to open a socket - Passive or Active.
In a Passive connection your application 'listens' for incoming
requests from remote applications. Typically this will be done when
you are implementing a server application that allows any other
application to connect to it. You would specify a 'known' local
port number, such as 80 for a web server. You would leave the
remote IP and remote port number as 0, which indicates any
remote application may connect.
Once the socket has been opened you would wait for an incoming
connection before doing anything. This can be by either checking
the socket status for TCB_ESTABLISHED, or waiting for data in the
receive buffer.
In an Active connection, you are making a connection to a specified
remote port. The remote IP and remote port parameters must be filled
in with non-zero values ( otherwise, what are you connecting to? ).
You also specify a unique local port number so the remote application
can uniquely identify you - after all, there may be several applications
on your machine connected to the same remote host. See below for finding
a unique port number.
How to find an unused local port number
=======================================
Typically when you are creating an active connection to a remote
socket you will want to choose a unique local port number. Local
port numbers normally start from 1000; The following code may
be used to obtain an unused port number prior to making the
open socket call.
mov ecx, 1000 ; local port starting at 1000
getlp:
inc ecx
push ecx
mov eax, 53
mov ebx, 9
int 0x40
pop ecx
cmp eax, 0 ; is this local port in use?
jz getlp ; yes - so try next
; ecx contains a free local port number
Writing data to a socket
========================
There are two functions available depending on whether the socket
was opened for TCP or UDP protocol; The call parameters are the
same however. When the socket is being opened for TCP, use the
status function to poll for a connection - data cannot be written
to a socket until another socket has connected to it, and the
state of the socket is TCB_ESTABLISHED.
When you write data, the call results in a single IP packet being
created and transmitted. Thus the user application is responsible for
the size of transmitted packets. Keep the packet sizes under 768 bytes.
If you are writing a terminal program like telnet, you may want to send
a packet for each keystroke ( inefficient ) or use a timer to send data
periodically ( say, every second ).
Reading data from a socket
==========================
There is one function to read data from a sockets receive buffer. This
function retrieves one byte at a time. You can use the poll function to
test the receive buffer for data.
Closing a socket
================
Simply call the appropriate function - there is one for TCP, and another
for UDP. When closing a TCP socket, don't forget that the other end
may continue to send data, so the socket may remain active for a
few seconds after your call.
If you have any questions or have suggestions for improving this
document please contact me at mikeh@oceanfree.net.

68
data/it/doexe2.asm Normal file
View File

@ -0,0 +1,68 @@
filename equ '%EXENAME%'
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

Binary file not shown.

BIN
data/it/games/checkers Normal file

Binary file not shown.

BIN
data/it/games/fara Normal file

Binary file not shown.

BIN
data/it/games/kosskin.gfx Normal file

Binary file not shown.

BIN
data/it/games/megamaze Normal file

Binary file not shown.

BIN
data/it/games/reversi Normal file

Binary file not shown.

BIN
data/it/games/rforces Normal file

Binary file not shown.

BIN
data/it/games/soko Normal file

Binary file not shown.

BIN
data/it/games/xonix Normal file

Binary file not shown.

BIN
data/it/hdread Normal file

Binary file not shown.

28
data/it/icons.dat Normal file
View File

@ -0,0 +1,28 @@
AA-KFM -005-/SYS/FILE MANAGERS/KFM - *
AB-TINYPAD -009-/SYS/TINYPAD - *
BA-EOLITE -002-/SYS/FILE MANAGERS/EOLITE - *
CA-SHELL -020-/SYS/SHELL - *
BB-KFAR -016-/SYS/FILE MANAGERS/KFAR - *
AC-RDSAVE -017-/SYS/RDSAVE - *
BC-CALC -004-/SYS/CALC - *
CB-ANIMAGE -015-/SYS/MEDIA/ANIMAGE - *
JA-KPACK -010-/SYS/KPACK - *
IH-SNAKE -003-/SYS/GAMES/SNAKE - *
JI-MINE -014-/SYS/GAMES/MINE - *
II-LIFE2 -013-/SYS/DEMOS/LIFE2 - *
JH-MBLOCKS -011-/SYS/GAMES/MBLOCKS - *
HI-PONG -012-/SYS/GAMES/PONG3 - *
GI-15 -000-/SYS/GAMES/15 - *
HH-CLICKS -018-/SYS/GAMES/CLICKS - *
JB-DOCPACK -008-/SYS/DOCPACK - *
IA-BOARD -019-/SYS/DEVELOP/BOARD - *
JC-HEXEDIT -022-/SYS/DEVELOP/HEED - *
HA-MTDBG -006-/SYS/DEVELOP/MTDBG - *
AH-PIPES -026-/SYS/GAMES/PIPES - *
AI-SUDOKU -025-/SYS/GAMES/SUDOKU - *
BI-GOMOKU -024-/SYS/GAMES/GOMOKU - *
BH-XONIX -021-/SYS/GAMES/XONIX - *
GH-CHECKERS-001-/SYS/GAMES/CHECKERS - *
CI-KOSILKA -023-/SYS/GAMES/KOSILKA - *
CH-FLOOD-IT-027-/SYS/GAMES/FLOOD-IT - *
IB-FASM -010-/RD/1/DEVELOP/FASM - *

BIN
data/it/iconstrp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

30
data/it/index_htm Normal file
View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>KolibriOS web server - default message</title>
</head>
<body>
<h1>Welcome to KolibriOS server</h1>
<p>
If you can read this with an external html-browser then Kolibri
networking is correctly set up.
<br /><br />This file: /rd/1/index.htm
</p>
<ul>
<li><a href="/TinyStat">TinyStat</a></li>
<li><a href="/TinyBoard">TinyBoard</a></li>
</ul>
</body>
</html>

BIN
data/it/kerpack Normal file

Binary file not shown.

BIN
data/it/keymap.key Normal file

Binary file not shown.

BIN
data/it/kuzkina.mid Normal file

Binary file not shown.

1
data/it/lang.inc Normal file
View File

@ -0,0 +1 @@
lang fix en

28
data/it/lang.ini Normal file
View File

@ -0,0 +1,28 @@
[start]
startlng = 1
[comkey]
ccomkey1 = 1
ccomkey2 = 4
ccomkey3 = 7
[altkey]
altkey1 = 1
altkey2 = 4
altkey3 = 7
altkey4 = 3
altkey5 = 5
altkey6 = 6
altkey7 = 2
altkey8 = 0
altkey9 = 0
altkey0 = 0
[langs]
1 = En
2 = Fi
3 = Ge
4 = Ru
5 = Fr
6 = Et
7 = Ua

BIN
data/it/lib/msgbox.obj Normal file

Binary file not shown.

BIN
data/it/lib/pixlib.obj Normal file

Binary file not shown.

BIN
data/it/lib/sort.obj Normal file

Binary file not shown.

169
data/it/menu.dat Normal file
View File

@ -0,0 +1,169 @@
#0 **** MAIN ****
Giochi > /@1
Demo > /@4
Grafica > /@6
Multimedia > /@7
Sviluppo > /@8
Sistema > /@10
Data processing > /@14
Network > /@15
Altro > /@18
Aiuto /rd/1/docpack
Esegui applicazione /rd/1/run
Spegni /rd/1/end
#1 **** GAMES ****
Giochi di logica > /@2
Arcade > /@3
Emulatori /rd/1/e80
Memory /rd/1/games/mblocks
FreeCell /rd/1/games/freecell
Pipes /rd/1/games/pipes
Kosilka /rd/1/games/kosilka
RockeT ForceS /rd/1/games/rforces
Trova i numeri /rd/1/games/FindNumbers
#2 **** LOGICAL GAMES ****
C4 /rd/1/games/c4
Gioco del quindici /rd/1/games/15
Campo minato /rd/1/games/mine
Just Clicks /rd/1/games/clicks
Checkers /rd/1/games/checkers
SQ_GAME /rd/1/games/sq_game
Color Lines /rd/1/games/lines
Flood-it! /rd/1/games/flood-it
MegaMaze /rd/1/games/megamaze
Battaglia navale /rd/1/games/sw
Sudoku /rd/1/games/sudoku
Go-moku /rd/1/games/gomoku
Reversi /rd/1/games/reversi
#3 **** ARCADES ****
Tetris /rd/1/games/tetris
Pong /rd/1/games/pong
New Pong /rd/1/games/pong3
Red Square /rd/1/games/rsquare
Xonix /rd/1/games/xonix
ArcanII /rd/1/games/arcanii
Phenix /rd/1/games/phenix
Snake /rd/1/games/snake
#4 **** DEMOS ****
3D > /@5
Fuoco /rd/1/demos/fire
Cerchio /rd/1/demos/circle
Frattale /rd/1/demos/tinyfrac
Demo Colori /rd/1/demos/colorref
Occhi /rd/1/demos/eyes
Vortice /rd/1/demos/tube
Plasma /rd/1/demos/plasma
Moveback /rd/1/demos/movback
Life /rd/1/demos/life2
TranTest /rd/1/demos/trantest
WEB /rd/1/demos/web
Fuochi d'artificio /rd/1/demos/firework
UnvWater /rd/1/demos/unvwater
#5 **** 3D demos ****
ScreenSaver /rd/1/3d/crownscr
Cubo 3D /rd/1/3d/3dcube2
Labirinto 3D /rd/1/3d/free3d04
Cuore 3D /rd/1/3d/3dsheart
View3DS /rd/1/3d/view3ds
CubeLine /rd/1/3d/cubeline
3D-textured cube 2 /rd/1/3d/cubetext
Gears /rd/1/3d/gears
FlatWave /rd/1/3d/flatwav
3D-waved area /rd/1/3d/3dwav
#6 **** GRAPHICS ****
Visualizzatore Immagini /rd/1/media/kiv
Animage /rd/1/media/animage
#7 **** AUDIO ****
MidAMP /rd/1/media/midamp
CD player /rd/1/media/cdp
#8 **** PROGRAMMING ****
Esempi > /@9
Gestore di archivi KPack /rd/1/kpack
Compilatore FASM /rd/1/develop/fasm
Debug Board /rd/1/develop/board
Debugger /rd/1/develop/mtdbg
Hex2Dec2Bin /rd/1/develop/h2d2b
Codici ASCII /rd/1/develop/keyascii
SCAN-codes /rd/1/develop/scancode
#9 **** EXAMPLES ****
Threads /rd/1/develop/thread
IPC /rd/1/develop/ipc
Color slider /rd/1/demos/cslide
Esempio Console 1 /rd/1/develop/testcon2
Esempio Console 2 /rd/1/develop/test_gets
Esempio Message Boxes /rd/1/demos/use_mb
#10 **** SYSTEM ****
Impostazioni > /@11
System sensors > /@12
Work with files > /@13
Testing > /@19
Opzioni Accessibilità > /@20
Debug board /rd/1/develop/board
#11 **** SETTINGS ****
Device /rd/1/setup
Generatore di sfondi /rd/1/pic4
Colori e temi /rd/1/desktop
Gestore icone /rd/1/icon
MyKey /rd/1/mykey
Video mode for ATI /rd/1/vmode
#12 **** SYSTEM SENSORS ****
Process manager /rd/1/cpu
PCI devices /rd/1/pcidev
Test graphics speed /rd/1/mgb
CPUID /rd/1/cpuid
Ghost Monitor /rd/1/gmon
K. Bus disconnected /rd/1/kbd
HDD informer /rd/1/hdd_info
Read HDD /rd/1/hdread
#13 **** WORK WITH FILES ****
KFAR /rd/1/File Managers/kfar
KFM /rd/1/File Managers/kfm
Eolite /rd/1/File Managers/Eolite
SHELL console /rd/1/shell
Salva immagine RD /rd/1/rdsave
#14 **** DATA PROCESSING ****
Calcolatrice /rd/1/calc
Tinypad /rd/1/tinypad
TextEdit /rd/1/develop/t_edit
Table Processor /rd/1/table
Graph builder /rd/1/graph
Hex-Editor /rd/1/develop/heed
#15 **** NET ****
Servers > /@16
Clients > /@17
Configurazione /rd/1/network/stackcfg
Zero-Config /rd/1/network/zeroconf
Network status /rd/1/network/ethstat
ARP status /rd/1/network/arpstat
#16 **** SERVERS ****
SMTPS /rd/1/network/smtps
HTTPS /rd/1/network/https
FTPS /rd/1/network/ftps
#17 **** CLIENTS ****
TFTP client /rd/1/network/tftpc
Internet-chess /rd/1/network/chess
Internet downloader /rd/1/network/downloader
Text-based browser /rd/1/htmlv
NNTP-NewsGroups /rd/1/network/nntpc
TELNET /rd/1/network/telnet
POP - MAIL /rd/1/network/popc
Client IRC /rd/1/network/airc
YAHOO messenger (demo) /rd/1/network/ym
JMail /rd/1/network/jmail
VNC client /rd/1/network/vncclient
DNS resolver /rd/1/network/nslookup
#18 **** OTHER ****
Orologio analogico /rd/1/demos/aclock
Orologio binario /rd/1/demos/bcdclk
Timer /rd/1/demos/timer
ScreenShoter /rd/1/scrshoot
Calendario /rd/1/calendar
Lettore RTF /rd/1/rtfread
#19 **** SYSTEM TESTS ****
Protection test /rd/1/test
Test Monitor /rd/1/disptest
#20 **** SYSTEM SPECIAL ****
Lente di ingrandimento /rd/1/magnify
Tastiera da schermo /rd/1/zkey
Tavola caratteri /rd/1/ASCIIVju
##

BIN
data/it/network/jmail Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[ipconfig]
; type should be static or zeroconf
; zeroconf means the service first tries to contact a DHCP server
; If dhcp is not available, it switches to link-local
type = zeroconf
ip = 10.0.2.15
gateway = 10.0.2.2
dns = 10.0.2.2
subnet = 255.255.255.0
[proxy]
; If Internet connection requires HTTP proxy, set it here
; and uncomment following lines:
;proxy = <set your proxy IP-addr or domain name here>
;port = <set your proxy port here>
; If proxy requires authentification, uncomment following lines too
; (otherwise, leave them commented):
;user = <set username here>
;password= <set password here>

40
data/it/panel.ini Normal file
View File

@ -0,0 +1,40 @@
[Variables]
PanelHeight=24
PanelWidth=0
SoftenHeight=4
ButtonTopOffset=2
ButtonBottOffset=2
[Flags]
SoftenUp=1
SoftenDown=1
MinLeftButton=1
MinRightButton=0
MenuButton=1
RunApplButtons=1
ClnDesktButton=1
Clock=1
CpuUsage=1
ChangeLang=1
Attachment=1
ButtonsStyle=0
[Colors]
MenuButton=0,100,0
ClnDesktButton=0,128,255
Clock=0,128,255
CpuUsage=0,100,0
CpuUsageBckgr=255,0,0
ChangeLang=0,128,255
PageList=255,255,255
Text=255,255,255
AltTab=255,128,0
[ApplicationsPaths]
End=/sys/END
Menu=/sys/@MENU
Run=/sys/RUN
PrnScr=/sys/SCRSHOOT
Clock=/sys/CALENDAR
CpuUsage=/sys/GMON
MouseEmul=/sys/MOUSEMUL

BIN
data/it/setup.dat Normal file

Binary file not shown.

BIN
data/it/vmode Normal file

Binary file not shown.