From 7e63294b5e398db636c8ec13e63014f8ee408f42 Mon Sep 17 00:00:00 2001 From: Andrew Date: Tue, 20 May 2025 17:36:10 +0200 Subject: [PATCH] Post-SVN clean up (#244) - Move source code from `trunk` into program root directory. - Fix build and ASM files. - Translated a few RU comments to en_US. - Note: Line endings standardised from `CRLF` > `LF`, so best to view diffs with whitespace changes hidden. (Work towards #75, point 3) Reviewed-on: https://git.kolibrios.org/KolibriOS/kolibrios/pulls/244 Reviewed-by: Gleb Zaharov Reviewed-by: Burer Co-authored-by: Andrew Co-committed-by: Andrew --- data/Tupfile.lua | 20 +- programs/build_all.bat | 28 +- .../emulator/PrMK/{trunk => }/MASMFpuLib.asm | 0 .../PrMK/{trunk => }/MK_b3-34_hand.bmp | Bin programs/emulator/PrMK/{trunk => }/PrMK.asm | 0 .../emulator/PrMK/{trunk => }/Tupfile.lua | 2 +- .../{trunk => }/docs/Calculator games.txt | 0 .../Electronica MK-152 RE commands list.htm | 0 ...ator BZ-34 MK-54 MK-56 commands system.htm | 0 .../PrMK/{trunk => }/docs/b3-34help0.htm | 0 .../PrMK/{trunk => }/docs/b3-34help1.htm | 0 .../PrMK/{trunk => }/docs/b3-34help2.htm | 0 .../PrMK/{trunk => }/docs/com_b334.jpg | Bin .../PrMK/{trunk => }/docs/danilov1.jpg | Bin .../PrMK/{trunk => }/docs/nkj12840.jpg | Bin .../PrMK/{trunk => }/docs/stack000.jpg | Bin .../emulator/PrMK/{trunk => }/docs/stack1.png | Bin .../emulator/PrMK/{trunk => }/docs/stack2.png | Bin .../emulator/PrMK/{trunk => }/docs/stack3.png | Bin .../emulator/PrMK/{trunk => }/docs/stack4.png | Bin .../emulator/PrMK/{trunk => }/docs/stack5.png | Bin .../emulator/PrMK/{trunk => }/docs/stack6.png | Bin .../emulator/PrMK/{trunk => }/docs/stack7.png | Bin .../PrMK/{trunk => }/docs/tablb334.jpg | Bin .../emulator/PrMK/{trunk => }/editbox_ex.mac | 0 .../emulator/PrMK/{trunk => }/load_lib.mac | 0 .../emulator/PrMK/{trunk => }/macroPRMK.inc | 0 .../emulator/PrMK/{trunk => }/opcodes.inc | 0 programs/emulator/PrMK/{trunk => }/readme.txt | 0 programs/emulator/PrMK/{trunk => }/smpl/1.MKP | Bin .../emulator/PrMK/{trunk => }/smpl/1.mkp.asm | 0 programs/emulator/PrMK/{trunk => }/smpl/2.MKP | Bin .../emulator/PrMK/{trunk => }/smpl/2.mkp.asm | 0 programs/emulator/PrMK/{trunk => }/smpl/3.MKP | Bin .../emulator/PrMK/{trunk => }/smpl/3.mkp.asm | 0 programs/emulator/e80/{trunk => }/48.h | 0 programs/emulator/e80/{trunk => }/Tupfile.lua | 2 +- .../emulator/e80/{trunk => }/asm_code.asm | 0 programs/emulator/e80/{trunk => }/clean.bat | 0 .../emulator/e80/{trunk => }/compile_eng.bat | 0 .../emulator/e80/{trunk => }/compile_rus.bat | 0 programs/emulator/e80/{trunk => }/e80.c | 0 .../e80/{trunk => }/games/othello.sna | Bin programs/emulator/e80/{trunk => }/keyboard.c | 0 .../emulator/e80/{trunk => }/keyboard.png | Bin programs/emulator/e80/{trunk => }/kolibri.ld | 0 programs/emulator/e80/{trunk => }/readme.txt | 0 .../emulator/e80/{trunk => }/system/kolibri.c | 0 .../emulator/e80/{trunk => }/system/kolibri.h | 0 .../emulator/e80/{trunk => }/system/msgbox.c | 0 .../emulator/e80/{trunk => }/system/stdlib.c | 0 .../emulator/e80/{trunk => }/system/stdlib.h | 0 .../emulator/e80/{trunk => }/system/string.c | 0 .../emulator/e80/{trunk => }/system/string.h | 0 .../{trunk => }/utils/keyZXtst/Tupfile.lua | 0 .../{trunk => }/utils/keyZXtst/compile.bat | 0 .../{trunk => }/utils/keyZXtst/keyZXtst.asm | 353 +- .../{trunk => }/utils/keyZXtst/key_read.inc | 0 .../emulator/e80/{trunk => }/z80/macros.c | 0 programs/emulator/e80/{trunk => }/z80/op_cb.c | 0 .../emulator/e80/{trunk => }/z80/op_dd_fd.c | 0 programs/emulator/e80/{trunk => }/z80/op_ed.c | 0 .../emulator/e80/{trunk => }/z80/opcodes.c | 0 .../emulator/e80/{trunk => }/z80/opddfdcb.c | 0 .../emulator/e80/{trunk => }/z80/tables.h | 0 programs/emulator/e80/{trunk => }/z80/z80.c | 0 programs/emulator/e80/{trunk => }/z80/z80.h | 0 .../media/animage/{trunk => }/Tupfile.lua | 0 .../media/animage/{trunk => }/animage.asm | 754 +-- programs/media/animage/{trunk => }/bmplib.inc | 0 .../media/animage/{trunk => }/brushes.inc | 0 programs/media/animage/{trunk => }/build.sh | 0 .../media/animage/{trunk => }/build_en.bat | 0 .../media/animage/{trunk => }/cursors.inc | 0 .../animage/{trunk => }/cursors/brush.cur | Bin .../{trunk => }/cursors/flood_fill.cur | Bin .../animage/{trunk => }/cursors/lastik.cur | Bin .../animage/{trunk => }/cursors/other.cur | Bin .../animage/{trunk => }/cursors/pencil.cur | Bin .../animage/{trunk => }/cursors/pipette.cur | Bin .../animage/{trunk => }/cursors/spray.cur | Bin .../animage/{trunk => }/cursors/zoom.cur | Bin programs/media/animage/{trunk => }/design.inc | 0 .../media/animage/{trunk => }/dialog2.inc | 0 programs/media/animage/{trunk => }/events.inc | 0 .../animage/{trunk => }/events_of_buttons.inc | 0 .../animage/{trunk => }/events_of_keys.inc | 0 .../animage/{trunk => }/events_of_mouse.inc | 0 .../animage/{trunk => }/events_of_window.inc | 0 programs/media/animage/{trunk => }/files.inc | 0 .../media/animage/{trunk => }/graphlib.inc | 0 programs/media/animage/{trunk => }/icons.inc | 0 .../animage/{trunk => }/icons_instruments.inc | 0 .../media/animage/{trunk => }/init_data.inc | 0 .../media/animage/{trunk => }/lib_data.inc | 0 .../{trunk => }/load_from_parameters.inc | 0 programs/media/animage/{trunk => }/memory.inc | 0 programs/media/animage/{trunk => }/menu.inc | 0 .../animage/{trunk => }/menu_instruments.inc | 0 .../media/animage/{trunk => }/palette.inc | 0 .../animage/{trunk => }/panel_buttons.png | Bin .../media/animage/{trunk => }/panel_data.inc | 0 .../media/animage/{trunk => }/panel_engen.inc | 0 .../media/animage/{trunk => }/panel_zoom.png | Bin programs/media/animage/{trunk => }/screen.inc | 0 programs/media/animage/{trunk => }/spray.inc | 0 .../media/animage/{trunk => }/sprites.inc | 0 programs/media/animage/{trunk => }/string.inc | 0 programs/media/animage/{trunk => }/time.inc | 0 .../media/animage/{trunk => }/width_lines.inc | 0 programs/media/kiv/{trunk => }/Tupfile.lua | 2 +- programs/media/kiv/{trunk => }/kiv.asm | 17 +- programs/media/kiv/{trunk => }/kivicons.bmp | Bin .../media/listplay/{trunk => }/Tupfile.lua | 0 .../media/listplay/{trunk => }/listplay.asm | 1696 +++---- programs/other/calc/{trunk => }/Tupfile.lua | 0 programs/other/calc/{trunk => }/build_en.bat | 0 programs/other/calc/{trunk => }/build_ru.bat | 0 programs/other/calc/{trunk => }/calc.asm | 9 +- programs/other/period/{trunk => }/Tupfile.lua | 0 programs/other/period/{trunk => }/build.bat | 0 programs/other/period/{trunk => }/period.asm | 4127 +++++++++-------- .../other/rtfread/{trunk => }/Tupfile.lua | 0 .../other/rtfread/{trunk => }/bgifont.inc | 0 programs/other/rtfread/{trunk => }/build.sh | 0 .../other/rtfread/{trunk => }/build_en.bat | 0 .../other/rtfread/{trunk => }/build_ru.bat | 0 programs/other/rtfread/{trunk => }/litt.chr | Bin programs/other/rtfread/{trunk => }/reader.rtf | 0 .../other/rtfread/{trunk => }/rtf_lite.inc | 0 .../other/rtfread/{trunk => }/rtfactn.inc | 0 .../other/rtfread/{trunk => }/rtfread.asm | 69 +- .../other/rtfread/{trunk => }/rtftype.inc | 0 133 files changed, 3548 insertions(+), 3531 deletions(-) rename programs/emulator/PrMK/{trunk => }/MASMFpuLib.asm (100%) rename programs/emulator/PrMK/{trunk => }/MK_b3-34_hand.bmp (100%) rename programs/emulator/PrMK/{trunk => }/PrMK.asm (100%) rename programs/emulator/PrMK/{trunk => }/Tupfile.lua (65%) rename programs/emulator/PrMK/{trunk => }/docs/Calculator games.txt (100%) rename programs/emulator/PrMK/{trunk => }/docs/Electronica MK-152 RE commands list.htm (100%) rename programs/emulator/PrMK/{trunk => }/docs/Programmable calculator BZ-34 MK-54 MK-56 commands system.htm (100%) rename programs/emulator/PrMK/{trunk => }/docs/b3-34help0.htm (100%) rename programs/emulator/PrMK/{trunk => }/docs/b3-34help1.htm (100%) rename programs/emulator/PrMK/{trunk => }/docs/b3-34help2.htm (100%) rename programs/emulator/PrMK/{trunk => }/docs/com_b334.jpg (100%) rename programs/emulator/PrMK/{trunk => }/docs/danilov1.jpg (100%) rename programs/emulator/PrMK/{trunk => }/docs/nkj12840.jpg (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack000.jpg (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack1.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack2.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack3.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack4.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack5.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack6.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/stack7.png (100%) rename programs/emulator/PrMK/{trunk => }/docs/tablb334.jpg (100%) rename programs/emulator/PrMK/{trunk => }/editbox_ex.mac (100%) rename programs/emulator/PrMK/{trunk => }/load_lib.mac (100%) rename programs/emulator/PrMK/{trunk => }/macroPRMK.inc (100%) rename programs/emulator/PrMK/{trunk => }/opcodes.inc (100%) rename programs/emulator/PrMK/{trunk => }/readme.txt (100%) rename programs/emulator/PrMK/{trunk => }/smpl/1.MKP (100%) rename programs/emulator/PrMK/{trunk => }/smpl/1.mkp.asm (100%) rename programs/emulator/PrMK/{trunk => }/smpl/2.MKP (100%) rename programs/emulator/PrMK/{trunk => }/smpl/2.mkp.asm (100%) rename programs/emulator/PrMK/{trunk => }/smpl/3.MKP (100%) rename programs/emulator/PrMK/{trunk => }/smpl/3.mkp.asm (100%) rename programs/emulator/e80/{trunk => }/48.h (100%) rename programs/emulator/e80/{trunk => }/Tupfile.lua (90%) rename programs/emulator/e80/{trunk => }/asm_code.asm (100%) rename programs/emulator/e80/{trunk => }/clean.bat (100%) rename programs/emulator/e80/{trunk => }/compile_eng.bat (100%) rename programs/emulator/e80/{trunk => }/compile_rus.bat (100%) rename programs/emulator/e80/{trunk => }/e80.c (100%) rename programs/emulator/e80/{trunk => }/games/othello.sna (100%) rename programs/emulator/e80/{trunk => }/keyboard.c (100%) rename programs/emulator/e80/{trunk => }/keyboard.png (100%) rename programs/emulator/e80/{trunk => }/kolibri.ld (100%) rename programs/emulator/e80/{trunk => }/readme.txt (100%) rename programs/emulator/e80/{trunk => }/system/kolibri.c (100%) rename programs/emulator/e80/{trunk => }/system/kolibri.h (100%) rename programs/emulator/e80/{trunk => }/system/msgbox.c (100%) rename programs/emulator/e80/{trunk => }/system/stdlib.c (100%) rename programs/emulator/e80/{trunk => }/system/stdlib.h (100%) rename programs/emulator/e80/{trunk => }/system/string.c (100%) rename programs/emulator/e80/{trunk => }/system/string.h (100%) rename programs/emulator/e80/{trunk => }/utils/keyZXtst/Tupfile.lua (100%) rename programs/emulator/e80/{trunk => }/utils/keyZXtst/compile.bat (100%) rename programs/emulator/e80/{trunk => }/utils/keyZXtst/keyZXtst.asm (83%) rename programs/emulator/e80/{trunk => }/utils/keyZXtst/key_read.inc (100%) rename programs/emulator/e80/{trunk => }/z80/macros.c (100%) rename programs/emulator/e80/{trunk => }/z80/op_cb.c (100%) rename programs/emulator/e80/{trunk => }/z80/op_dd_fd.c (100%) rename programs/emulator/e80/{trunk => }/z80/op_ed.c (100%) rename programs/emulator/e80/{trunk => }/z80/opcodes.c (100%) rename programs/emulator/e80/{trunk => }/z80/opddfdcb.c (100%) rename programs/emulator/e80/{trunk => }/z80/tables.h (100%) rename programs/emulator/e80/{trunk => }/z80/z80.c (100%) rename programs/emulator/e80/{trunk => }/z80/z80.h (100%) rename programs/media/animage/{trunk => }/Tupfile.lua (100%) rename programs/media/animage/{trunk => }/animage.asm (69%) rename programs/media/animage/{trunk => }/bmplib.inc (100%) rename programs/media/animage/{trunk => }/brushes.inc (100%) rename programs/media/animage/{trunk => }/build.sh (100%) rename programs/media/animage/{trunk => }/build_en.bat (100%) rename programs/media/animage/{trunk => }/cursors.inc (100%) rename programs/media/animage/{trunk => }/cursors/brush.cur (100%) rename programs/media/animage/{trunk => }/cursors/flood_fill.cur (100%) rename programs/media/animage/{trunk => }/cursors/lastik.cur (100%) rename programs/media/animage/{trunk => }/cursors/other.cur (100%) rename programs/media/animage/{trunk => }/cursors/pencil.cur (100%) rename programs/media/animage/{trunk => }/cursors/pipette.cur (100%) rename programs/media/animage/{trunk => }/cursors/spray.cur (100%) rename programs/media/animage/{trunk => }/cursors/zoom.cur (100%) rename programs/media/animage/{trunk => }/design.inc (100%) rename programs/media/animage/{trunk => }/dialog2.inc (100%) rename programs/media/animage/{trunk => }/events.inc (100%) rename programs/media/animage/{trunk => }/events_of_buttons.inc (100%) rename programs/media/animage/{trunk => }/events_of_keys.inc (100%) rename programs/media/animage/{trunk => }/events_of_mouse.inc (100%) rename programs/media/animage/{trunk => }/events_of_window.inc (100%) rename programs/media/animage/{trunk => }/files.inc (100%) rename programs/media/animage/{trunk => }/graphlib.inc (100%) rename programs/media/animage/{trunk => }/icons.inc (100%) rename programs/media/animage/{trunk => }/icons_instruments.inc (100%) rename programs/media/animage/{trunk => }/init_data.inc (100%) rename programs/media/animage/{trunk => }/lib_data.inc (100%) rename programs/media/animage/{trunk => }/load_from_parameters.inc (100%) rename programs/media/animage/{trunk => }/memory.inc (100%) rename programs/media/animage/{trunk => }/menu.inc (100%) rename programs/media/animage/{trunk => }/menu_instruments.inc (100%) rename programs/media/animage/{trunk => }/palette.inc (100%) rename programs/media/animage/{trunk => }/panel_buttons.png (100%) rename programs/media/animage/{trunk => }/panel_data.inc (100%) rename programs/media/animage/{trunk => }/panel_engen.inc (100%) rename programs/media/animage/{trunk => }/panel_zoom.png (100%) rename programs/media/animage/{trunk => }/screen.inc (100%) rename programs/media/animage/{trunk => }/spray.inc (100%) rename programs/media/animage/{trunk => }/sprites.inc (100%) rename programs/media/animage/{trunk => }/string.inc (100%) rename programs/media/animage/{trunk => }/time.inc (100%) rename programs/media/animage/{trunk => }/width_lines.inc (100%) rename programs/media/kiv/{trunk => }/Tupfile.lua (71%) rename programs/media/kiv/{trunk => }/kiv.asm (99%) rename programs/media/kiv/{trunk => }/kivicons.bmp (100%) rename programs/media/listplay/{trunk => }/Tupfile.lua (100%) rename programs/media/listplay/{trunk => }/listplay.asm (94%) rename programs/other/calc/{trunk => }/Tupfile.lua (100%) rename programs/other/calc/{trunk => }/build_en.bat (100%) rename programs/other/calc/{trunk => }/build_ru.bat (100%) rename programs/other/calc/{trunk => }/calc.asm (99%) rename programs/other/period/{trunk => }/Tupfile.lua (100%) rename programs/other/period/{trunk => }/build.bat (100%) rename programs/other/period/{trunk => }/period.asm (86%) rename programs/other/rtfread/{trunk => }/Tupfile.lua (100%) rename programs/other/rtfread/{trunk => }/bgifont.inc (100%) rename programs/other/rtfread/{trunk => }/build.sh (100%) rename programs/other/rtfread/{trunk => }/build_en.bat (100%) rename programs/other/rtfread/{trunk => }/build_ru.bat (100%) rename programs/other/rtfread/{trunk => }/litt.chr (100%) rename programs/other/rtfread/{trunk => }/reader.rtf (100%) rename programs/other/rtfread/{trunk => }/rtf_lite.inc (100%) rename programs/other/rtfread/{trunk => }/rtfactn.inc (100%) rename programs/other/rtfread/{trunk => }/rtfread.asm (98%) rename programs/other/rtfread/{trunk => }/rtftype.inc (100%) diff --git a/data/Tupfile.lua b/data/Tupfile.lua index 8c8d302e5..8d4f56698 100644 --- a/data/Tupfile.lua +++ b/data/Tupfile.lua @@ -195,8 +195,8 @@ extra_files = { {"kolibrios/develop/utils/SPEDump", SRC_PROGS .. "/develop/SPEDump/SPEDump.kex"}, {"kolibrios/emul/", "common/emul/*"}, {"kolibrios/emul/dosbox/", "common/emul/DosBox/*"}, - {"kolibrios/emul/e80/readme.txt", SRC_PROGS .. "/emulator/e80/trunk/readme.txt"}, - {"kolibrios/emul/e80/keyboard.png", SRC_PROGS .. "/emulator/e80/trunk/keyboard.png"}, + {"kolibrios/emul/e80/readme.txt", SRC_PROGS .. "/emulator/e80/readme.txt"}, + {"kolibrios/emul/e80/keyboard.png", SRC_PROGS .. "/emulator/e80/keyboard.png"}, {"kolibrios/emul/fceu/fceu", SRC_PROGS .. "/emulator/fceu/fceu"}, {"kolibrios/emul/fceu/FCEU ReadMe.txt", SRC_PROGS .. "/emulator/fceu/FCEU ReadMe.txt"}, {"kolibrios/emul/chip8/chip8", VAR_PROGS .. "/emulator/chip8/chip8"}, @@ -284,7 +284,7 @@ extra_files = { {"kolibrios/netsurf/res/", "common/network/netsurf/res/*"}, {"kolibrios/res/skins/", "../skins/authors.txt"}, {"kolibrios/res/templates/", "common/templates/*"}, - {"kolibrios/res/templates/", SRC_PROGS .. "/emulator/e80/trunk/games/*"}, + {"kolibrios/res/templates/", SRC_PROGS .. "/emulator/e80/games/*"}, {"kolibrios/res/templates/NES/", "common/templates/NES/*"}, {"kolibrios/res/wallpapers/", "common/wallpapers/*"}, {"kolibrios/res/system/", build_type .. "/settings/kolibri.lbl"}, @@ -409,7 +409,7 @@ tup.append_table(img_files, { {"HACONFIG", VAR_PROGS .. "/other/ha/HACONFIG"}, {"ACLOCK", VAR_PROGS .. "/demos/aclock/aclock"}, {"APM", VAR_PROGS .. "/system/apm/apm"}, - {"CALC", VAR_PROGS .. "/other/calc/trunk/calc"}, + {"CALC", VAR_PROGS .. "/other/calc/calc"}, {"CALCPLUS", VAR_PROGS .. "/other/calcplus/calcplus"}, {"CALENDAR", VAR_PROGS .. "/system/calendar/trunk/calendar"}, {"COLRDIAL", VAR_PROGS .. "/system/colrdial/color_dialog"}, @@ -435,7 +435,7 @@ tup.append_table(img_files, { {"MYKEY", VAR_PROGS .. "/system/MyKey/trunk/MyKey"}, {"PCIDEV", VAR_PROGS .. "/testing/pcidev/trunk/PCIDEV"}, {"RDSAVE", VAR_PROGS .. "/system/rdsave/trunk/rdsave"}, - {"RTFREAD", VAR_PROGS .. "/other/rtfread/trunk/rtfread"}, + {"RTFREAD", VAR_PROGS .. "/other/rtfread/rtfread"}, {"SEARCHAP", VAR_PROGS .. "/system/searchap/searchap"}, {"SCRSHOOT", VAR_PROGS .. "/media/scrshoot/scrshoot"}, {"SETUP", VAR_PROGS .. "/system/setup/trunk/setup"}, @@ -523,10 +523,10 @@ tup.append_table(img_files, { {"LIB/RASTERWORKS.OBJ", VAR_PROGS .. "/develop/libraries/fontRasterWorks_unicode/RasterWorks.obj"}, {"LIB/SORT.OBJ", VAR_PROGS .. "/develop/libraries/sorter/sort.obj"}, {"LIB/TINYGL.OBJ", VAR_PROGS .. "/develop/libraries/TinyGL/asm_fork/tinygl.obj"}, - {"MEDIA/ANIMAGE", VAR_PROGS .. "/media/animage/trunk/animage"}, + {"MEDIA/ANIMAGE", VAR_PROGS .. "/media/animage/animage"}, {"MEDIA/FILLSCR", VAR_PROGS .. "/media/FillScr/fillscr"}, - {"MEDIA/KIV", VAR_PROGS .. "/media/kiv/trunk/kiv"}, - {"MEDIA/LISTPLAY", VAR_PROGS .. "/media/listplay/trunk/listplay"}, + {"MEDIA/KIV", VAR_PROGS .. "/media/kiv/kiv"}, + {"MEDIA/LISTPLAY", VAR_PROGS .. "/media/listplay/listplay"}, {"MEDIA/MIDAMP", VAR_PROGS .. "/media/midamp/trunk/midamp"}, {"MEDIA/MP3INFO", VAR_PROGS .. "/media/mp3info/mp3info"}, {"MEDIA/PALITRA", VAR_PROGS .. "/media/palitra/trunk/palitra"}, @@ -641,7 +641,7 @@ if build_type == "ru_RU" then tup.append_table(img_files, { }) end if build_type == "ru_RU" then tup.append_table(extra_files, { - {"kolibrios/utils/period", VAR_PROGS .. "/other/period/trunk/period"}, + {"kolibrios/utils/period", VAR_PROGS .. "/other/period/period"}, {"kolibrios/games/Dungeons/Dungeons", VAR_PROGS .. "/games/Dungeons/Dungeons"}, }) end @@ -752,7 +752,7 @@ tup.append_table(img_files, { tup.append_table(extra_files, { -- {"kolibrios/3D/cubeline", VAR_PROGS .. "/demos/cubeline/trunk/cubeline"}, {"kolibrios/3D/gears", VAR_PROGS .. "/demos/gears/gears"}, - {"kolibrios/emul/e80/e80", VAR_PROGS .. "/emulator/e80/trunk/e80"}, + {"kolibrios/emul/e80/e80", VAR_PROGS .. "/emulator/e80/e80"}, {"kolibrios/emul/uarm/", VAR_CONTRIB .. "/other/uarm/uARM"}, {"kolibrios/games/2048", VAR_PROGS .. "/games/2048/2048"}, {"kolibrios/games/checkers", VAR_PROGS .. "/games/checkers/checkers"}, diff --git a/programs/build_all.bat b/programs/build_all.bat index 4e64253b7..38ec1cbe2 100644 --- a/programs/build_all.bat +++ b/programs/build_all.bat @@ -13,12 +13,12 @@ rem set __value= set __res= shift - + :__allowed set __values=%1 %__values% shift if not "%1"=="" goto __allowed - + set /P __res="> :Check_Value for %%a in (%__values%) do if %%a==%__res% set __value=%__res% @@ -59,7 +59,7 @@ echo * fasm system\calendar\trunk\calendar.asm %BIN%\calendar fasm system\board\trunk\board.asm %BIN%\develop\board fasm system\commouse\trunk\commouse.asm %BIN%\commouse -fasm system\cpu\trunk\cpu.asm %BIN%\cpu +fasm system\cpu\trunk\cpu.asm %BIN%\cpu fasm system\cpuid\trunk\cpuid.asm %BIN%\cpuid fasm system\skincfg\trunk\skincfg.asm %BIN%\skincfg fasm system\docpack\trunk\docpack.asm %BIN%\docpack @@ -154,16 +154,16 @@ echo * echo Building other echo * rem fasm other\archer\trunk\@rcher.asm %BIN%\@rcher -fasm other\calc\trunk\calc.asm %BIN%\calc +fasm other\calc\calc.asm %BIN%\calc fasm other\mhc\trunk\mhc.asm %BIN%\mhc -fasm other\period\trunk\period.asm %BIN%\period -fasm other\rtfread\trunk\rtfread.asm %BIN%\rtfread +fasm other\period\period.asm %BIN%\period +fasm other\rtfread\rtfread.asm %BIN%\rtfread echo * echo Building media echo * rem media\ac97snd\trunk\ac97snd.asm ac97snd -fasm media\animage\trunk\animage.asm %BIN%\animage +fasm media\animage\animage.asm %BIN%\animage fasm media\cdp\trunk\cdp.asm %BIN%\cdp fasm media\gifview\trunk\gifview.asm %BIN%\gifview fasm media\iconedit\trunk\iconedit.asm %BIN%\iconedit @@ -231,9 +231,9 @@ echo * echo Building depend application for fdd's nightbuild echo * echo __nightbuild fix yes >> config.inc -fasm media\kiv\trunk\kiv.asm %BIN%\nightbuild\kiv +fasm media\kiv\kiv.asm %BIN%\nightbuild\kiv fasm media\scrshoot\scrshoot.asm %BIN%\nightbuild\scrshoot -fasm media\animage\trunk\animage.asm %BIN%\nightbuild\animage +fasm media\animage\animage.asm %BIN%\nightbuild\animage fasm media\midamp\trunk\midamp.asm %BIN%\nightbuild\midamp fasm develop\heed\trunk\heed.asm %BIN%\nightbuild\heed fasm develop\tinypad\trunk\tinypad.asm %BIN%\nightbuild\tinypad @@ -242,27 +242,27 @@ fasm system\hdd_info\trunk\hdd_info.asm %BIN%\nightbuild\hdd_info fasm system\mgb\trunk\mgb.asm %BIN%\nightbuild\mgb fasm system\rdsave\trunk\rdsave.asm %BIN%\nightbuild\rdsave fasm other\kpack\trunk\kpack.asm %BIN%\nightbuild\kpack -fasm other\rtfread\trunk\rtfread.asm %BIN%\nightbuild\rtfread +fasm other\rtfread\rtfread.asm %BIN%\nightbuild\rtfread ;restore echo __CPU_type fix %res% > config.inc erase lang.inc echo * -echo Finished building +echo Finished building echo * kpack /nologo 2> nul if "%errorlevel%"=="9009" ( echo *** NOTICE *** -echo If you want to pack all applications you may +echo If you want to pack all applications you may echo place "kpack" in accessible directory. echo You can download that tool from http://diamondz.land.ru/ goto END ) echo Kpack KolibriOS apps? -echo +echo set /P res=[y/n]? @@ -273,7 +273,7 @@ echo Compressing system echo * kpack %BIN%\calendar kpack %BIN%\develop\board -kpack %BIN%\cpu +kpack %BIN%\cpu kpack %BIN%\cpuid kpack %BIN%\skincfg kpack %BIN%\docpack diff --git a/programs/emulator/PrMK/trunk/MASMFpuLib.asm b/programs/emulator/PrMK/MASMFpuLib.asm similarity index 100% rename from programs/emulator/PrMK/trunk/MASMFpuLib.asm rename to programs/emulator/PrMK/MASMFpuLib.asm diff --git a/programs/emulator/PrMK/trunk/MK_b3-34_hand.bmp b/programs/emulator/PrMK/MK_b3-34_hand.bmp similarity index 100% rename from programs/emulator/PrMK/trunk/MK_b3-34_hand.bmp rename to programs/emulator/PrMK/MK_b3-34_hand.bmp diff --git a/programs/emulator/PrMK/trunk/PrMK.asm b/programs/emulator/PrMK/PrMK.asm similarity index 100% rename from programs/emulator/PrMK/trunk/PrMK.asm rename to programs/emulator/PrMK/PrMK.asm diff --git a/programs/emulator/PrMK/trunk/Tupfile.lua b/programs/emulator/PrMK/Tupfile.lua similarity index 65% rename from programs/emulator/PrMK/trunk/Tupfile.lua rename to programs/emulator/PrMK/Tupfile.lua index 47cdc824c..e6ab920f4 100644 --- a/programs/emulator/PrMK/trunk/Tupfile.lua +++ b/programs/emulator/PrMK/Tupfile.lua @@ -1,5 +1,5 @@ if tup.getconfig("NO_FASM") ~= "" then return end -HELPERDIR = (tup.getconfig("HELPERDIR") == "") and "../../.." or tup.getconfig("HELPERDIR") +HELPERDIR = (tup.getconfig("HELPERDIR") == "") and "../.." or tup.getconfig("HELPERDIR") tup.include(HELPERDIR .. "/use_fasm.lua") tup.rule("PrMK.asm", FASM .. " %f %o " .. tup.getconfig("KPACK_CMD"), "PrMK") diff --git a/programs/emulator/PrMK/trunk/docs/Calculator games.txt b/programs/emulator/PrMK/docs/Calculator games.txt similarity index 100% rename from programs/emulator/PrMK/trunk/docs/Calculator games.txt rename to programs/emulator/PrMK/docs/Calculator games.txt diff --git a/programs/emulator/PrMK/trunk/docs/Electronica MK-152 RE commands list.htm b/programs/emulator/PrMK/docs/Electronica MK-152 RE commands list.htm similarity index 100% rename from programs/emulator/PrMK/trunk/docs/Electronica MK-152 RE commands list.htm rename to programs/emulator/PrMK/docs/Electronica MK-152 RE commands list.htm diff --git a/programs/emulator/PrMK/trunk/docs/Programmable calculator BZ-34 MK-54 MK-56 commands system.htm b/programs/emulator/PrMK/docs/Programmable calculator BZ-34 MK-54 MK-56 commands system.htm similarity index 100% rename from programs/emulator/PrMK/trunk/docs/Programmable calculator BZ-34 MK-54 MK-56 commands system.htm rename to programs/emulator/PrMK/docs/Programmable calculator BZ-34 MK-54 MK-56 commands system.htm diff --git a/programs/emulator/PrMK/trunk/docs/b3-34help0.htm b/programs/emulator/PrMK/docs/b3-34help0.htm similarity index 100% rename from programs/emulator/PrMK/trunk/docs/b3-34help0.htm rename to programs/emulator/PrMK/docs/b3-34help0.htm diff --git a/programs/emulator/PrMK/trunk/docs/b3-34help1.htm b/programs/emulator/PrMK/docs/b3-34help1.htm similarity index 100% rename from programs/emulator/PrMK/trunk/docs/b3-34help1.htm rename to programs/emulator/PrMK/docs/b3-34help1.htm diff --git a/programs/emulator/PrMK/trunk/docs/b3-34help2.htm b/programs/emulator/PrMK/docs/b3-34help2.htm similarity index 100% rename from programs/emulator/PrMK/trunk/docs/b3-34help2.htm rename to programs/emulator/PrMK/docs/b3-34help2.htm diff --git a/programs/emulator/PrMK/trunk/docs/com_b334.jpg b/programs/emulator/PrMK/docs/com_b334.jpg similarity index 100% rename from programs/emulator/PrMK/trunk/docs/com_b334.jpg rename to programs/emulator/PrMK/docs/com_b334.jpg diff --git a/programs/emulator/PrMK/trunk/docs/danilov1.jpg b/programs/emulator/PrMK/docs/danilov1.jpg similarity index 100% rename from programs/emulator/PrMK/trunk/docs/danilov1.jpg rename to programs/emulator/PrMK/docs/danilov1.jpg diff --git a/programs/emulator/PrMK/trunk/docs/nkj12840.jpg b/programs/emulator/PrMK/docs/nkj12840.jpg similarity index 100% rename from programs/emulator/PrMK/trunk/docs/nkj12840.jpg rename to programs/emulator/PrMK/docs/nkj12840.jpg diff --git a/programs/emulator/PrMK/trunk/docs/stack000.jpg b/programs/emulator/PrMK/docs/stack000.jpg similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack000.jpg rename to programs/emulator/PrMK/docs/stack000.jpg diff --git a/programs/emulator/PrMK/trunk/docs/stack1.png b/programs/emulator/PrMK/docs/stack1.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack1.png rename to programs/emulator/PrMK/docs/stack1.png diff --git a/programs/emulator/PrMK/trunk/docs/stack2.png b/programs/emulator/PrMK/docs/stack2.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack2.png rename to programs/emulator/PrMK/docs/stack2.png diff --git a/programs/emulator/PrMK/trunk/docs/stack3.png b/programs/emulator/PrMK/docs/stack3.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack3.png rename to programs/emulator/PrMK/docs/stack3.png diff --git a/programs/emulator/PrMK/trunk/docs/stack4.png b/programs/emulator/PrMK/docs/stack4.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack4.png rename to programs/emulator/PrMK/docs/stack4.png diff --git a/programs/emulator/PrMK/trunk/docs/stack5.png b/programs/emulator/PrMK/docs/stack5.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack5.png rename to programs/emulator/PrMK/docs/stack5.png diff --git a/programs/emulator/PrMK/trunk/docs/stack6.png b/programs/emulator/PrMK/docs/stack6.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack6.png rename to programs/emulator/PrMK/docs/stack6.png diff --git a/programs/emulator/PrMK/trunk/docs/stack7.png b/programs/emulator/PrMK/docs/stack7.png similarity index 100% rename from programs/emulator/PrMK/trunk/docs/stack7.png rename to programs/emulator/PrMK/docs/stack7.png diff --git a/programs/emulator/PrMK/trunk/docs/tablb334.jpg b/programs/emulator/PrMK/docs/tablb334.jpg similarity index 100% rename from programs/emulator/PrMK/trunk/docs/tablb334.jpg rename to programs/emulator/PrMK/docs/tablb334.jpg diff --git a/programs/emulator/PrMK/trunk/editbox_ex.mac b/programs/emulator/PrMK/editbox_ex.mac similarity index 100% rename from programs/emulator/PrMK/trunk/editbox_ex.mac rename to programs/emulator/PrMK/editbox_ex.mac diff --git a/programs/emulator/PrMK/trunk/load_lib.mac b/programs/emulator/PrMK/load_lib.mac similarity index 100% rename from programs/emulator/PrMK/trunk/load_lib.mac rename to programs/emulator/PrMK/load_lib.mac diff --git a/programs/emulator/PrMK/trunk/macroPRMK.inc b/programs/emulator/PrMK/macroPRMK.inc similarity index 100% rename from programs/emulator/PrMK/trunk/macroPRMK.inc rename to programs/emulator/PrMK/macroPRMK.inc diff --git a/programs/emulator/PrMK/trunk/opcodes.inc b/programs/emulator/PrMK/opcodes.inc similarity index 100% rename from programs/emulator/PrMK/trunk/opcodes.inc rename to programs/emulator/PrMK/opcodes.inc diff --git a/programs/emulator/PrMK/trunk/readme.txt b/programs/emulator/PrMK/readme.txt similarity index 100% rename from programs/emulator/PrMK/trunk/readme.txt rename to programs/emulator/PrMK/readme.txt diff --git a/programs/emulator/PrMK/trunk/smpl/1.MKP b/programs/emulator/PrMK/smpl/1.MKP similarity index 100% rename from programs/emulator/PrMK/trunk/smpl/1.MKP rename to programs/emulator/PrMK/smpl/1.MKP diff --git a/programs/emulator/PrMK/trunk/smpl/1.mkp.asm b/programs/emulator/PrMK/smpl/1.mkp.asm similarity index 100% rename from programs/emulator/PrMK/trunk/smpl/1.mkp.asm rename to programs/emulator/PrMK/smpl/1.mkp.asm diff --git a/programs/emulator/PrMK/trunk/smpl/2.MKP b/programs/emulator/PrMK/smpl/2.MKP similarity index 100% rename from programs/emulator/PrMK/trunk/smpl/2.MKP rename to programs/emulator/PrMK/smpl/2.MKP diff --git a/programs/emulator/PrMK/trunk/smpl/2.mkp.asm b/programs/emulator/PrMK/smpl/2.mkp.asm similarity index 100% rename from programs/emulator/PrMK/trunk/smpl/2.mkp.asm rename to programs/emulator/PrMK/smpl/2.mkp.asm diff --git a/programs/emulator/PrMK/trunk/smpl/3.MKP b/programs/emulator/PrMK/smpl/3.MKP similarity index 100% rename from programs/emulator/PrMK/trunk/smpl/3.MKP rename to programs/emulator/PrMK/smpl/3.MKP diff --git a/programs/emulator/PrMK/trunk/smpl/3.mkp.asm b/programs/emulator/PrMK/smpl/3.mkp.asm similarity index 100% rename from programs/emulator/PrMK/trunk/smpl/3.mkp.asm rename to programs/emulator/PrMK/smpl/3.mkp.asm diff --git a/programs/emulator/e80/trunk/48.h b/programs/emulator/e80/48.h similarity index 100% rename from programs/emulator/e80/trunk/48.h rename to programs/emulator/e80/48.h diff --git a/programs/emulator/e80/trunk/Tupfile.lua b/programs/emulator/e80/Tupfile.lua similarity index 90% rename from programs/emulator/e80/trunk/Tupfile.lua rename to programs/emulator/e80/Tupfile.lua index 9d008dfa8..524401f10 100644 --- a/programs/emulator/e80/trunk/Tupfile.lua +++ b/programs/emulator/e80/Tupfile.lua @@ -1,5 +1,5 @@ if tup.getconfig("NO_FASM") ~= "" or tup.getconfig("NO_GCC") ~= "" then return end -HELPERDIR = (tup.getconfig("HELPERDIR") == "") and "../../.." or tup.getconfig("HELPERDIR") +HELPERDIR = (tup.getconfig("HELPERDIR") == "") and "../.." or tup.getconfig("HELPERDIR") tup.include(HELPERDIR .. "/use_gcc.lua") INCLUDES = INCLUDES .. "-I" .. tup.getvariantdir() LDFLAGS = LDFLAGS .. " -T kolibri.ld" diff --git a/programs/emulator/e80/trunk/asm_code.asm b/programs/emulator/e80/asm_code.asm similarity index 100% rename from programs/emulator/e80/trunk/asm_code.asm rename to programs/emulator/e80/asm_code.asm diff --git a/programs/emulator/e80/trunk/clean.bat b/programs/emulator/e80/clean.bat similarity index 100% rename from programs/emulator/e80/trunk/clean.bat rename to programs/emulator/e80/clean.bat diff --git a/programs/emulator/e80/trunk/compile_eng.bat b/programs/emulator/e80/compile_eng.bat similarity index 100% rename from programs/emulator/e80/trunk/compile_eng.bat rename to programs/emulator/e80/compile_eng.bat diff --git a/programs/emulator/e80/trunk/compile_rus.bat b/programs/emulator/e80/compile_rus.bat similarity index 100% rename from programs/emulator/e80/trunk/compile_rus.bat rename to programs/emulator/e80/compile_rus.bat diff --git a/programs/emulator/e80/trunk/e80.c b/programs/emulator/e80/e80.c similarity index 100% rename from programs/emulator/e80/trunk/e80.c rename to programs/emulator/e80/e80.c diff --git a/programs/emulator/e80/trunk/games/othello.sna b/programs/emulator/e80/games/othello.sna similarity index 100% rename from programs/emulator/e80/trunk/games/othello.sna rename to programs/emulator/e80/games/othello.sna diff --git a/programs/emulator/e80/trunk/keyboard.c b/programs/emulator/e80/keyboard.c similarity index 100% rename from programs/emulator/e80/trunk/keyboard.c rename to programs/emulator/e80/keyboard.c diff --git a/programs/emulator/e80/trunk/keyboard.png b/programs/emulator/e80/keyboard.png similarity index 100% rename from programs/emulator/e80/trunk/keyboard.png rename to programs/emulator/e80/keyboard.png diff --git a/programs/emulator/e80/trunk/kolibri.ld b/programs/emulator/e80/kolibri.ld similarity index 100% rename from programs/emulator/e80/trunk/kolibri.ld rename to programs/emulator/e80/kolibri.ld diff --git a/programs/emulator/e80/trunk/readme.txt b/programs/emulator/e80/readme.txt similarity index 100% rename from programs/emulator/e80/trunk/readme.txt rename to programs/emulator/e80/readme.txt diff --git a/programs/emulator/e80/trunk/system/kolibri.c b/programs/emulator/e80/system/kolibri.c similarity index 100% rename from programs/emulator/e80/trunk/system/kolibri.c rename to programs/emulator/e80/system/kolibri.c diff --git a/programs/emulator/e80/trunk/system/kolibri.h b/programs/emulator/e80/system/kolibri.h similarity index 100% rename from programs/emulator/e80/trunk/system/kolibri.h rename to programs/emulator/e80/system/kolibri.h diff --git a/programs/emulator/e80/trunk/system/msgbox.c b/programs/emulator/e80/system/msgbox.c similarity index 100% rename from programs/emulator/e80/trunk/system/msgbox.c rename to programs/emulator/e80/system/msgbox.c diff --git a/programs/emulator/e80/trunk/system/stdlib.c b/programs/emulator/e80/system/stdlib.c similarity index 100% rename from programs/emulator/e80/trunk/system/stdlib.c rename to programs/emulator/e80/system/stdlib.c diff --git a/programs/emulator/e80/trunk/system/stdlib.h b/programs/emulator/e80/system/stdlib.h similarity index 100% rename from programs/emulator/e80/trunk/system/stdlib.h rename to programs/emulator/e80/system/stdlib.h diff --git a/programs/emulator/e80/trunk/system/string.c b/programs/emulator/e80/system/string.c similarity index 100% rename from programs/emulator/e80/trunk/system/string.c rename to programs/emulator/e80/system/string.c diff --git a/programs/emulator/e80/trunk/system/string.h b/programs/emulator/e80/system/string.h similarity index 100% rename from programs/emulator/e80/trunk/system/string.h rename to programs/emulator/e80/system/string.h diff --git a/programs/emulator/e80/trunk/utils/keyZXtst/Tupfile.lua b/programs/emulator/e80/utils/keyZXtst/Tupfile.lua similarity index 100% rename from programs/emulator/e80/trunk/utils/keyZXtst/Tupfile.lua rename to programs/emulator/e80/utils/keyZXtst/Tupfile.lua diff --git a/programs/emulator/e80/trunk/utils/keyZXtst/compile.bat b/programs/emulator/e80/utils/keyZXtst/compile.bat similarity index 100% rename from programs/emulator/e80/trunk/utils/keyZXtst/compile.bat rename to programs/emulator/e80/utils/keyZXtst/compile.bat diff --git a/programs/emulator/e80/trunk/utils/keyZXtst/keyZXtst.asm b/programs/emulator/e80/utils/keyZXtst/keyZXtst.asm similarity index 83% rename from programs/emulator/e80/trunk/utils/keyZXtst/keyZXtst.asm rename to programs/emulator/e80/utils/keyZXtst/keyZXtst.asm index 2d86a55b5..a506b2c07 100644 --- a/programs/emulator/e80/trunk/utils/keyZXtst/keyZXtst.asm +++ b/programs/emulator/e80/utils/keyZXtst/keyZXtst.asm @@ -1,176 +1,177 @@ -; Text CodePage = cp1251 - -; <--- include all MeOS stuff ---> - -include "../../../../../macros.inc" - - -; <--- start of MenuetOS application ---> -MEOS_APP_START - -include "key_read.inc" - -; <--- start of code ---> -CODE - - mov eax,48 ; get system colors - mov ebx,3 - mov ecx,sc - mov edx,sizeof.system_colors - mcall - - xor ecx, ecx - inc ecx - mcall 66,1 ; єёЄрэютър Ёхцшьр ттюфр ёърэъюфют - - - - redraw: ; redraw event handler - call draw_window ; at first create and draw the window - - wait_event: ; main cycle - - mcall 10 ; юцшфрЄ№ ёюс√Єшх - -; mcall 23, 2 ; трЁшрэЄ яюёЄю ээ√щ юяЁюё -; or eax, eax -; jz key.1 - - dec eax ; if event = 1 - jz redraw ; jump to redraw handler - dec eax ; else if event = 2 - jz key ; jump to key handler - - - button: ; button event handler - mov al, 17 ; get button identifier - mcall - - cmp ah, 1 - jne wait_event ; return if button id != 1 - - or eax, -1 ; exit application - mcall - - key: ; key event handler - ; get key code - call load_keys - ; яЁхюсЁрчютрэшх -.1: - mov ah, 0xfe - mov edx, txt_data.fe - call load_ports - - mov ah, 0xfd - mov edx, txt_data.fd - call load_ports - - mov ah, 0xfb - mov edx, txt_data.fb - call load_ports - - mov ah, 0xf7 - mov edx, txt_data.f7 - call load_ports - - mov ah, 0xef - mov edx, txt_data.ef - call load_ports - - mov ah, 0xdf - mov edx, txt_data.df - call load_ports - - mov ah, 0xbf - mov edx, txt_data.bf - call load_ports - - mov ah, 0x7f - mov edx, txt_data.7f - call load_ports - - mov ah, 0x00 - mov edx, txt_data.00 - call load_ports - - - - jmp redraw - - draw_window: - mov eax, 12 ; start drawing - mov ebx, 1 - mcall - - xor eax, eax ; create and draw the window - mov ebx, 40*65536+560 ; (window_cx)*65536+(window_sx) - mov ecx, 40*65536+240 ; (window_cy)*65536+(window_sy) - mov edx, [sc.work] ; work area color - or edx, 0x33000000 ; & window type 3 - mov edi, title ; window title - int 0x40 - - mov ecx, [sc.work_text] - or ecx, 0x80000000 - mov edx, txt_data - mcall 4, 10*65536+40 - mov edx, txt_data.2s - mcall 4, 10*65536+60 - mov edx, txt_data.3s - mcall 4, 10*65536+80 - - - mov eax, 12 ; finish drawing - mov ebx, 2 - mcall - - ret - - -load_ports: ; тїюф ah - ёЄрЁ°шщ срщЄ яюЁЄр - ; edx - рфЁхё ЄхъёЄр - mov al, 0xFE - call load_port_FE - -rept 8 -{ - mov bl, '1' - shl al,1 - jc @f - mov bl, '0' -@@: - mov byte [edx], bl - inc edx -} - - ret - - - - -; <--- initialised data ---> -DATA - - -title db 'Key ZX-Spectrum TEST',0 - -txt_data db '#FE: ' -.fe db '******** #FD: ' -.fd db '******** #FB: ' -.fb db '******** #F7: ' -.f7 db '******** ', 0 -.2s db '#EF: ' -.ef db '******** #DF: ' -.df db '******** #BF: ' -.bf db '******** #7F: ' -.7f db '******** ', 0 -.3s db '#00: ' -.00 db '******** ', 0 - - -; <--- uninitialised data ---> -UDATA -sc system_colors - -MEOS_APP_END -; <--- end of MenuetOS application ---> \ No newline at end of file +; SPDX-License-Identifier: NOASSERTION +; + +; <--- include all MeOS stuff ---> + +include "../../../../macros.inc" + + +; <--- start of MenuetOS application ---> +MEOS_APP_START + +include "key_read.inc" + +; <--- start of code ---> +CODE + + mov eax,48 ; get system colors + mov ebx,3 + mov ecx,sc + mov edx,sizeof.system_colors + mcall + + xor ecx, ecx + inc ecx + mcall 66,1 ; setting scancode input mode + + + + redraw: ; redraw event handler + call draw_window ; at first create and draw the window + + wait_event: ; main cycle + + mcall 10 ; expect an event + +; mcall 23, 2 ; option constant poll +; or eax, eax +; jz key.1 + + dec eax ; if event = 1 + jz redraw ; jump to redraw handler + dec eax ; else if event = 2 + jz key ; jump to key handler + + + button: ; button event handler + mov al, 17 ; get button identifier + mcall + + cmp ah, 1 + jne wait_event ; return if button id != 1 + + or eax, -1 ; exit application + mcall + + key: ; key event handler + ; get key code + call load_keys + ; transformation +.1: + mov ah, 0xfe + mov edx, txt_data.fe + call load_ports + + mov ah, 0xfd + mov edx, txt_data.fd + call load_ports + + mov ah, 0xfb + mov edx, txt_data.fb + call load_ports + + mov ah, 0xf7 + mov edx, txt_data.f7 + call load_ports + + mov ah, 0xef + mov edx, txt_data.ef + call load_ports + + mov ah, 0xdf + mov edx, txt_data.df + call load_ports + + mov ah, 0xbf + mov edx, txt_data.bf + call load_ports + + mov ah, 0x7f + mov edx, txt_data.7f + call load_ports + + mov ah, 0x00 + mov edx, txt_data.00 + call load_ports + + + + jmp redraw + + draw_window: + mov eax, 12 ; start drawing + mov ebx, 1 + mcall + + xor eax, eax ; create and draw the window + mov ebx, 40*65536+560 ; (window_cx)*65536+(window_sx) + mov ecx, 40*65536+240 ; (window_cy)*65536+(window_sy) + mov edx, [sc.work] ; work area color + or edx, 0x33000000 ; & window type 3 + mov edi, title ; window title + int 0x40 + + mov ecx, [sc.work_text] + or ecx, 0x80000000 + mov edx, txt_data + mcall 4, 10*65536+40 + mov edx, txt_data.2s + mcall 4, 10*65536+60 + mov edx, txt_data.3s + mcall 4, 10*65536+80 + + + mov eax, 12 ; finish drawing + mov ebx, 2 + mcall + + ret + + +load_ports: ; input ah - port high byte + ; edx - text address + mov al, 0xFE + call load_port_FE + +rept 8 +{ + mov bl, '1' + shl al,1 + jc @f + mov bl, '0' +@@: + mov byte [edx], bl + inc edx +} + + ret + + + + +; <--- initialised data ---> +DATA + + +title db 'Key ZX-Spectrum TEST',0 + +txt_data db '#FE: ' +.fe db '******** #FD: ' +.fd db '******** #FB: ' +.fb db '******** #F7: ' +.f7 db '******** ', 0 +.2s db '#EF: ' +.ef db '******** #DF: ' +.df db '******** #BF: ' +.bf db '******** #7F: ' +.7f db '******** ', 0 +.3s db '#00: ' +.00 db '******** ', 0 + + +; <--- uninitialised data ---> +UDATA +sc system_colors + +MEOS_APP_END +; <--- end of MenuetOS application ---> diff --git a/programs/emulator/e80/trunk/utils/keyZXtst/key_read.inc b/programs/emulator/e80/utils/keyZXtst/key_read.inc similarity index 100% rename from programs/emulator/e80/trunk/utils/keyZXtst/key_read.inc rename to programs/emulator/e80/utils/keyZXtst/key_read.inc diff --git a/programs/emulator/e80/trunk/z80/macros.c b/programs/emulator/e80/z80/macros.c similarity index 100% rename from programs/emulator/e80/trunk/z80/macros.c rename to programs/emulator/e80/z80/macros.c diff --git a/programs/emulator/e80/trunk/z80/op_cb.c b/programs/emulator/e80/z80/op_cb.c similarity index 100% rename from programs/emulator/e80/trunk/z80/op_cb.c rename to programs/emulator/e80/z80/op_cb.c diff --git a/programs/emulator/e80/trunk/z80/op_dd_fd.c b/programs/emulator/e80/z80/op_dd_fd.c similarity index 100% rename from programs/emulator/e80/trunk/z80/op_dd_fd.c rename to programs/emulator/e80/z80/op_dd_fd.c diff --git a/programs/emulator/e80/trunk/z80/op_ed.c b/programs/emulator/e80/z80/op_ed.c similarity index 100% rename from programs/emulator/e80/trunk/z80/op_ed.c rename to programs/emulator/e80/z80/op_ed.c diff --git a/programs/emulator/e80/trunk/z80/opcodes.c b/programs/emulator/e80/z80/opcodes.c similarity index 100% rename from programs/emulator/e80/trunk/z80/opcodes.c rename to programs/emulator/e80/z80/opcodes.c diff --git a/programs/emulator/e80/trunk/z80/opddfdcb.c b/programs/emulator/e80/z80/opddfdcb.c similarity index 100% rename from programs/emulator/e80/trunk/z80/opddfdcb.c rename to programs/emulator/e80/z80/opddfdcb.c diff --git a/programs/emulator/e80/trunk/z80/tables.h b/programs/emulator/e80/z80/tables.h similarity index 100% rename from programs/emulator/e80/trunk/z80/tables.h rename to programs/emulator/e80/z80/tables.h diff --git a/programs/emulator/e80/trunk/z80/z80.c b/programs/emulator/e80/z80/z80.c similarity index 100% rename from programs/emulator/e80/trunk/z80/z80.c rename to programs/emulator/e80/z80/z80.c diff --git a/programs/emulator/e80/trunk/z80/z80.h b/programs/emulator/e80/z80/z80.h similarity index 100% rename from programs/emulator/e80/trunk/z80/z80.h rename to programs/emulator/e80/z80/z80.h diff --git a/programs/media/animage/trunk/Tupfile.lua b/programs/media/animage/Tupfile.lua similarity index 100% rename from programs/media/animage/trunk/Tupfile.lua rename to programs/media/animage/Tupfile.lua diff --git a/programs/media/animage/trunk/animage.asm b/programs/media/animage/animage.asm similarity index 69% rename from programs/media/animage/trunk/animage.asm rename to programs/media/animage/animage.asm index d0c634837..b9ebbdaca 100644 --- a/programs/media/animage/trunk/animage.asm +++ b/programs/media/animage/animage.asm @@ -1,376 +1,378 @@ -;******************************************************* -;**************GRAPHICS EDITOR ANIMAGE ***************** -;******************************************************* -; version: 1.52 -; last update: 23.11.2016 -; changes: Can save *.png files -; autors: IgorA -;-------------------------------------------------------- -; version: 1.51 -; last update: 23.03.2016 -; changes: Use library 'kmenu.obj', update GUI -; autors: IgorA, Veliant, Leency -;-------------------------------------------------------- -; version: 1.4 -; last update: 12.03.2016 -; changes: Use library 'libimg.obj' -; autors: IgorA -;-------------------------------------------------------- -; version: 1.3 -; last update: 05.10.2010 -; written by: Marat Zakiyanov aka Mario79, aka Mario -; changes: Fixed window flicker when redrawing, -; Fixed memory leak for stack -;-------------------------------------------------------- -; version: 1.2 -; last update: 30.09.2010 -; written by: Marat Zakiyanov aka Mario79, aka Mario -; changes: Program used function 68 instead 64 is now, -; select path with OpenDialog -;-------------------------------------------------------- -; version: 1.1 -; last update: 09.12.2006 -; autors: -; programming by andrew_programmer -; design by golus - -use32 -org 0 - db 'MENUET01' - dd 1, START, IM_END, I_END - dd stacktop, file_path, cur_dir_path - -include '../../../config.inc' ;for nightbuild -include '../../../macros.inc' -include '../../../proc32.inc' -include '../../../KOSfuncs.inc' -include '../../../load_lib.mac' -include '../../../dll.inc' -include '../../../develop/libraries/libs-dev/libio/libio.inc' -include '../../../develop/libraries/libs-dev/libimg/libimg.inc' -;include '../../../debug.inc' - -@use_library mem.Alloc,mem.Free,mem.ReAlloc,dll.Load - -;--------------------------------------------------------- -; *** константы для интерфейса *** -; *** constants for interface *** - -; корректировки на скин -ci_offs_skin_w equ 5 ;корректировка на ширину рамки скина -ci_offs_skin_h equ 24 ;корректировка на высоту скина - -; главное окно -ci_wnd_min_siz_x equ 585 ;minimum size x -ci_wnd_min_siz_y equ 400 ;minimum size y - -; панель инструментов -ci_panel_x_pos equ 0 ;коорд. x для панели -ci_panel_y_pos equ 20 ;коорд. y для панели -ci_panel_but_y1 equ ci_panel_y_pos +5 ;коорд. y для 1-го ряда кнопок -ci_panel_but_y2 equ ci_panel_y_pos+30 ;коорд. y для 2-го ряда кнопок -ci_palete_y_pos equ ci_panel_y_pos+51 ;коорд. y для палитры цветов -ci_panel_zoom_x equ 178 ;коорд. x для кнопок панели масштаба - -; окно редактора -ci_edit_wnd_x_pos equ 0 ;коорд. x для окна редактора -ci_edit_wnd_y_pos equ 71 ;коорд. y для окна редактора -ci_edit_wnd_border equ 3 ;рамка вокруг окна редактора - -; скроллинги -ci_scroll_dim equ 22 ;размеры скроллингов -ci_scrollh_coord_x_min equ (ci_edit_wnd_x_pos+3) ;минимальная позиция ползунка - ;горизонтального скроллинга -ci_scrollv_coord_y_min equ (ci_edit_wnd_y_pos+3) ;минимальная позиция ползунка - ;вертикального скроллинга -;--------------------------------------------------------- - -include 'bmplib.inc' -include 'dialog2.inc' -include 'design.inc' -include 'graphlib.inc' - -include 'cursors.inc' -include 'memory.inc' -include 'load_from_parameters.inc' - -START: - mcall SF_SYS_MISC,SSF_HEAP_INIT - mcall SF_STYLE_SETTINGS, SSF_GET_COLORS, syscolors, syscolors_end-syscolors - -load_libraries l_libs_start,end_l_libs - - cmp eax,-1 - jz close - - mcall SF_SET_EVENTS_MASK,0x80000067 ; 1100111b -;--------------------------------------------------------- -;-----------------------init data------------------------- -;--------------------------------------------------------- -include 'init_data.inc' - -;---------------------------------------------------------- -;--------get memory and draw window of program------------- -;---------------------------------------------------------- - call GetMemory - mov [Current_instrument],10 ;pencil - call TakeButtonInstruments ;set startup instrument - call cleare_work_arrea - call load_icons - call init_main_menu - -;load cursors - mov eax,CursorsID - call load_cursors - -;--------------------------------------------------------- -;---------check loading of file from parameters----------- -;--------------------------------------------------------- - mov eax,file_path - cmp [eax],byte 0 - jz @f - call load_picture - call MovePictureToWorkScreen -@@: - -;--------------------------------------------------------------------- - mov edi,filename_area - mov esi,path4+5 - call copy_str_1 - - mov edi,file_path - cmp [edi],byte 0 - jne @f - mov esi,path4 - call copy_str_1 -@@: -;OpenDialog initialisation - stdcall [OpenDialog_Init], OpenDialog_data - stdcall [ColorDialog_Init], ColorDialog_data -;--------------------------------------------------------------------- - -align 4 -red: - call drawwin -;---------------------------------------------------------- -;---------------------main loop---------------------------- -;---------------------------------------------------------- -align 4 -still: - mcall SF_WAIT_EVENT - - cmp eax,1 - je red - - cmp eax,2 - je keys - - cmp eax,3 - je buttons - - cmp eax,6 - je mouse - - jmp still - -;--------------------------------------------------------------------- -copy_str_1: - xor eax,eax - cld -@@: - lodsb - stosb - test eax,eax - jnz @b - ret -;--------------------------------------------------------------------- -include 'events.inc' -include 'events_of_window.inc' -include 'events_of_keys.inc' -include 'events_of_buttons.inc' -include 'events_of_mouse.inc' -include 'panel_engen.inc' -include 'screen.inc' -include 'menu_instruments.inc' -include 'icons_instruments.inc' -include 'icons.inc' -include 'sprites.inc' -include 'string.inc' -include 'palette.inc' -include 'files.inc' -include 'time.inc' -include 'menu.inc' -;----------------------------------------------------------- -;------------variables and data of program------------------ -;----------------------------------------------------------- -;sound_havent_memory db 150,64,0 - -include 'lib_data.inc' -include 'panel_data.inc' -include 'brushes.inc' -include 'spray.inc' -include 'width_lines.inc' -;---------------------------------------------------------- -;-------------------icon's picture------------------------- -;---------------------------------------------------------- -align 4 -panel_picture: -file 'panel_buttons.png' -.end: -align 4 -panel_zoom: -file 'panel_zoom.png' -.end: -;****************cursors****************** -brush_cursor: -file 'cursors/brush.cur' -flood_fill_cursor: -file 'cursors/flood_fill.cur' -lastik_cursor: -file 'cursors/lastik.cur' -other_cursor: -file 'cursors/other.cur' -pencil_cursor: -file 'cursors/pencil.cur' -pipette_cursor: -file 'cursors/pipette.cur' -spray_cursor: -file 'cursors/spray.cur' -zoom_cursor: -file 'cursors/zoom.cur' -;---------------------------------------------------------- -align 4 -IM_END: -;----------------------------------------------------------- -;------------variables and data of program------------------ -;----------------------------------------------------------- -time rd 1 -PosX rd 1 ;scroll x file position -PosY rd 1 ;scroll y file position -PointerToIcons rd 1 -ScreenPointer rd 1 -PointerToPicture rd 1 -PointerToCopyPicture rd 1 -PointerToCopyPicture2 rd 1 -PointerToEditBufer rd 1 -PointerToSpriteBufer rd 1 -PointerToPalette rd 1 ;указатель на пилитру (нужен для сохранения в *.bmp) -Color rd 1 -SColor rd 1 -Number_Brush rd 1 -Brush_SizeX rd 1 -Brush_SizeY rd 1 -Current_instrument rd 1 -Last_instrument rd 1 -OldX rd 1 -OldY rd 1 - -MouseX rd 1 -MouseY rd 1 -MouseBut rd 1 ;события от кнопок мыши -Window_SizeX rd 1 -Window_SizeY rd 1 -Window_CordinatX rd 1 -Window_CordinatY rd 1 -Picture_SizeX rd 1 -Picture_SizeY rd 1 -ScreenX rd 1 ;координата x курсора с учетом масштаба -ScreenY rd 1 ;координата y курсора с учетом масштаба -WorkScreen_SizeX rd 1 ;ширина рабочего экрана -WorkScreen_SizeY rd 1 ;высота рабочего экрана -MaxWorkScreen_SizeX rd 1 -MaxWorkScreen_SizeY rd 1 -k rd 1 ;масштаб - -ReserveArray rd 1 ;указатель на память используемую при рисовании фигур - ;для сохранения участков фона под фигурами, а также для заливки -CounterX rd 1 ;число пикселей изображения по ширине, которые попадают - ;в экран рабочей области, с учетом текущего масштаба -CounterY rd 1 -OffsetYPicture rd 1 ;сдвиг по оси y в буфере изображения при рисовании - ;следующей линии изображения -OffsetYWorkScreen rd 1 ;сдвиг по оси y в буфере рабочей области при - ;рисовании следующей линии пикселей. Чем больше масштаб, тем ниже - ;нужно опускаться по рабочей области. -OffsetYBigPixel rd 1 ;сдвиг по оси y для рисования пикселей на большом - ;масштабе. Рисуется 1-я полоса пикселя, а потом нужно перейти вниз и - ;влево для рисования следующей полосы. - -Icon_X rd 1 -Icon_Y rd 1 -counter rd 1 -counter2 rd 1 -number_panel rd 1 -number_menu rd 1 - -Scroll1CoordinatX rd 1 ;scroll x screen position -Scroll1CoordinatY rd 1 ;scroll y screen position -Scroll1MaxSizeX rd 1 -Scroll1MaxSizeY rd 1 -Scroll1SizeX rd 1 ;scroll polzunok size -Scroll1FreeX rd 1 - -Scroll2CoordinatX rd 1 -Scroll2CoordinatY rd 1 -Scroll2MaxSizeX rd 1 -Scroll2MaxSizeY rd 1 -Scroll2SizeY rd 1 -Scroll2FreeY rd 1 - -x rd 1 -y rd 1 - -Radius rd 1 -Dx_ rd 1 -Dy_ rd 1 -line_width rd 1 -a_ellips rd 1 -b_ellips rd 1 - -used_OldX rd 1 ;for draw hard contour -used_OldY rd 1 -paste_img_w rd 1 ;ширина вставляемого изображения -paste_img_h rd 1 ;высота вставляемого изображения -crossing_old_x rd 1 ;начальная коорд. x области копирования -crossing_old_y rd 1 ;начальная коорд. y области копирования -rectangular_shade_x rd 1 ;конечная коорд. x области копирования -rectangular_shade_y rd 1 ;конечная коорд. y области копирования -crossing rd 1 ;0 - выделения нет, 1 - идет процес выделения, - ;2 - выделение завершено, 3 - область выделения перемещается -number_undo rd 1 -SpriteSizeX rd 1 ;??? -SpriteSizeY rd 1 ;??? -SpriteCoordinatX rd 1 -SpriteCoordinatY rd 1 -SpriteOldCoordinatX rd 1 -SpriteOldCoordinatY rd 1 - -CursorsID rd 10 - -Activate_instrument rb 1 ;если равно 0 - то копирование текущего буфера - ;для его редактирования, если 1 - текущий буфер не копируется -save_flag rb 1 -exit_from_work_arrea rb 1 -lastik_is_active rb 1 -instrument_used rb 1 -DrawSprite_flag rb 1 -Paste_flag rb 1 -;--------------------------------------------------------------------- -IncludeUGlobals -;--------------------------------------------------------------------- -align 4 -file_path rb 4096 -filename_area rb 256 -temp_dir_pach rb 4096 -library_path rb 4096 -cur_dir_path rb 4096 -procinfo: rb 1024 -align 4 -syscolors rb 192 -syscolors_end: -;--------------------------------------------------------------------- -align 4 - rb 4096 -stacktop: -;--------------------------------------------------------------------- -I_END: \ No newline at end of file +; SPDX-License-Identifier: NOASSERTION +; + +;******************************************************* +;**************GRAPHICS EDITOR ANIMAGE ***************** +;******************************************************* +; version: 1.52 +; last update: 23.11.2016 +; changes: Can save *.png files +; author: IgorA +;-------------------------------------------------------- +; version: 1.51 +; last update: 23.03.2016 +; changes: Use library 'kmenu.obj', update GUI +; authors: IgorA, Veliant, Leency +;-------------------------------------------------------- +; version: 1.4 +; last update: 12.03.2016 +; changes: Use library 'libimg.obj' +; author: IgorA +;-------------------------------------------------------- +; version: 1.3 +; last update: 05.10.2010 +; written by: Marat Zakiyanov aka Mario79, aka Mario +; changes: Fixed window flicker when redrawing, +; Fixed memory leak for stack +;-------------------------------------------------------- +; version: 1.2 +; last update: 30.09.2010 +; written by: Marat Zakiyanov aka Mario79, aka Mario +; changes: Program used function 68 instead 64 is now, +; select path with OpenDialog +;-------------------------------------------------------- +; version: 1.1 +; last update: 09.12.2006 +; authors: +; programming by andrew_programmer +; design by golus + +use32 +org 0 + db 'MENUET01' + dd 1, START, IM_END, I_END + dd stacktop, file_path, cur_dir_path + +include '../../config.inc' ;for nightbuild +include '../../macros.inc' +include '../../proc32.inc' +include '../../KOSfuncs.inc' +include '../../load_lib.mac' +include '../../dll.inc' +include '../../develop/libraries/libs-dev/libio/libio.inc' +include '../../develop/libraries/libs-dev/libimg/libimg.inc' +;include '../../debug.inc' + +@use_library mem.Alloc,mem.Free,mem.ReAlloc,dll.Load + +;--------------------------------------------------------- +; *** constants for interface *** + +; skin adjustments +ci_offs_skin_w equ 5 ;adjustment to the width of the skin frame +ci_offs_skin_h equ 24 ;skin height adjustment + +; main window +ci_wnd_min_siz_x equ 585 ;minimum size x +ci_wnd_min_siz_y equ 400 ;minimum size y + +; toolbar +ci_panel_x_pos equ 0 ;coord. x for panel +ci_panel_y_pos equ 20 ;coord. y for panel +ci_panel_but_y1 equ ci_panel_y_pos +5 ;y coordinate for 1st row of buttons +ci_panel_but_y2 equ ci_panel_y_pos+30 ;y coordinate for 2nd row of buttons +ci_palete_y_pos equ ci_panel_y_pos+51 ;y coordinate for color palette +ci_panel_zoom_x equ 178 ;x coordinate for zoom bar buttons + +; editor window +ci_edit_wnd_x_pos equ 0 ;x coordinate for editor window +ci_edit_wnd_y_pos equ 71 ;y coordinate for editor window +ci_edit_wnd_border equ 3 ;frame around the editor window + +; scrolling +ci_scroll_dim equ 22 ;scroll sizes +ci_scrollh_coord_x_min equ (ci_edit_wnd_x_pos+3) ;x minimum slider position + ;horizontal scrolling +ci_scrollv_coord_y_min equ (ci_edit_wnd_y_pos+3) ;y minimum slider position + ;vertical scrolling +;--------------------------------------------------------- + +include 'bmplib.inc' +include 'dialog2.inc' +include 'design.inc' +include 'graphlib.inc' + +include 'cursors.inc' +include 'memory.inc' +include 'load_from_parameters.inc' + +START: + mcall SF_SYS_MISC,SSF_HEAP_INIT + mcall SF_STYLE_SETTINGS, SSF_GET_COLORS, syscolors, syscolors_end-syscolors + +load_libraries l_libs_start,end_l_libs + + cmp eax,-1 + jz close + + mcall SF_SET_EVENTS_MASK,0x80000067 ; 1100111b +;--------------------------------------------------------- +;-----------------------init data------------------------- +;--------------------------------------------------------- +include 'init_data.inc' + +;---------------------------------------------------------- +;--------get memory and draw window of program------------- +;---------------------------------------------------------- + call GetMemory + mov [Current_instrument],10 ;pencil + call TakeButtonInstruments ;set startup instrument + call cleare_work_arrea + call load_icons + call init_main_menu + +;load cursors + mov eax,CursorsID + call load_cursors + +;--------------------------------------------------------- +;---------check loading of file from parameters----------- +;--------------------------------------------------------- + mov eax,file_path + cmp [eax],byte 0 + jz @f + call load_picture + call MovePictureToWorkScreen +@@: + +;--------------------------------------------------------------------- + mov edi,filename_area + mov esi,path4+5 + call copy_str_1 + + mov edi,file_path + cmp [edi],byte 0 + jne @f + mov esi,path4 + call copy_str_1 +@@: +;OpenDialog initialisation + stdcall [OpenDialog_Init], OpenDialog_data + stdcall [ColorDialog_Init], ColorDialog_data +;--------------------------------------------------------------------- + +align 4 +red: + call drawwin +;---------------------------------------------------------- +;---------------------main loop---------------------------- +;---------------------------------------------------------- +align 4 +still: + mcall SF_WAIT_EVENT + + cmp eax,1 + je red + + cmp eax,2 + je keys + + cmp eax,3 + je buttons + + cmp eax,6 + je mouse + + jmp still + +;--------------------------------------------------------------------- +copy_str_1: + xor eax,eax + cld +@@: + lodsb + stosb + test eax,eax + jnz @b + ret +;--------------------------------------------------------------------- +include 'events.inc' +include 'events_of_window.inc' +include 'events_of_keys.inc' +include 'events_of_buttons.inc' +include 'events_of_mouse.inc' +include 'panel_engen.inc' +include 'screen.inc' +include 'menu_instruments.inc' +include 'icons_instruments.inc' +include 'icons.inc' +include 'sprites.inc' +include 'string.inc' +include 'palette.inc' +include 'files.inc' +include 'time.inc' +include 'menu.inc' +;----------------------------------------------------------- +;------------variables and data of program------------------ +;----------------------------------------------------------- +;sound_havent_memory db 150,64,0 + +include 'lib_data.inc' +include 'panel_data.inc' +include 'brushes.inc' +include 'spray.inc' +include 'width_lines.inc' +;---------------------------------------------------------- +;-------------------icon's picture------------------------- +;---------------------------------------------------------- +align 4 +panel_picture: +file 'panel_buttons.png' +.end: +align 4 +panel_zoom: +file 'panel_zoom.png' +.end: +;****************cursors****************** +brush_cursor: +file 'cursors/brush.cur' +flood_fill_cursor: +file 'cursors/flood_fill.cur' +lastik_cursor: +file 'cursors/lastik.cur' +other_cursor: +file 'cursors/other.cur' +pencil_cursor: +file 'cursors/pencil.cur' +pipette_cursor: +file 'cursors/pipette.cur' +spray_cursor: +file 'cursors/spray.cur' +zoom_cursor: +file 'cursors/zoom.cur' +;---------------------------------------------------------- +align 4 +IM_END: +;----------------------------------------------------------- +;------------variables and data of program------------------ +;----------------------------------------------------------- +time rd 1 +PosX rd 1 ;scroll x file position +PosY rd 1 ;scroll y file position +PointerToIcons rd 1 +ScreenPointer rd 1 +PointerToPicture rd 1 +PointerToCopyPicture rd 1 +PointerToCopyPicture2 rd 1 +PointerToEditBufer rd 1 +PointerToSpriteBufer rd 1 +PointerToPalette rd 1 ;pointer to the file (needed for saving in *.bmp) +Color rd 1 +SColor rd 1 +Number_Brush rd 1 +Brush_SizeX rd 1 +Brush_SizeY rd 1 +Current_instrument rd 1 +Last_instrument rd 1 +OldX rd 1 +OldY rd 1 + +MouseX rd 1 +MouseY rd 1 +MouseBut rd 1 ;mouse button events +Window_SizeX rd 1 +Window_SizeY rd 1 +Window_CordinatX rd 1 +Window_CordinatY rd 1 +Picture_SizeX rd 1 +Picture_SizeY rd 1 +ScreenX rd 1 ;x coordinate of the cursor accounting for the scale +ScreenY rd 1 ;y coordinate of the cursor accounting for the scale +WorkScreen_SizeX rd 1 ;width of the working screen +WorkScreen_SizeY rd 1 ;height of the working screen +MaxWorkScreen_SizeX rd 1 +MaxWorkScreen_SizeY rd 1 +k rd 1 ;scale + +ReserveArray rd 1 ;pointer to memory used when drawing figures + ;to save background areas under figures, as well as for filling +CounterX rd 1 ;number of image pixels by width that fall + ;within the workspace screen, given the current zoom level +CounterY rd 1 +OffsetYPicture rd 1 ;y-shift in image buffer when drawing + ;next line of image +OffsetYWorkScreen rd 1 ;y-shift in the workspace buffer when + ;drawing the next line of pixels. The larger the scale, the lower + ;you need to go down the workspace. +OffsetYBigPixel rd 1 ;shift along the y-axis to draw pixels on a large + ;scale. The 1st strip of the pixel is drawn, and then you need to move down and + ;left to draw the next strip. + +Icon_X rd 1 +Icon_Y rd 1 +counter rd 1 +counter2 rd 1 +number_panel rd 1 +number_menu rd 1 + +Scroll1CoordinatX rd 1 ;scroll x screen position +Scroll1CoordinatY rd 1 ;scroll y screen position +Scroll1MaxSizeX rd 1 +Scroll1MaxSizeY rd 1 +Scroll1SizeX rd 1 ;scroll polzunok size +Scroll1FreeX rd 1 + +Scroll2CoordinatX rd 1 +Scroll2CoordinatY rd 1 +Scroll2MaxSizeX rd 1 +Scroll2MaxSizeY rd 1 +Scroll2SizeY rd 1 +Scroll2FreeY rd 1 + +x rd 1 +y rd 1 + +Radius rd 1 +Dx_ rd 1 +Dy_ rd 1 +line_width rd 1 +a_ellips rd 1 +b_ellips rd 1 + +used_OldX rd 1 ;for draw hard contour +used_OldY rd 1 +paste_img_w rd 1 ;width of the inserted image +paste_img_h rd 1 ;height of the inserted image +crossing_old_x rd 1 ;initial x-coord of copy area +crossing_old_y rd 1 ;initial y-coord of copy area +rectangular_shade_x rd 1 ;end x-coord of copy area +rectangular_shade_y rd 1 ;end y-coord of copy area +crossing rd 1 ;0 - no selection, 1 - selection in progress, + ;2 - selection complete, 3 - selection area moving +number_undo rd 1 +SpriteSizeX rd 1 ;??? +SpriteSizeY rd 1 ;??? +SpriteCoordinatX rd 1 +SpriteCoordinatY rd 1 +SpriteOldCoordinatX rd 1 +SpriteOldCoordinatY rd 1 + +CursorsID rd 10 + +Activate_instrument rb 1 ;if equal to 0 - then copy the current buffer + ;for editing it, if 1 - the current buffer is not copied +save_flag rb 1 +exit_from_work_arrea rb 1 +lastik_is_active rb 1 +instrument_used rb 1 +DrawSprite_flag rb 1 +Paste_flag rb 1 +;--------------------------------------------------------------------- +IncludeUGlobals +;--------------------------------------------------------------------- +align 4 +file_path rb 4096 +filename_area rb 256 +temp_dir_pach rb 4096 +library_path rb 4096 +cur_dir_path rb 4096 +procinfo: rb 1024 +align 4 +syscolors rb 192 +syscolors_end: +;--------------------------------------------------------------------- +align 4 + rb 4096 +stacktop: +;--------------------------------------------------------------------- +I_END: diff --git a/programs/media/animage/trunk/bmplib.inc b/programs/media/animage/bmplib.inc similarity index 100% rename from programs/media/animage/trunk/bmplib.inc rename to programs/media/animage/bmplib.inc diff --git a/programs/media/animage/trunk/brushes.inc b/programs/media/animage/brushes.inc similarity index 100% rename from programs/media/animage/trunk/brushes.inc rename to programs/media/animage/brushes.inc diff --git a/programs/media/animage/trunk/build.sh b/programs/media/animage/build.sh similarity index 100% rename from programs/media/animage/trunk/build.sh rename to programs/media/animage/build.sh diff --git a/programs/media/animage/trunk/build_en.bat b/programs/media/animage/build_en.bat similarity index 100% rename from programs/media/animage/trunk/build_en.bat rename to programs/media/animage/build_en.bat diff --git a/programs/media/animage/trunk/cursors.inc b/programs/media/animage/cursors.inc similarity index 100% rename from programs/media/animage/trunk/cursors.inc rename to programs/media/animage/cursors.inc diff --git a/programs/media/animage/trunk/cursors/brush.cur b/programs/media/animage/cursors/brush.cur similarity index 100% rename from programs/media/animage/trunk/cursors/brush.cur rename to programs/media/animage/cursors/brush.cur diff --git a/programs/media/animage/trunk/cursors/flood_fill.cur b/programs/media/animage/cursors/flood_fill.cur similarity index 100% rename from programs/media/animage/trunk/cursors/flood_fill.cur rename to programs/media/animage/cursors/flood_fill.cur diff --git a/programs/media/animage/trunk/cursors/lastik.cur b/programs/media/animage/cursors/lastik.cur similarity index 100% rename from programs/media/animage/trunk/cursors/lastik.cur rename to programs/media/animage/cursors/lastik.cur diff --git a/programs/media/animage/trunk/cursors/other.cur b/programs/media/animage/cursors/other.cur similarity index 100% rename from programs/media/animage/trunk/cursors/other.cur rename to programs/media/animage/cursors/other.cur diff --git a/programs/media/animage/trunk/cursors/pencil.cur b/programs/media/animage/cursors/pencil.cur similarity index 100% rename from programs/media/animage/trunk/cursors/pencil.cur rename to programs/media/animage/cursors/pencil.cur diff --git a/programs/media/animage/trunk/cursors/pipette.cur b/programs/media/animage/cursors/pipette.cur similarity index 100% rename from programs/media/animage/trunk/cursors/pipette.cur rename to programs/media/animage/cursors/pipette.cur diff --git a/programs/media/animage/trunk/cursors/spray.cur b/programs/media/animage/cursors/spray.cur similarity index 100% rename from programs/media/animage/trunk/cursors/spray.cur rename to programs/media/animage/cursors/spray.cur diff --git a/programs/media/animage/trunk/cursors/zoom.cur b/programs/media/animage/cursors/zoom.cur similarity index 100% rename from programs/media/animage/trunk/cursors/zoom.cur rename to programs/media/animage/cursors/zoom.cur diff --git a/programs/media/animage/trunk/design.inc b/programs/media/animage/design.inc similarity index 100% rename from programs/media/animage/trunk/design.inc rename to programs/media/animage/design.inc diff --git a/programs/media/animage/trunk/dialog2.inc b/programs/media/animage/dialog2.inc similarity index 100% rename from programs/media/animage/trunk/dialog2.inc rename to programs/media/animage/dialog2.inc diff --git a/programs/media/animage/trunk/events.inc b/programs/media/animage/events.inc similarity index 100% rename from programs/media/animage/trunk/events.inc rename to programs/media/animage/events.inc diff --git a/programs/media/animage/trunk/events_of_buttons.inc b/programs/media/animage/events_of_buttons.inc similarity index 100% rename from programs/media/animage/trunk/events_of_buttons.inc rename to programs/media/animage/events_of_buttons.inc diff --git a/programs/media/animage/trunk/events_of_keys.inc b/programs/media/animage/events_of_keys.inc similarity index 100% rename from programs/media/animage/trunk/events_of_keys.inc rename to programs/media/animage/events_of_keys.inc diff --git a/programs/media/animage/trunk/events_of_mouse.inc b/programs/media/animage/events_of_mouse.inc similarity index 100% rename from programs/media/animage/trunk/events_of_mouse.inc rename to programs/media/animage/events_of_mouse.inc diff --git a/programs/media/animage/trunk/events_of_window.inc b/programs/media/animage/events_of_window.inc similarity index 100% rename from programs/media/animage/trunk/events_of_window.inc rename to programs/media/animage/events_of_window.inc diff --git a/programs/media/animage/trunk/files.inc b/programs/media/animage/files.inc similarity index 100% rename from programs/media/animage/trunk/files.inc rename to programs/media/animage/files.inc diff --git a/programs/media/animage/trunk/graphlib.inc b/programs/media/animage/graphlib.inc similarity index 100% rename from programs/media/animage/trunk/graphlib.inc rename to programs/media/animage/graphlib.inc diff --git a/programs/media/animage/trunk/icons.inc b/programs/media/animage/icons.inc similarity index 100% rename from programs/media/animage/trunk/icons.inc rename to programs/media/animage/icons.inc diff --git a/programs/media/animage/trunk/icons_instruments.inc b/programs/media/animage/icons_instruments.inc similarity index 100% rename from programs/media/animage/trunk/icons_instruments.inc rename to programs/media/animage/icons_instruments.inc diff --git a/programs/media/animage/trunk/init_data.inc b/programs/media/animage/init_data.inc similarity index 100% rename from programs/media/animage/trunk/init_data.inc rename to programs/media/animage/init_data.inc diff --git a/programs/media/animage/trunk/lib_data.inc b/programs/media/animage/lib_data.inc similarity index 100% rename from programs/media/animage/trunk/lib_data.inc rename to programs/media/animage/lib_data.inc diff --git a/programs/media/animage/trunk/load_from_parameters.inc b/programs/media/animage/load_from_parameters.inc similarity index 100% rename from programs/media/animage/trunk/load_from_parameters.inc rename to programs/media/animage/load_from_parameters.inc diff --git a/programs/media/animage/trunk/memory.inc b/programs/media/animage/memory.inc similarity index 100% rename from programs/media/animage/trunk/memory.inc rename to programs/media/animage/memory.inc diff --git a/programs/media/animage/trunk/menu.inc b/programs/media/animage/menu.inc similarity index 100% rename from programs/media/animage/trunk/menu.inc rename to programs/media/animage/menu.inc diff --git a/programs/media/animage/trunk/menu_instruments.inc b/programs/media/animage/menu_instruments.inc similarity index 100% rename from programs/media/animage/trunk/menu_instruments.inc rename to programs/media/animage/menu_instruments.inc diff --git a/programs/media/animage/trunk/palette.inc b/programs/media/animage/palette.inc similarity index 100% rename from programs/media/animage/trunk/palette.inc rename to programs/media/animage/palette.inc diff --git a/programs/media/animage/trunk/panel_buttons.png b/programs/media/animage/panel_buttons.png similarity index 100% rename from programs/media/animage/trunk/panel_buttons.png rename to programs/media/animage/panel_buttons.png diff --git a/programs/media/animage/trunk/panel_data.inc b/programs/media/animage/panel_data.inc similarity index 100% rename from programs/media/animage/trunk/panel_data.inc rename to programs/media/animage/panel_data.inc diff --git a/programs/media/animage/trunk/panel_engen.inc b/programs/media/animage/panel_engen.inc similarity index 100% rename from programs/media/animage/trunk/panel_engen.inc rename to programs/media/animage/panel_engen.inc diff --git a/programs/media/animage/trunk/panel_zoom.png b/programs/media/animage/panel_zoom.png similarity index 100% rename from programs/media/animage/trunk/panel_zoom.png rename to programs/media/animage/panel_zoom.png diff --git a/programs/media/animage/trunk/screen.inc b/programs/media/animage/screen.inc similarity index 100% rename from programs/media/animage/trunk/screen.inc rename to programs/media/animage/screen.inc diff --git a/programs/media/animage/trunk/spray.inc b/programs/media/animage/spray.inc similarity index 100% rename from programs/media/animage/trunk/spray.inc rename to programs/media/animage/spray.inc diff --git a/programs/media/animage/trunk/sprites.inc b/programs/media/animage/sprites.inc similarity index 100% rename from programs/media/animage/trunk/sprites.inc rename to programs/media/animage/sprites.inc diff --git a/programs/media/animage/trunk/string.inc b/programs/media/animage/string.inc similarity index 100% rename from programs/media/animage/trunk/string.inc rename to programs/media/animage/string.inc diff --git a/programs/media/animage/trunk/time.inc b/programs/media/animage/time.inc similarity index 100% rename from programs/media/animage/trunk/time.inc rename to programs/media/animage/time.inc diff --git a/programs/media/animage/trunk/width_lines.inc b/programs/media/animage/width_lines.inc similarity index 100% rename from programs/media/animage/trunk/width_lines.inc rename to programs/media/animage/width_lines.inc diff --git a/programs/media/kiv/trunk/Tupfile.lua b/programs/media/kiv/Tupfile.lua similarity index 71% rename from programs/media/kiv/trunk/Tupfile.lua rename to programs/media/kiv/Tupfile.lua index 23892ceeb..206f4d110 100644 --- a/programs/media/kiv/trunk/Tupfile.lua +++ b/programs/media/kiv/Tupfile.lua @@ -1,5 +1,5 @@ if tup.getconfig("NO_FASM") ~= "" then return end -HELPERDIR = (tup.getconfig("HELPERDIR") == "") and "../../.." or tup.getconfig("HELPERDIR") +HELPERDIR = (tup.getconfig("HELPERDIR") == "") and "../.." or tup.getconfig("HELPERDIR") tup.include(HELPERDIR .. "/use_fasm.lua") add_include(HELPERDIR .. "/develop/libraries/libs-dev/libimg") diff --git a/programs/media/kiv/trunk/kiv.asm b/programs/media/kiv/kiv.asm similarity index 99% rename from programs/media/kiv/trunk/kiv.asm rename to programs/media/kiv/kiv.asm index 54f0d6e5d..06b4506a4 100644 --- a/programs/media/kiv/trunk/kiv.asm +++ b/programs/media/kiv/kiv.asm @@ -1,3 +1,6 @@ +; SPDX-License-Identifier: NOASSERTION +; + format binary as "" use32 @@ -13,13 +16,13 @@ __DEBUG_LEVEL__ = 1 LG_TRACE equ 1 -include '../../../config.inc' -include '../../../proc32.inc' -include '../../../macros.inc' -include '../../../KOSfuncs.inc' -include '../../../dll.inc' -include '../../../debug-fdo.inc' -include '../../../develop/libraries/libs-dev/libimg/libimg.inc' +include '../../config.inc' +include '../../proc32.inc' +include '../../macros.inc' +include '../../KOSfuncs.inc' +include '../../dll.inc' +include '../../debug-fdo.inc' +include '../../develop/libraries/libs-dev/libimg/libimg.inc' KEY_MOVE_PIXELS = 50 diff --git a/programs/media/kiv/trunk/kivicons.bmp b/programs/media/kiv/kivicons.bmp similarity index 100% rename from programs/media/kiv/trunk/kivicons.bmp rename to programs/media/kiv/kivicons.bmp diff --git a/programs/media/listplay/trunk/Tupfile.lua b/programs/media/listplay/Tupfile.lua similarity index 100% rename from programs/media/listplay/trunk/Tupfile.lua rename to programs/media/listplay/Tupfile.lua diff --git a/programs/media/listplay/trunk/listplay.asm b/programs/media/listplay/listplay.asm similarity index 94% rename from programs/media/listplay/trunk/listplay.asm rename to programs/media/listplay/listplay.asm index 51cbae727..1c0163a58 100644 --- a/programs/media/listplay/trunk/listplay.asm +++ b/programs/media/listplay/listplay.asm @@ -1,848 +1,848 @@ - -; -; Compile with flat assembler -; Программка позволяющая проигрывать плейлист -; Разработал: ДедОк :) - -use32 - - org 0x0 - - db 'MENUET01' ; 8 byte id - dd 0x01 ; header version - dd START ; start of code - dd I_END ; size of image - dd 0x25000 ; memory for app - dd 0x20000 ; esp - dd playlist, 0x0 - -include '../../../macros.inc' - -START: ; start of execution -cmp [playlist],0x00000000 -jne dprod -mcall -1 -dprod: -or [trig_sys],40h -call scandr -jmp mmm.seach -still: - not [trig_sys] - or [trig_sys],400h - not [trig_sys] - or [trig_sys],200h - call enproc - call delproc - mov eax,23 ; wait here for event - mov ebx,20 - mcall - cmp eax,1 ; redraw request ? - je red - cmp eax,3 ; button in buffer ? - je button - test [trig_sys],200h - jz next_song - jmp still -next_song: - add [poz_butt],1 - movzx eax,[poz_song] - add eax,1 - mov [poz_song],al - mov dx,255 - mul dx - mov [song_poz], eax - movzx eax,[poz_song] - sub eax,1 - cmp [song_count],eax - ja .dgo - mov [poz_song],1 - mov [song_poz],255 - mov [poz_butt],6 -.dgo: - call load_song - call procskan - call start - or [trig_sys],200h - call draw_window - jmp still -red: - call draw_window - jmp still -button: ; button - mov eax,17 - mcall - cmp ah,1 - je close - cmp ah,2 - je mmm - cmp ah,3 - je mma - cmp ah,4 - je mmd - cmp ah,5 - je mmf - cmp ah,38 - jb mma - ret -close: - mov eax,-1 - mcall -mma: - mov [poz_butt],ah - mov [poz_song],ah - sub [poz_song],5 - movzx eax,[poz_song] - add eax,[sme] - mov [poz_song],al - mov dx,255 - mul dx - mov [song_poz], eax - call load_song - call procskan - call start - or [trig_sys],200h - call draw_window - jmp still -mmw: - mov ebx,file_info2 - mov ecx,[razm_str] - add dword [ebx+4],ecx - or [trig_sys],40h - jmp mmm.seach - ret -mmm: -.seach: - call getstring - call get_drive - call put_db - call draw_window - test [trig_sys],04h - jz mmw - jmp still -mmd: - cmp [poz_db3],510 - jb .emd - sub [poz_db3],255 - add [poz_butt],1 - sub [sme],1 -.emd: - call draw_window - jmp still -mmf: - add [poz_db3],255 - sub [poz_butt],1 - add [sme],1 - call draw_window - jmp still -procskan: - mov [num_proc],255 -qqqqq: - mov eax,9 - mov ebx,pib - mov ecx, [num_proc] - mcall - cld - lea si,[pib.process_name] - lea di,[minus] - mov cx,7 - rep cmps byte [si],[di] - jcxz mat - sub [num_proc],1 - cmp [num_proc],1 - jne qqqqq - ret -mat: - mov eax,18 - mov ebx,2 - mov ecx,[num_proc] - mcall - jmp procskan -scandr: - mov eax,18 - mov ebx,11 - mov ecx,1 - mov edx,scan_rez - mcall - ret -mountpl: - mov cx,255 - cld - lea di,[fl] - mov al,00h - repne stos byte [di] - cld - mov cx,6 - lea si,[play_list] - lea di,[fl] - rep movs byte [di],[si] - mov cx,0 - ret -get_drive: - mov al,byte[scan_rez+1] - mov [my_draw],al - mov [ns],48 - cmp [my_draw],0 - jne .c0 - or [trig_sys],01h -.c0: - cmp [my_draw],0x80 - jb .h0 - sub [my_draw],0x80 - mov [n_razd],1 - mov [nd],49 - mov al,[cd_0] - mov [td],al - call folscan -.h0: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x40 - jb .c1 - sub [my_draw],0x40 - mov al,byte[scan_rez+2] - mov [n_razd],al - add al,48 - mov [nd],al - mov al,[hd_0] - mov [td],al - call folscan -.c1: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x20 - jb .h1 - sub [my_draw],0x20 - mov [n_razd],1 - mov [nd],49 - mov al,[cd_0] - mov [ns],19 - call folscan -.h1: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x10 - jb .c2 - sub [my_draw],0x10 - mov al,byte[scan_rez+3] - mov [n_razd],al - add al,48 - mov [nd],al - mov al,[hd_0] - mov [td],al - mov [ns],49 - call folscan -.c2: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x08 - jb .h2 - sub [my_draw],0x08 - mov [n_razd],1 - mov [nd],49 - mov al,[cd_0] - mov [td],al - mov [ns],50 - call folscan -.h2: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x04 - jb .c3 - sub [my_draw],0x04 - mov al,byte[scan_rez+4] - mov [n_razd],al - add al,48 - mov [nd],al - mov al,[hd_0] - mov [td],al - mov [ns],50 - call folscan -.c3: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x02 - jb .h3 - sub [my_draw],0x02 - mov [n_razd],1 - mov [nd],49 - mov al,[cd_0] - mov [td],al - mov [ns],51 - call folscan -.h3: - cmp [trig_scan],1 - je ex1 - cmp [my_draw],0x01 - jb ex1 - sub [my_draw],0x01 - mov al,byte[scan_rez+5] - mov [n_razd],al - add al,48 - mov [nd],al - mov al,[hd_0] - mov [td],al - mov [ns],51 - call folscan -ex1: - cmp [fold],05h - jne ext2 - or [trig_sys],04h -ext2: - cmp [fold],0Ah - jne ext3 - or [trig_sys],08h - jmp eext -ext3: - mov [trig_scan],0 - not [trig_sys] - or [trig_sys],0Eh - not [trig_sys] -eext: - ret -folscan: - cmp [trig_scan],1 - je .out2 - mov eax,70 - mov ebx,file_info - mcall - mov [fold],eax - cmp [fold],0 - jne .out - mov al,1 - mov [trig_scan],al - jmp .out2 -.out: - mov al,1 - sub [n_razd],al - mov al,1 - sub [nd],al - cmp [n_razd],0 - jne folscan -.out2: - ret -get_play: - mov cx,255 - lea si,[floc] - lea di,[playlist] - rep movs byte [di],[si] - mov cx,0 -ret -getstring: - mov eax,70 - mov ebx,file_info2 - mov dword [ebx+12], 255 - mov dword [ebx+16],string1 - mov dword [ebx+21],playlist - mcall - cmp eax,6 - jne .pro - or [trig_sys],04h - call draw_window - jmp still -.pro: - - cmp ebx,0xFFFFFFFF - je .exit - call rus_m - cld - lea di,[string1] - mov cx,255 - mov al,0ah - repne scas byte [es:di] - je .calc - mov [razm_str],0 - mov ebx,file_info2 - add dword [ebx+4], 255 - or [trig_sys],40h - jmp mmm.seach -.calc: - mov [razm_str],255 - sub [razm_str],ecx -.kon: - mov [razm_path],0 - cld - lea di,[string1] - mov ecx,0 -.ppr: - cmp byte [es:di],70h - je .s1 - cmp byte [es:di],50h - je .s1 - add ecx,1 - add di,1 - cmp ecx,[razm_str] - jb .ppr - jmp .next -.s1: - add di,1 - cmp byte [es:di],33h - je .s2 - sub di,1 - jmp .next - ret -.s2: - - or [trig_sys],80h - mov [razm_path],ecx - add [razm_path],2 - -; mov [ss2],0 - cld - lea di,[string1] - mov cx,0 - mov [zzz],cx -.ppre: - cmp byte [es:di],3Ah - je .se1 - add cx,1 - add di,1 - cmp ecx,[razm_path] - jne .ppre - jmp .mount -.se1: - add di,1 - cmp byte [es:di],5Ch - je .se2 - sub di,1 - jmp .mount -.se2: - cmp ecx,250 - jb .se3 - mov ecx,0 -.se3: - add cx,2 -; mov [ss2],cx - mov [zzz],cx -.mount: - movzx ecx,[zzz] - cmp ecx, [razm_path] - jb .mount1 - or [trig_sys],04h - jmp still -.mount1: - mov ecx,255 - cld - lea di,[fl] - mov al,00h - repne stos byte [di] - cld - mov ecx,[razm_path] - sub cx,[zzz] - lea si,[string1] - add si,[zzz] - lea di,[fl] - rep movs byte [di],[si] - mov ecx,0 -.sl_m: - mov ecx,0 - lea di,[fl] -.cikl_mx: - mov al,byte[di] - mov [char_con],al - cmp al,5Ch - je .con_sl - jmp .ext6 -.con_sl: - mov al,2Fh -.ext6: - stos byte [di] - add ecx,1 - cmp ecx,[razm_path] - jb .cikl_mx - -.exit: - ret -.next: - not [trig_sys] - or [trig_sys],80h - not [trig_sys] - mov ebx,file_info2 - mov ecx,[razm_str] - add dword [ebx+4],ecx - or [trig_sys],40h - jmp mmm.seach -rus_m: - test [trig_sys],40h - jnz ddff - ret -ddff: - mov ecx,0 - lea di,[string1] -cicl_m: - mov al,byte[di] - mov [char_con],al - shr al,4 - cmp al,0Eh - je min_sor - cmp al,0Ch - je min_sor - cmp al,0Dh - je min_sor - cmp al,0Fh - je min_des - shl al,4 - mov al,0 - jmp ext5 -min_sor: - sub [char_con],40h - jmp ext5 -min_des: - sub [char_con],10h - jmp ext5 -ext5: - mov al,[char_con] - stos byte [di] - add ecx,1 - cmp ecx,255 - jb cicl_m - not [trig_sys] - or [trig_sys],40h - not [trig_sys] - ret - -put_db: - test [trig_sys],80h - jz .exit - add [song_count],1 - add [poz_db],255 - mov ecx,255 - cld - mov ebx,[poz_db] - lea di,[memlist+ebx] - mov al,00h - repne stos byte [di] - cld - mov ecx,255 - lea si,[floc] - mov ebx,[poz_db] - lea di,[memlist+ebx] - rep movs byte [di],[si] - mov ecx,0 -.exit: - ret -load_song: - cld - mov ecx,255 - lea di,[song_path] - mov ebx,[song_poz] - lea si,[memlist+ebx] - rep movs byte [di],[si] - mov ecx,0 - ret -start: - mov eax,70 - mov ebx,folder_inf - mcall - ret -delproc: - test [trig_sys],400h - jnz .sdf - ret -.sdf: - mov [num_proc],255 -.fgf: - mov eax,9 - mov ebx,pib - mov ecx, [num_proc] - mcall - cld - lea si,[pib.process_name] - lea di,[minus] - mov cx,7 - rep cmps byte [si],[di] - jcxz .qwer - sub [num_proc],1 - cmp [num_proc],1 - jne .fgf - test [trig_sys],200h - ret -.qwer: - mov eax,[pib+process_information.cpu_usage] - mov [q_takt],eax - cmp [q_takt],200000 - jb .asdf - ret -.asdf: - add [count_err],1 - cmp [count_err],6 - ja .djbn - ret -.djbn: - mov [count_err],0 - not [trig_sys] - or [trig_sys],200h - not [trig_sys] - ret -enproc: - mov [num_proc],255 -.fgf: - mov eax,9 - mov ebx,pib - mov ecx, [num_proc] - mcall - cld - lea si,[pib.process_name] - lea di,[minus] - mov cx,7 - rep cmps byte [si],[di] - jcxz .qwer - sub [num_proc],1 - cmp [num_proc],1 - jne .fgf - ret -.qwer: - or [trig_sys],400h - ret - -; ********************************************* -; ******* WINDOW DEFINITIONS AND DRAW ******** -; ********************************************* - -draw_window: - mov eax,48 - mov ebx,3 - mov ecx,sc - mov edx,sizeof.system_colors - mcall - mov eax,12 ; function 12:tell os about windowdraw - mov ebx,1 ; 1, start of draw - mcall - ; DRAW WINDOW - xor eax,eax ; function 0 : define and draw window - mov ebx,100*65536+550 ; [x start] *65536 + [x size] - mov ecx,100*65536+420 ; [y start] *65536 + [y size] - mov edx,[sc.work] ; color of work area RRGGBB,8->color gl - or edx,0x33000000 - mov edi,title - mcall - mov eax,4 - mov ebx,5*65536+5 - mov ecx,0xC0000000 - mov edx,label1 - mov edi,[sc.work] - mcall - mov eax,4 - mov ebx,300*65536+5 - mov ecx,0xC0000000 - mov edx,label5 - mov edi,[sc.work] - mcall - mov eax,4 - mov ebx,300*65536+15 - mov ecx,0xC0000000 - mov edx,label6 - mov edi,[sc.work] - mcall - mov eax,4 - mov ebx,25*65536+35 - mov ecx,0xC00000dd - mov edx,song_path - mov edi,[sc.work] - mcall - mov eax,4 - mov ebx,100*65536+5 - mov ecx,0xC0000000 - mov edx,playlist - mov edi,[sc.work] - mcall - test [trig_sys],4h - jnz .zam1 - mov eax,4 - mov ebx,5*65536+15 - mov ecx,0xC0000000 - mov edx,label3 - mov edi,[sc.work] - mcall - jmp .zam2 -.zam1: - mov eax,4 - mov ebx,5*65536+15 - mov ecx,0xC0000000 - mov edx,label2 - mov edi,[sc.work] - mcall - mov eax,4 - mov ebx,5*65536+25 - mov ecx,0xC0000000 - mov edx,label4 - mov edi,[sc.work] - mcall -.zam2: - -; mov eax,47 -; mov esi,0x50000000 -; mov ecx, [trig_sys] -; mov edi,[sc.work] -; mov ebx,0x00080100 -; mov edx,385*65536+25 -; mcall - mov eax,47 - mov esi,0x50000000 - mov ecx, [song_count] - mov edi,[sc.work] - mov ebx,0x00030000 - mov edx,500*65536+5 - mcall - mov eax,47 - mov esi,0x50000000 - movzx ecx, [poz_song] - mov edi,[sc.work] - mov ebx,0x00030000 - mov edx,500*65536+15 - mcall - mov [bbut],32 - mov [poz_but],48*65536+10 - mov edx,6 -butt1: - mov ebx,0*65536+20 - mov ecx,[poz_but] - mov esi,[color1] - movzx eax,[poz_butt] - cmp edx,eax - jne .uuu - mov esi,[color2] -.uuu: - mov eax,8 - mcall - add edx,1 - add [poz_but],10*65536 - sub [bbut],1 - cmp [bbut],0 - jne butt1 - mov eax,8 - mov ebx,525*65536+15 - mov ecx,45*65536+15 - mov esi,0x00aaaadd - mov edx,4 - mcall - mov eax,8 - mov ebx,525*65536+15 - mov ecx,365*65536+15 - mov esi,0x00aaaadd - mov edx,5 - mcall - mov [ai],32 - mov [list_poz],25*65536+50 - mov ebx,[poz_db3] - mov [poz_db2],ebx -list: - mov eax,4 - mov ecx,0xC0000000 - mov ebx,[poz_db2] - lea edx,[memlist+ebx] - mov ebx, [list_poz] - mov edi,[sc.work] - mcall - add [list_poz],10 - add [poz_db2],255 - sub [ai],1 - cmp [ai],0 - ja list - mov eax,12 ; function 12:tell os about windowdraw - mov ebx,2 ; 2, end of draw - mcall - ret - - - -; DATA AREA - - -title: db 'Проигрываем плейлист v 0.20',0 -play_list: db '1.kpl',0 -cd_0: db 'c',0 -hd_0: db 'h',0 -label1: db 'Файл плейлиста:',0 -label2: db 'сканирование закончено... :) ',0 -label3: db 'Подождите, пожалуйста, идёт сканирование',0 -label4: db 'Воспроизводимый файл:',0 -label5: db 'Всего файлов в плейлисте найдено:',0 -label6: db 'Номер воспроизводимого файла:',0 -minus: db 'ac97snd',0 -player: db '/sys/media/ac97snd' ,0 -my_draw db 0 -n_razd db 0 -trig_scan db 0 -char_con db 0 -poz_butt db 0 -poz_song db 0 -count_err dd 0 -num_proc dd 0 -q_takt dd 0 -razm_str dd 0 -fold dd 0 -razm_path dd 0 -trig_sys dd 0 -poz_db dd 0 -poz_db2 dd 0 -poz_db3 dd 255 -song_poz dd 0 -list_poz dd 5*65536+50 -song_count dd 0 -ai dd 0 -st_r dd 0 -bbut dd 0 -poz_but dd 0 -sme dd 0 -color1 dd 0x006666dd -color2 dd 0x00dddddd -ss2 dd 0 -zzz dw 22 -scan_rez: - db 0 - db 0 - db 0 - db 0 - db 0 - db 0 - db 0 - db 0 - db 0 - db 0 -floc: -pc: db '/' -td: db 'h' -dr: db 'd' -ns db 48 -vc: db '/' -nd db 48 -ks: db '/' -fl: - rb 255 -playlist rb 255 -song_path rb 255 -folder_inf: - dd 7 - dd 0 - dd song_path - dd 0 - dd 0 - db 0 - dd player -file_info: - dd 0 - dd 0 - dd 0 - dd 0 - dd 0 - db 0 - dd floc -file_info2: - dd 0 - dd 0 - dd 0 - dd 0 - dd 0 - db 0 - dd 0 -string1 rb 255 - -I_END: - - - -temp dd ? -sc system_colors -pib process_information -memlist rb 65536 - +; SPDX-License-Identifier: NOASSERTION +; +; +; Compile with flat assembler +; A program that allows you to play a playlist +; Developed by: DedOk :) + +use32 + + org 0x0 + + db 'MENUET01' ; 8 byte id + dd 0x01 ; header version + dd START ; start of code + dd I_END ; size of image + dd 0x25000 ; memory for app + dd 0x20000 ; esp + dd playlist, 0x0 + +include '../../macros.inc' + +START: ; start of execution +cmp [playlist],0x00000000 +jne dprod +mcall -1 +dprod: +or [trig_sys],40h +call scandr +jmp mmm.seach +still: + not [trig_sys] + or [trig_sys],400h + not [trig_sys] + or [trig_sys],200h + call enproc + call delproc + mov eax,23 ; wait here for event + mov ebx,20 + mcall + cmp eax,1 ; redraw request ? + je red + cmp eax,3 ; button in buffer ? + je button + test [trig_sys],200h + jz next_song + jmp still +next_song: + add [poz_butt],1 + movzx eax,[poz_song] + add eax,1 + mov [poz_song],al + mov dx,255 + mul dx + mov [song_poz], eax + movzx eax,[poz_song] + sub eax,1 + cmp [song_count],eax + ja .dgo + mov [poz_song],1 + mov [song_poz],255 + mov [poz_butt],6 +.dgo: + call load_song + call procskan + call start + or [trig_sys],200h + call draw_window + jmp still +red: + call draw_window + jmp still +button: ; button + mov eax,17 + mcall + cmp ah,1 + je close + cmp ah,2 + je mmm + cmp ah,3 + je mma + cmp ah,4 + je mmd + cmp ah,5 + je mmf + cmp ah,38 + jb mma + ret +close: + mov eax,-1 + mcall +mma: + mov [poz_butt],ah + mov [poz_song],ah + sub [poz_song],5 + movzx eax,[poz_song] + add eax,[sme] + mov [poz_song],al + mov dx,255 + mul dx + mov [song_poz], eax + call load_song + call procskan + call start + or [trig_sys],200h + call draw_window + jmp still +mmw: + mov ebx,file_info2 + mov ecx,[razm_str] + add dword [ebx+4],ecx + or [trig_sys],40h + jmp mmm.seach + ret +mmm: +.seach: + call getstring + call get_drive + call put_db + call draw_window + test [trig_sys],04h + jz mmw + jmp still +mmd: + cmp [poz_db3],510 + jb .emd + sub [poz_db3],255 + add [poz_butt],1 + sub [sme],1 +.emd: + call draw_window + jmp still +mmf: + add [poz_db3],255 + sub [poz_butt],1 + add [sme],1 + call draw_window + jmp still +procskan: + mov [num_proc],255 +qqqqq: + mov eax,9 + mov ebx,pib + mov ecx, [num_proc] + mcall + cld + lea si,[pib.process_name] + lea di,[minus] + mov cx,7 + rep cmps byte [si],[di] + jcxz mat + sub [num_proc],1 + cmp [num_proc],1 + jne qqqqq + ret +mat: + mov eax,18 + mov ebx,2 + mov ecx,[num_proc] + mcall + jmp procskan +scandr: + mov eax,18 + mov ebx,11 + mov ecx,1 + mov edx,scan_rez + mcall + ret +mountpl: + mov cx,255 + cld + lea di,[fl] + mov al,00h + repne stos byte [di] + cld + mov cx,6 + lea si,[play_list] + lea di,[fl] + rep movs byte [di],[si] + mov cx,0 + ret +get_drive: + mov al,byte[scan_rez+1] + mov [my_draw],al + mov [ns],48 + cmp [my_draw],0 + jne .c0 + or [trig_sys],01h +.c0: + cmp [my_draw],0x80 + jb .h0 + sub [my_draw],0x80 + mov [n_razd],1 + mov [nd],49 + mov al,[cd_0] + mov [td],al + call folscan +.h0: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x40 + jb .c1 + sub [my_draw],0x40 + mov al,byte[scan_rez+2] + mov [n_razd],al + add al,48 + mov [nd],al + mov al,[hd_0] + mov [td],al + call folscan +.c1: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x20 + jb .h1 + sub [my_draw],0x20 + mov [n_razd],1 + mov [nd],49 + mov al,[cd_0] + mov [ns],19 + call folscan +.h1: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x10 + jb .c2 + sub [my_draw],0x10 + mov al,byte[scan_rez+3] + mov [n_razd],al + add al,48 + mov [nd],al + mov al,[hd_0] + mov [td],al + mov [ns],49 + call folscan +.c2: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x08 + jb .h2 + sub [my_draw],0x08 + mov [n_razd],1 + mov [nd],49 + mov al,[cd_0] + mov [td],al + mov [ns],50 + call folscan +.h2: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x04 + jb .c3 + sub [my_draw],0x04 + mov al,byte[scan_rez+4] + mov [n_razd],al + add al,48 + mov [nd],al + mov al,[hd_0] + mov [td],al + mov [ns],50 + call folscan +.c3: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x02 + jb .h3 + sub [my_draw],0x02 + mov [n_razd],1 + mov [nd],49 + mov al,[cd_0] + mov [td],al + mov [ns],51 + call folscan +.h3: + cmp [trig_scan],1 + je ex1 + cmp [my_draw],0x01 + jb ex1 + sub [my_draw],0x01 + mov al,byte[scan_rez+5] + mov [n_razd],al + add al,48 + mov [nd],al + mov al,[hd_0] + mov [td],al + mov [ns],51 + call folscan +ex1: + cmp [fold],05h + jne ext2 + or [trig_sys],04h +ext2: + cmp [fold],0Ah + jne ext3 + or [trig_sys],08h + jmp eext +ext3: + mov [trig_scan],0 + not [trig_sys] + or [trig_sys],0Eh + not [trig_sys] +eext: + ret +folscan: + cmp [trig_scan],1 + je .out2 + mov eax,70 + mov ebx,file_info + mcall + mov [fold],eax + cmp [fold],0 + jne .out + mov al,1 + mov [trig_scan],al + jmp .out2 +.out: + mov al,1 + sub [n_razd],al + mov al,1 + sub [nd],al + cmp [n_razd],0 + jne folscan +.out2: + ret +get_play: + mov cx,255 + lea si,[floc] + lea di,[playlist] + rep movs byte [di],[si] + mov cx,0 +ret +getstring: + mov eax,70 + mov ebx,file_info2 + mov dword [ebx+12], 255 + mov dword [ebx+16],string1 + mov dword [ebx+21],playlist + mcall + cmp eax,6 + jne .pro + or [trig_sys],04h + call draw_window + jmp still +.pro: + + cmp ebx,0xFFFFFFFF + je .exit + call rus_m + cld + lea di,[string1] + mov cx,255 + mov al,0ah + repne scas byte [es:di] + je .calc + mov [razm_str],0 + mov ebx,file_info2 + add dword [ebx+4], 255 + or [trig_sys],40h + jmp mmm.seach +.calc: + mov [razm_str],255 + sub [razm_str],ecx +.kon: + mov [razm_path],0 + cld + lea di,[string1] + mov ecx,0 +.ppr: + cmp byte [es:di],70h + je .s1 + cmp byte [es:di],50h + je .s1 + add ecx,1 + add di,1 + cmp ecx,[razm_str] + jb .ppr + jmp .next +.s1: + add di,1 + cmp byte [es:di],33h + je .s2 + sub di,1 + jmp .next + ret +.s2: + + or [trig_sys],80h + mov [razm_path],ecx + add [razm_path],2 + +; mov [ss2],0 + cld + lea di,[string1] + mov cx,0 + mov [zzz],cx +.ppre: + cmp byte [es:di],3Ah + je .se1 + add cx,1 + add di,1 + cmp ecx,[razm_path] + jne .ppre + jmp .mount +.se1: + add di,1 + cmp byte [es:di],5Ch + je .se2 + sub di,1 + jmp .mount +.se2: + cmp ecx,250 + jb .se3 + mov ecx,0 +.se3: + add cx,2 +; mov [ss2],cx + mov [zzz],cx +.mount: + movzx ecx,[zzz] + cmp ecx, [razm_path] + jb .mount1 + or [trig_sys],04h + jmp still +.mount1: + mov ecx,255 + cld + lea di,[fl] + mov al,00h + repne stos byte [di] + cld + mov ecx,[razm_path] + sub cx,[zzz] + lea si,[string1] + add si,[zzz] + lea di,[fl] + rep movs byte [di],[si] + mov ecx,0 +.sl_m: + mov ecx,0 + lea di,[fl] +.cikl_mx: + mov al,byte[di] + mov [char_con],al + cmp al,5Ch + je .con_sl + jmp .ext6 +.con_sl: + mov al,2Fh +.ext6: + stos byte [di] + add ecx,1 + cmp ecx,[razm_path] + jb .cikl_mx + +.exit: + ret +.next: + not [trig_sys] + or [trig_sys],80h + not [trig_sys] + mov ebx,file_info2 + mov ecx,[razm_str] + add dword [ebx+4],ecx + or [trig_sys],40h + jmp mmm.seach +rus_m: + test [trig_sys],40h + jnz ddff + ret +ddff: + mov ecx,0 + lea di,[string1] +cicl_m: + mov al,byte[di] + mov [char_con],al + shr al,4 + cmp al,0Eh + je min_sor + cmp al,0Ch + je min_sor + cmp al,0Dh + je min_sor + cmp al,0Fh + je min_des + shl al,4 + mov al,0 + jmp ext5 +min_sor: + sub [char_con],40h + jmp ext5 +min_des: + sub [char_con],10h + jmp ext5 +ext5: + mov al,[char_con] + stos byte [di] + add ecx,1 + cmp ecx,255 + jb cicl_m + not [trig_sys] + or [trig_sys],40h + not [trig_sys] + ret + +put_db: + test [trig_sys],80h + jz .exit + add [song_count],1 + add [poz_db],255 + mov ecx,255 + cld + mov ebx,[poz_db] + lea di,[memlist+ebx] + mov al,00h + repne stos byte [di] + cld + mov ecx,255 + lea si,[floc] + mov ebx,[poz_db] + lea di,[memlist+ebx] + rep movs byte [di],[si] + mov ecx,0 +.exit: + ret +load_song: + cld + mov ecx,255 + lea di,[song_path] + mov ebx,[song_poz] + lea si,[memlist+ebx] + rep movs byte [di],[si] + mov ecx,0 + ret +start: + mov eax,70 + mov ebx,folder_inf + mcall + ret +delproc: + test [trig_sys],400h + jnz .sdf + ret +.sdf: + mov [num_proc],255 +.fgf: + mov eax,9 + mov ebx,pib + mov ecx, [num_proc] + mcall + cld + lea si,[pib.process_name] + lea di,[minus] + mov cx,7 + rep cmps byte [si],[di] + jcxz .qwer + sub [num_proc],1 + cmp [num_proc],1 + jne .fgf + test [trig_sys],200h + ret +.qwer: + mov eax,[pib+process_information.cpu_usage] + mov [q_takt],eax + cmp [q_takt],200000 + jb .asdf + ret +.asdf: + add [count_err],1 + cmp [count_err],6 + ja .djbn + ret +.djbn: + mov [count_err],0 + not [trig_sys] + or [trig_sys],200h + not [trig_sys] + ret +enproc: + mov [num_proc],255 +.fgf: + mov eax,9 + mov ebx,pib + mov ecx, [num_proc] + mcall + cld + lea si,[pib.process_name] + lea di,[minus] + mov cx,7 + rep cmps byte [si],[di] + jcxz .qwer + sub [num_proc],1 + cmp [num_proc],1 + jne .fgf + ret +.qwer: + or [trig_sys],400h + ret + +; ********************************************* +; ******* WINDOW DEFINITIONS AND DRAW ******** +; ********************************************* + +draw_window: + mov eax,48 + mov ebx,3 + mov ecx,sc + mov edx,sizeof.system_colors + mcall + mov eax,12 ; function 12:tell os about windowdraw + mov ebx,1 ; 1, start of draw + mcall + ; DRAW WINDOW + xor eax,eax ; function 0 : define and draw window + mov ebx,100*65536+550 ; [x start] *65536 + [x size] + mov ecx,100*65536+420 ; [y start] *65536 + [y size] + mov edx,[sc.work] ; color of work area RRGGBB,8->color gl + or edx,0x33000000 + mov edi,title + mcall + mov eax,4 + mov ebx,5*65536+5 + mov ecx,0xC0000000 + mov edx,label1 + mov edi,[sc.work] + mcall + mov eax,4 + mov ebx,300*65536+5 + mov ecx,0xC0000000 + mov edx,label5 + mov edi,[sc.work] + mcall + mov eax,4 + mov ebx,300*65536+15 + mov ecx,0xC0000000 + mov edx,label6 + mov edi,[sc.work] + mcall + mov eax,4 + mov ebx,25*65536+35 + mov ecx,0xC00000dd + mov edx,song_path + mov edi,[sc.work] + mcall + mov eax,4 + mov ebx,100*65536+5 + mov ecx,0xC0000000 + mov edx,playlist + mov edi,[sc.work] + mcall + test [trig_sys],4h + jnz .zam1 + mov eax,4 + mov ebx,5*65536+15 + mov ecx,0xC0000000 + mov edx,label3 + mov edi,[sc.work] + mcall + jmp .zam2 +.zam1: + mov eax,4 + mov ebx,5*65536+15 + mov ecx,0xC0000000 + mov edx,label2 + mov edi,[sc.work] + mcall + mov eax,4 + mov ebx,5*65536+25 + mov ecx,0xC0000000 + mov edx,label4 + mov edi,[sc.work] + mcall +.zam2: + +; mov eax,47 +; mov esi,0x50000000 +; mov ecx, [trig_sys] +; mov edi,[sc.work] +; mov ebx,0x00080100 +; mov edx,385*65536+25 +; mcall + mov eax,47 + mov esi,0x50000000 + mov ecx, [song_count] + mov edi,[sc.work] + mov ebx,0x00030000 + mov edx,500*65536+5 + mcall + mov eax,47 + mov esi,0x50000000 + movzx ecx, [poz_song] + mov edi,[sc.work] + mov ebx,0x00030000 + mov edx,500*65536+15 + mcall + mov [bbut],32 + mov [poz_but],48*65536+10 + mov edx,6 +butt1: + mov ebx,0*65536+20 + mov ecx,[poz_but] + mov esi,[color1] + movzx eax,[poz_butt] + cmp edx,eax + jne .uuu + mov esi,[color2] +.uuu: + mov eax,8 + mcall + add edx,1 + add [poz_but],10*65536 + sub [bbut],1 + cmp [bbut],0 + jne butt1 + mov eax,8 + mov ebx,525*65536+15 + mov ecx,45*65536+15 + mov esi,0x00aaaadd + mov edx,4 + mcall + mov eax,8 + mov ebx,525*65536+15 + mov ecx,365*65536+15 + mov esi,0x00aaaadd + mov edx,5 + mcall + mov [ai],32 + mov [list_poz],25*65536+50 + mov ebx,[poz_db3] + mov [poz_db2],ebx +list: + mov eax,4 + mov ecx,0xC0000000 + mov ebx,[poz_db2] + lea edx,[memlist+ebx] + mov ebx, [list_poz] + mov edi,[sc.work] + mcall + add [list_poz],10 + add [poz_db2],255 + sub [ai],1 + cmp [ai],0 + ja list + mov eax,12 ; function 12:tell os about windowdraw + mov ebx,2 ; 2, end of draw + mcall + ret + + + +; DATA AREA + + +title: db 'Проигрываем плейлист v 0.20',0 +play_list: db '1.kpl',0 +cd_0: db 'c',0 +hd_0: db 'h',0 +label1: db 'Файл плейлиста:',0 +label2: db 'сканирование закончено... :) ',0 +label3: db 'Подождите, пожалуйста, идёт сканирование',0 +label4: db 'Воспроизводимый файл:',0 +label5: db 'Всего файлов в плейлисте найдено:',0 +label6: db 'Номер воспроизводимого файла:',0 +minus: db 'ac97snd',0 +player: db '/sys/media/ac97snd' ,0 +my_draw db 0 +n_razd db 0 +trig_scan db 0 +char_con db 0 +poz_butt db 0 +poz_song db 0 +count_err dd 0 +num_proc dd 0 +q_takt dd 0 +razm_str dd 0 +fold dd 0 +razm_path dd 0 +trig_sys dd 0 +poz_db dd 0 +poz_db2 dd 0 +poz_db3 dd 255 +song_poz dd 0 +list_poz dd 5*65536+50 +song_count dd 0 +ai dd 0 +st_r dd 0 +bbut dd 0 +poz_but dd 0 +sme dd 0 +color1 dd 0x006666dd +color2 dd 0x00dddddd +ss2 dd 0 +zzz dw 22 +scan_rez: + db 0 + db 0 + db 0 + db 0 + db 0 + db 0 + db 0 + db 0 + db 0 + db 0 +floc: +pc: db '/' +td: db 'h' +dr: db 'd' +ns db 48 +vc: db '/' +nd db 48 +ks: db '/' +fl: + rb 255 +playlist rb 255 +song_path rb 255 +folder_inf: + dd 7 + dd 0 + dd song_path + dd 0 + dd 0 + db 0 + dd player +file_info: + dd 0 + dd 0 + dd 0 + dd 0 + dd 0 + db 0 + dd floc +file_info2: + dd 0 + dd 0 + dd 0 + dd 0 + dd 0 + db 0 + dd 0 +string1 rb 255 + +I_END: + + + +temp dd ? +sc system_colors +pib process_information +memlist rb 65536 diff --git a/programs/other/calc/trunk/Tupfile.lua b/programs/other/calc/Tupfile.lua similarity index 100% rename from programs/other/calc/trunk/Tupfile.lua rename to programs/other/calc/Tupfile.lua diff --git a/programs/other/calc/trunk/build_en.bat b/programs/other/calc/build_en.bat similarity index 100% rename from programs/other/calc/trunk/build_en.bat rename to programs/other/calc/build_en.bat diff --git a/programs/other/calc/trunk/build_ru.bat b/programs/other/calc/build_ru.bat similarity index 100% rename from programs/other/calc/trunk/build_ru.bat rename to programs/other/calc/build_ru.bat diff --git a/programs/other/calc/trunk/calc.asm b/programs/other/calc/calc.asm similarity index 99% rename from programs/other/calc/trunk/calc.asm rename to programs/other/calc/calc.asm index 6e167db34..59ae8a6fb 100644 --- a/programs/other/calc/trunk/calc.asm +++ b/programs/other/calc/calc.asm @@ -1,3 +1,6 @@ +; SPDX-License-Identifier: NOASSERTION +; + ;; Calculator for MenuetOS (c) Ville Turjanmaa ;; ;; Compile with FASM @@ -31,9 +34,9 @@ use32 dd E_END ; esp dd 0x0,0x0 ; I_Param , I_Icon -include '../../../macros.inc' -include '../../../gui_patterns.inc' -include '../../../KOSfuncs.inc' +include '../../macros.inc' +include '../../gui_patterns.inc' +include '../../KOSfuncs.inc' hotkeys_count equ 26 asci: db 49, 50, 51, 52, 53, 54, 55, 56, 57, 48, 43, 61, 13, 45, 42, 47, 44, 46, 27, 182, \ diff --git a/programs/other/period/trunk/Tupfile.lua b/programs/other/period/Tupfile.lua similarity index 100% rename from programs/other/period/trunk/Tupfile.lua rename to programs/other/period/Tupfile.lua diff --git a/programs/other/period/trunk/build.bat b/programs/other/period/build.bat similarity index 100% rename from programs/other/period/trunk/build.bat rename to programs/other/period/build.bat diff --git a/programs/other/period/trunk/period.asm b/programs/other/period/period.asm similarity index 86% rename from programs/other/period/trunk/period.asm rename to programs/other/period/period.asm index 3db36a5e0..64969b0b9 100644 --- a/programs/other/period/trunk/period.asm +++ b/programs/other/period/period.asm @@ -1,2061 +1,2066 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; Periodic Table for KolibriOS -;; -;; Периодическая система химических элементов -;; Дмитрия Ивановича Менделеева -;; Авторы: -;; navanax [violetlab+rambler.ru] -;; Johnny_B [john+kolibrios.org] -;; -;; макрос для создания массива указателей на ASCIIZ-строки - -include '..\..\..\macros.inc' -macro strtbl name,[string] -{ - common - label name dword - forward - local lbl - dd lbl - forward - lbl db string,0 -} - -use32 - - org 0x0 - db 'MENUET01' ; стандартный 8-байтовый заголовок для исполняемых файлов MeOS - dd 0x01 ; версия заголовка - dd START ; указатель на начало исполняемого кода - dd I_END ; размер образа - dd I_END+0x1000 ; требуемая память для приложения - dd I_END+0x1000 ; указатель на начала стека - dd 0x0 , 0x0 ; I_Param , I_Icon - -;ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ И КОНСТАНТЫ -re_ID dd 0x00000001 ;для хранения номера текущего выводимого элемента - -START: - - mov eax,48 - mov ebx,3 - mov ecx,sc - mov edx,sizeof.system_colors - mcall - -red: - call draw_window - -still: ;основной цикл программы - push 10 ;ожидание события - pop eax - mcall - - dec eax - je red - dec eax - jne button - -key: - mov al,2 - mcall - jmp still - -button: - mov al,17 ;получаем ID нажатой кнопки - mcall - shr eax,8 ; eax=24-битный ButtonID - - cmp eax,1 ;нажата ли "Закрыть" [x] - jne noclose - or eax,-1 - mcall - -noclose: - cmp eax,200 - jne no_H - mov eax,1 -no_H: - mov [re_ID],eax -;; - call draw_text -;; - jmp still - -draw_window: - - mov eax,12 ;begin drawing - xor ebx,ebx - inc ebx - mcall - ; DRAW WINDOW - xor eax,eax - mov ebx,50*65536+555 ;x - mov ecx,30*65536+455 ;y - mov edx,[sc.work] - or edx,0x34000000 ;style - mov edi,caption - mcall - -text_in_window: - mov eax,4 ;вывод текста - mov ecx,0x80000000 ;asciiz, ЦВЕТ !!! - - mov ebx,40*65536+200 ;лантаноиды - mov edx,Lantanoid_text - mcall - - add ebx,20 ;актиноиды - mov edx,Actinoid_text - mcall - - mov ebx,150*65536+255 - mov edx,number - mcall - - add ebx,15 - mov edx,name - mcall - - add ebx,15 - mov edx,eng_name - mcall - - add ebx,15 - mov edx,Atomic_massa - mcall - - add ebx,15 - mov edx,density - mcall - - add ebx,15 - mov edx,Step_okisl - mcall - - add ebx,15 - mov edx,Electrootr - mcall - - add ebx,15 - mov edx,T_pl - mcall - - add ebx,15 - mov edx,T_kip - mcall - - add ebx,15 - mov edx,Raspr - mcall - - add ebx,15 - mov edx,Otkrytie - mcall - - ; ВЫВОД НОМЕРОВ ПЕРИОДОВ - mov ebx,30*65536+43 - mov edx,Period_text ;1 - mcall - - call @f ;2 - call @f ;3 - call @f ;4 - call @f ;5 - call @f ;6 - call @f ;7 - jmp Table - - @@: - add ebx,20 - add edx,4 ;т.к. строка = 4 байтам(с нулём) - mcall - ret - -Table: ;Отрисовка таблицы в виде конопочек - table_row_1: - shl eax,1 - mov ebx,50*65536+25 - mov ecx,35*65536+20 - mov edx,200 - mov esi,0xE19123 - mcall - He_: - mov ebx,491*65536+25 - mov esi,0x0f0c314 - mov edx,2 - mcall - table_row_2: - Li: - mov ebx,50*65536+25 - mov ecx,56*65536+20 - mov esi,0xE19123 - inc edx - mcall - Be: - mov ebx,76*65536+25 - inc edx - mcall - B_: - mov ebx,361*65536+25 - inc edx - mov esi,0x0f0c314 - mcall - mov edi,4 - table_row_2_loop: - add ebx,26*65536 - inc edx - mcall - dec edi - jns table_row_2_loop - table_row_3: - Na: - mov ebx,50*65536+25 - mov ecx,77*65536+20 - mov esi,0xE19123 - inc edx - mcall - - mov ebx,76*65536+25 - inc edx - mcall - - mov ebx,361*65536+25 - inc edx - mov esi,0x0f0c314 - mcall - mov edi,4 - table_row_3_loop: - add ebx,26*65536 - inc edx - mcall - dec edi - jns table_row_3_loop - - Table_row_4: - K_: - mov ebx,50*65536+25 - mov ecx,98*65536+20 - mov esi,0xE19123 - inc edx - mcall - Ca: - mov ebx,76*65536+25 - inc edx - mcall - Sc: - mov ebx,102*65536+25 - inc edx - mov esi,0x559beb - mcall - mov edi,8 - Table_row_4_loop1: - add ebx,26*65536 - inc edx - mcall - dec edi - jns Table_row_4_loop1 - - mov ebx,361*65536+25 - inc edx - mov esi,0x0f0c314 - mcall - mov edi,4 - table_row_4_loop2: - add ebx,26*65536 - inc edx - mcall - dec edi - jns table_row_4_loop2 - - Table_row_5: - Rb_: - mov ebx,50*65536+25 - mov ecx,119*65536+20 - mov esi,0xE19123 - inc edx - mcall - Sr_: - mov ebx,76*65536+25 - inc edx - mcall - Y_: - mov ebx,102*65536+25 - inc edx - mov esi,0x559beb - mcall - mov edi,8 - Table_row_5_loop1: - add ebx,26*65536 - inc edx - mcall - dec edi - jns Table_row_5_loop1 - - mov ebx,361*65536+25 - inc edx - mov esi,0x0f0c314 - mcall - mov edi,4 - table_row_5_loop2: - add ebx,26*65536 - inc edx - mcall - dec edi - jns table_row_5_loop2 - - Table_row_6: - Cs_: - mov ebx,50*65536+25 - mov ecx,140*65536+20 - mov esi,0xE19123 - inc edx - mcall - Ba_: - mov ebx,76*65536+25 - inc edx - mcall - La_: - mov ebx,102*65536+25 - inc edx - mov esi,0x559beb - mcall - mov edx,71 - mov edi,8 - Table_row_6_loop1: - add ebx,26*65536 - inc edx - mcall - dec edi - jns Table_row_6_loop1 - - mov ebx,361*65536+25 - inc edx - mov esi,0x0f0c314 - mcall - mov edi,4 - table_row_6_loop2: - add ebx,26*65536 - inc edx - mcall - dec edi - jns table_row_6_loop2 - - Table_row_7: - Fr_: - mov ebx,50*65536+25 - mov ecx,161*65536+20 - mov esi,0xE19123 - inc edx - mcall - Ra_: - mov ebx,76*65536+25 - inc edx - mcall - Ac_: - mov ebx,102*65536+25 - inc edx - mov esi,0x559beb - mcall - mov edx,103 - mov edi,8 - Table_row_7_loop1: - add ebx,26*65536 - inc edx - mcall - dec edi - jns Table_row_7_loop1 - - mov ebx,361*65536+25 - inc edx - mov esi,0x0f0c314 - mcall - mov edi,4 - table_row_7_loop2: - add ebx,26*65536 - inc edx - mcall - dec edi - jns table_row_7_loop2 - - row_1: - Cerium_: - mov ebx,102*65536+25 - mov ecx,190*65536+20 - mov edx,58 - mov esi,0x73beeb - mcall - mov edi,12 - - row_1_loop: - add ebx,26*65536 - inc edx - mcall - dec edi - jns row_1_loop - row_2: - dgfsfHe_: - mov ebx,102*65536+25 - mov ecx,211*65536+20 - mov edx,90 - mcall - mov edi,12 - row_2_loop: - - add ebx,26*65536 - inc edx - mcall - dec edi - jns row_2_loop - -text_on_buttons: - text_row1: - ;H - shr eax,1 - mov ebx,62*65536+43 - mov ecx,0x00000000 - mov edx,Symbols - mov esi,3 - mcall - ;Ne - mov ebx,500*65536+43 - add edx,3 - mcall - text_row2_1: - mov ebx,60*65536+63 - add edx,3 - mcall - - mov ebx,85*65536+63 - add edx,3 - mcall - text_row2_2: - mov ebx,374*65536+63 - add edx,3 - mcall - mov edi,4 - - text_row2_2_loop: - add ebx,25*65536 - add edx,3 - mcall - - dec edi - jns text_row2_2_loop - text_row3_1: - mov ebx,60*65536+83 - add edx,3 - mcall - - mov ebx,85*65536+83 - add edx,3 - mcall - text_row3_2: - mov ebx,374*65536+83 - add edx,3 - mcall - mov edi,4 - text_row3_2_loop: - add ebx,25*65536 - add edx,3 - mcall - - dec edi - jns text_row3_2_loop - text_row4: - mov ebx,60*65536+104 - add edx,3 - mcall - mov edi,16 - text_row4_loop: - add ebx,26*65536 - add edx,3 - mcall - - dec edi - jns text_row4_loop - text_row5: - mov ebx,60*65536+125 - add edx,3 - mcall - mov edi,16 - text_row5_loop: - add ebx,26*65536 - add edx,3 - mcall - - dec edi - jns text_row5_loop - text_row6: - mov ebx,60*65536+146 - add edx,3 - mcall - mov edi,16 - text_row6_loop: - add ebx,26*65536 - add edx,3 - mcall - dec edi - jns text_row6_loop - text_row7: - mov ebx,60*65536+167 - add edx,3 - mcall - mov edi,11 ;9 - text_row7_loop: - add ebx,26*65536 - add edx,3 - mcall - - dec edi - jns text_row7_loop - mov edi,4 - text_row7_loop2: - add ebx,26*65536 - add edx,3 - mcall - dec edi - jns text_row7_loop2 - - text_row8: - mov ebx,111*65536+197 - add edx,3 - mcall - mov edi,12 - - text_row8_loop: - add ebx,26*65536 - add edx,3 - mcall - - dec edi - jns text_row8_loop - - text_row9: - mov ebx,111*65536+217 - add edx,3 - mcall - mov edi,12 - - text_row9_loop: - add ebx,26*65536 - add edx,3 - mcall - - dec edi - jns text_row9_loop - -;; - короче выносим в отдельную процедуру - call draw_text -;; - - finish: - mov eax,12 ;end drawing - mov ebx,2 - mcall -ret - -draw_text: - - ; 1 вывод порядкового номера [optmzd-mem] - ; 2 вывод русского названия [optmzd-mem] - ; 3 вывод английского названия [optmzd-spd] - ; 4 вывод атомной массы [optmzd-spd] - ; 5 вывод плотность [optmzd-mem] - ; 6 вывод степень окисления [optmzd-mem] - ; 7 вывод электроотрицательности [optmzd-spd] - ; 8 вывод температура плавления [optmzd-mem] - ; 9 вывод температура кипения [optmzd-mem] - ;10 вывод распределение в земной коре [optmzd-mem] - ;11 вывод имён первооткрывателей [optmzd-mem] - -;; - закраска, что-бы не было наложения при прорисовке текста - mov eax,13 - mov ebx,320*65536+210 - mov ecx,255*65536+(15*11) - mov edx,[sc.work] - mcall -;; - - - push edi ; чтобы оптимизировать изменения ebx - - ; 1 вывод порядкового номера [optmzd-mem] - mov ebx,0x30000 ;выводить 3 цифры - mov ecx,[re_ID] - mov edx,320*65536+255 - xor esi,esi - mov eax,47 - mcall - -;ВНИМАНИЕ! ЗДЕСЬ ЗАДАЁТСЯ ЦВЕТ ВСЕГО ОСТАЛЬНОГО ТЕКСТА! [сделано для сокращения кода на 20 байт :)))] - mov ecx,[sc.work_text] ; ЦВЕТ - or ecx,0x80000000 ; asciiz - mov eax,4 ; эта функция вызывается 10 раз! так что запишем 1 раз - - ; 2 вывод РУССКОЕ НАЗВАНИЕ [optmzd-mem] - mov edi,Rus_nazv ;указатель на начало массива указателей ;) - mov ebx,320*65536+255 ;здесь вносятся координаты, дальше будет лишь add ebx,15 - call out_asciiz_item - - xor ecx,ecx ;color - ; 3 вывод английского названия [optmzd-spd] - mov edx,Elements - mov edi,[re_ID] - dec edi - mov esi,12 ;длина строки - imul edi,esi ;считаем указатель на нужную строку - add edx,edi - add ebx,15 ; увеличиваем y-координату текста на 15 пикселей - mcall - - ; 4 вывод атомной массы [optmzd-spd] - mov edx,MassNo - mov edi,[re_ID] - dec edi - mov esi,7 ;длина строки - imul edi,esi ;считаем указатель на нужную строку - add edx,edi - add ebx,15 - mcall - - mov ecx,0x80000000 ;asciiz, ЦВЕТ !!! - ; 5 вывод ПЛОТНОСТЬ [optmzd-mem] - mov edi,Plotnost - call out_asciiz_item - - ; 6 вывод СТЕПЕНЬ ОКИСЛЕНИЯ [optmzd-mem] - mov edi,Step_ok - call out_asciiz_item - - xor ecx,ecx ;color - ; 7 вывод ЭЛЕКТРООТРИЦАТЕЛЬНОСТЬ [optmzd-spd] - mov edx,Electr - mov edi,[re_ID] - dec edi - mov esi,4 ;длина строки - shl edi,2 - add edx,edi - add ebx,15 - mcall - - mov ecx,0x80000000 ;asciiz, ЦВЕТ !!! - ; 8 вывод ТЕМПЕРАТУРА ПЛАВЛЕНИЯ [optmzd-mem] - mov edi,T_plavl - call out_asciiz_item - - ; 9 вывод ТЕМПЕРАТУРА КИПЕНИЯ [optmzd-mem] - mov edi,T_kipen - call out_asciiz_item - - ;10 вывод РАСПРЕДЕЛЕНИЕ В ЗЕМНОЙ КОРЕ [optmzd-mem] - mov edi,Rasprostr - call out_asciiz_item - - ;11 вывод имён первооткрывателей [optmzd-mem] - mov edi,First_Explore - call out_asciiz_item - - pop edi ; он был сохранён в начале :) - ret - -;функция выполняет набор действий для вывода информации -out_asciiz_item: - mov edx,[re_ID] - dec edx - shl edx,2 ;умножить на 4 (размер указателя) - mov edx,[edx+edi] ;указатель на строку в edx - add ebx,15 - mcall -ret - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; ;; -;; ОБЛАСТЬ ДАННЫХ ;; -;; ;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;---- begin ---- Данные для ГЛАВНОГО окна -------------------------- -caption db 'Периодическая система Д.И.Менделеева by navanax & Johnny_B',0 -density db 'Плотность',0 -Atomic_massa db 'Атомная масса',0 -name db 'Название',0 -eng_name db 'Англ. название',0 -T_pl db 'Температура пл.',0 -T_kip db 'Температура кип.',0 -Electrootr db 'Электроотрицательность',0 -Raspr db 'Распределение в земн. коре',0 -Step_okisl db 'Степень окисления',0 -Otkrytie db 'Открытие',0 -number db 'Порядковый номер',0 -Period_text: - db ' I',0 - db ' II',0 - db 'III',0 - db ' IV',0 - db ' V',0 - db ' VI',0 - db 'VII',0 -Lantanoid_text db 'Лантаноиды',0 -Actinoid_text db ' Актиноиды',0 -;---- end ------ Данные для ГЛАВНОГО окна -------------------------- - - -;********************************************* -; БАЗА ДАННЫХ ПО ХИМИЧЕСКИМ ЭЛЕМЕНТАМ -;********************************************* -;определимся, что кол-во элементов = 116. Ни больше, ни меньше! -;Каждый массив должен содержать 116 элементов, -;чтобы не было выхода за его пределы - -;Английское название -Elements: ;116 элементов -db 'Hydrogen ' ; 1 -db 'Helium ' -db 'Lithium ' -db 'Beryllium ' -db 'Boron ' -db 'Carbon ' -db 'Nitrogen ' -db 'Oxygen ' -db 'Fluorine ' -db 'Neon ' -db 'Sodium ' -db 'Magnesium ' -db 'Aluminum ' -db 'Silicon ' -db 'Phosphorus ' -db 'Sulfur ' -db 'Chlorine ' -db 'Argon ' -db 'Potassium ' -db 'Calcium ' ;20 -db 'Scandium ' -db 'Titanium ' -db 'Vandium ' -db 'Chromium ' -db 'Manganese ' -db 'Iron ' -db 'Cobalt ' -db 'Nickel ' -db 'Copper ' -db 'Zinc ' ;30 -db 'Gallium ' -db 'Germanium ' -db 'Arsenic ' -db 'Selenium ' -db 'Bromine ' -db 'Krypton ' -db 'Rubidium ' -db 'Strontium ' -db 'Yttrium ' -db 'Zirconium ' -db 'Niobium ' -db 'Molybdenum ' -db 'Technetium ' -db 'Ruthenium ' -db 'Rhodium ' -db 'Palladium ' -db 'Silver ' -db 'Cadmium ' -db 'Indium ' -db 'Tin ' ;50 -db 'Antimony ' -db 'Tellurium ' -db 'Iodine ' -db 'Xenon ' -db 'Cesium ' -db 'Barium ' -db 'Lanthanum ' -db 'Cerium ' -db 'Praseodymium' -db 'Neodymium ' -db 'Promethium ' -db 'Samarium ' -db 'Europium ' -db 'Gadolinium ' -db 'Terbium ' -db 'Dysprosium ' -db 'Homium ' -db 'Erbium ' -db 'Thulium ' -db 'Ytterbium ' ;70 -db 'Lutetium ' -db 'Hafnium ' -db 'Tantalum ' -db 'Tungsten ' -db 'Rhenium ' -db 'Osmium ' -db 'Iridum ' -db 'Platinum ' -db 'Gold ' -db 'Mercury ' ;80 -db 'Thallium ' -db 'Lead ' -db 'Bismuth ' -db 'Polonium ' -db 'Astatine ' -db 'Radon ' -db 'Francium ' -db 'Radium ' -db 'Actinum ' -db 'Thorium ' ;90 -db 'Protactinium' -db 'Uranium ' -db 'Neptunium ' -db 'Plutonium ' -db 'Americium ' -db 'Curium ' -db 'Berkelium ' -db 'Californium ' -db 'Einsteinium ' -db 'Fermium ' ;100 -db 'Mendelevium ' -db 'Nobelium ' -db 'Lawrencium ' -db 'Reserfordium' -db 'Dubnium ' -db 'Siborgovium ' -db 'Boronium ' -db 'Hassium ' -db 'Meithnerium ' -db 'Darmstadtium' ;110 -db 'Roentgenium ' -db 'Copernicium ' -db 'Nihonium ' -db 'Flerovium ' -db 'Moscovium ' -db 'Livermorium ' ;116 -db 'Tennessine ' -db 'Oganesson ' - - -;--------------------------------- - -Symbols: ;116 элементов -db 'H ' -db 'He ' -db 'Li ' -db 'Be ' -db 'B ' -db 'C ' -db 'N ' -db 'O ' -db 'F ' -db 'Ne ' -db 'Na ' -db 'Mg ' -db 'Al ' -db 'Si ' -db 'P ' -db 'S ' -db 'Cl ' -db 'Ar ' -db 'K ' -db 'Ca ' -db 'Sc ' -db 'Ti ' -db 'V ' -db 'Cr ' -db 'Mn ' -db 'Fe ' -db 'Co ' -db 'Ni ' -db 'Cu ' -db 'Zn ' -db 'Ga ' -db 'Ge ' -db 'As ' -db 'Se ' -db 'Br ' -db 'Kr ' -db 'Rb ' -db 'Sr ' -db 'Y ' -db 'Zr ' -db 'Nb ' -db 'Mo ' -db 'Tc ' -db 'Ru ' -db 'Rh ' -db 'Pd ' -db 'Ag ' -db 'Cd ' -db 'In ' -db 'Sn ' -db 'Sb ' -db 'Te ' -db 'I ' -db 'Xe ' -db 'Cs ' -db 'Ba ' -db 'La ' -db 'Hf ' -db 'Ta ' -db 'W ' -db 'Re ' -db 'Os ' -db 'Ir ' -db 'Pt ' -db 'Au ' -db 'Hg ' -db 'Tl ' -db 'Pb ' -db 'Bi ' -db 'Po ' -db 'At ' -db 'Rn ' -db 'Fr ' -db 'Ra ' -db 'Ac ' -db 'Rf ' -db 'Db ' -db 'Sg ' -db 'Bh ' -db 'Hs ' -db 'Mt ' -db 'Ds ' -db 'Rg ' -db 'Cn ' -db 'Nh ' -db 'Fi ' -db 'Mc ' -db 'Lv ' -; -db 'Ts ' -db 'Og ' -; -db 'Ce ' -db 'Pr ' -db 'Nd ' -db 'Pm ' -db 'Sm ' -db 'Eu ' -db 'Gd ' -db 'Tb ' -db 'Dy ' -db 'Ho ' -db 'Er ' -db 'Tm ' -db 'Yb ' -db 'Lu ' -db 'Th ' -db 'Pa ' -db 'U ' -db 'Np ' -db 'Pu ' -db 'Am ' -db 'Cm ' -db 'Bk ' -db 'Cf ' -db 'Es ' -db 'Fm ' -db 'Md ' -db 'No ' -db 'Lr ' - -;АТОМНАЯ МАССА -MassNo: ;116 элементов -db '1.00794' ; 1 -db '4.0026 ' -db '6.941 ' -db '9.01218' -db '10.811 ' -db '12.0107' -db '14.0067' -db '15.9994' -db '18.9984' -db '20.179 ' ; 10 -db '22.9898' -db '24.305 ' -db '26.9815' -db '28.0855' -db '30.9738' -db '32.066 ' -db '35.453 ' -db '39.948 ' -db '39.0983' -db '40.078 ' ; 20 -db '44.9559' -db '47.88 ' -db '50.9415' -db '51.996 ' -db '54.938 ' -db '55.847 ' -db '58.9332' -db '58.6934' -db '63.546 ' -db '65.39 ' ; 30 -db '69.723 ' -db '72.61 ' -db '74.922 ' -db '78.96 ' -db '79.904 ' -db '83.80 ' -db '85.47 ' -db '87.62 ' -db '88.906 ' -db '91.224 ' ; 40 -db '92.906 ' -db '95.94 ' -db '(98) ' -db '101.07 ' -db '102.905' -db '106.42 ' -db '107.868' -db '112.41 ' -db '114.82 ' -db '118.71 ' ; 50 -db '121.75 ' -db '127.60 ' -db '126.90 ' -db '131.29 ' -db '132.90 ' -db '137.33 ' -db '138.91 ' -db '140.12 ' -db '140.91 ' -db '144.24 ' ; 60 -db '(147) ' -db '150.36 ' -db '151.96 ' -db '157.25 ' -db '158.92 ' -db '162.50 ' -db '164.93 ' -db '167.26 ' -db '168.93 ' -db '173.04 ' ; 70 -db '174.97 ' -db '178.49 ' -db '180.95 ' -db '183.85 ' -db '186.21 ' -db '190.2 ' -db '192.22 ' -db '195.08 ' -db '196.97 ' -db '200.59 ' ; 80 -db '204.38 ' -db '207.19 ' -db '208.98 ' -db '(209) ' -db '(210) ' -db '(222) ' -db '(223) ' -db '(226) ' -db '(227) ' -db '232.04 ' ; 90 -db '(231) ' -db '238.029' -db '(237) ' -db '(244) ' -db '(243) ' -db '(247) ' -db '(247) ' -db '(251) ' -db '(254) ' -db '(257) ' ; 100 -db '(258) ' -db '(259) ' -db '(262) ' ;103 -db '(261) ' -db '(262) ' -db '(266) ' -db '(264) ' -db '(269) ' -db '(268) ' -db '(271) ' ; 110 -db '(272) ' -db '(285) ' -db '(284) ' -db '(289) ' -db '(288) ' -db '(292) ' ;116 -; -db '294,210' -db '294,214' - - -;----------------------- - -;ЭЛЕКТРООТРИЦАТЕЛЬНОСТЬ -Electr: ; 116 элементов -db '2,1 ' ; 1 -db '5,5 ' -db '0,97' -db '1,47' -db '2,01' -db '2,50' -db '3,07' -db '3,50' -db '4,10' -db '4,84' ; 10 -db '0,93' -db '1,23' -db '1,47' -db '2,25' -db '2,32' -db '2,60' -db '2,83' -db '3,20' -db '0,91' -db '1,04' ; 20 -db '1,20' -db '1,32' -db '1,45' -db '1,56' -db '1,60' -db '1,64' -db '1,70' -db '1,75' -db '1,75' -db '1,66' ; 30 -db '1,82' -db '2,02' -db '2,11' -db '2,48' -db '2,74' -db '2,94' -db '0,89' -db '0,99' -db '1,11' -db '1,22' ;40 -db '1,6 ' -db '2,16' -db '1,9 ' -db '2.2 ' -db '2.28' -db '2,2 ' -db '1,93' -db '1,69' -db '1,78' -db '1,96' -db '2,05' -db '2,1 ' -db '2,66' -db '??? ' -db '0,79' -db '0,89' -db '1,1 ' -db '1,12' -db '1,13' -db '1,14' ;60 -db '1,13' -db '1,17' -db '1,2 ' -db '1,2 ' -db '1,2 ' -db '1,22' -db '1,23' -db '1,24' -db '1,25' -db '1,1 ' ; 70 -db '1,27' -db '1,3 ' -db '1,5 ' -db '1,36' -db '1,46' -db '1,52' -db '1,55' -db '1,44' -db '1,42' -db '1,42' ; 80 -db '1,42' -db '1,55' -db '1,67' -db '1,76' -db '1,90' -db '2,06' -db '0,86' -db '0,97' -db '1,00' -db '1,11' ;90 -db '1,14' -db '1,22' -db '1,22' -db '1,2 ' -db '1,1 ' -db '1,2 ' -db '1,1 ' -db '1,2 ' -db '??? ' -db '??? ' ; 100 -db '1,2 ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' ; 110 -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' -db '??? ' ; 116 -db '??? ' -dd '??? ' - - -;----------------------- - -;ТЕМПЕРАТУРА ПЛАВЛЕНИЯ 116 элементов -strtbl T_plavl, \ -"- 259,19", \ -"- 271,15", \ -"180,5", \ -"1287", \ -"2075", \ -"4000(графит)", \ -"-210,0", \ -"-218,7", \ -"-219,699", \ -"-248,6", \ -"97,83", \ -"648", \ -"660,37", \ -"1415", \ -"44,14(белый) 593(красный)", \ -"119,3", \ -"-101,03", \ -"-189,34", \ -"63,51", \ -"842", \ ;20 -"1541", \ -"1658", \ -"1920", \ -"1890", \ -"1245", \ -"1539", \ -"1494", \ -"1455", \ -"1084,5", \ -"419,5", \ -"29,78", \ -"937", \ -"817 (под давлением)", \ -"217", \ -"-7,25", \ -"-157,37", \ -"39,3", \ -"768", \ -"1528", \ -"1855", \ ;40 -"2470", \ -"2620", \ -"2250", \ -"2607", \ -"1963", \ -"1554", \ -"961,93", \ -"321,108", \ -"156,634", \ -"231,9681", \ -"630,74", \ -"449,8", \ -"113,5", \ -"-111,85", \ -"28,7", \ -"727", \ -"920", \ -"804", \ -"931", \ -"1024", \ ;60 -"1170", \ -"1072", \ -"826", \ -"1312", \ -"1356", \ -"1409", \ -"1470", \ -"1522", \ -"1545", \ -"824", \ -"1663", \ -"2230", \ -"3270", \ -"3660", \ -"3190", \ -"3027", \ -"2443", \ -"1772", \ -"1064,43", \ -"-38,862", \ ;80 -"303,6", \ -"327,502", \ -"271,44", \ -"254", \ -"575", \ -"-71,0", \ -"21", \ -"969", \ -"1050", \ -"1750", \ -"1580", \ -"1134", \ -"637", \ -"640", \ -"1292", \ -"1345", \ -"1050", \ -"900", \ -"860", \ -"???", \ ;100 -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ ;110 -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ ; 116 -"???", \ -"???" - - -;----------------------- - -;ТЕМПЕРАТУРА КИПЕНИЯ 116 элементов -strtbl T_kipen, \ -"- 252,87", \ -"- 268,935", \ -"1336,6", \ -"2471", \ -"3700", \ -"4200(графит)", \ -"-195,802", \ -"-182,962", \ -"-188,2", \ -"-246,048", \ -"886", \ -"1095", \ -"2500", \ -"3250", \ -"287,3 - белый ", \ -"444,674", \ -"-34,1", \ -"-185,86", \ -"760", \ -"1495", \ ;20 -"2850", \ -"3260", \ -"3450", \ -"2680", \ -"2080", \ -"3200", \ -"2960", \ -"2900", \ -"2540", \ -"906,2", \ -"2403", \ -"2850", \ -"-", \ -"685,3", \ -"59,82", \ -"153,35", \ -"696", \ -"1390", \ -"3320", \ -"4340", \ ;40 -"4927", \ -"4630", \ -"4630", \ -"4900", \ -"3700", \ -"2940", \ -"2170", \ -"766,5", \ -"2024", \ -"2620", \ -"1634", \ -"990", \ -"184,35", \ -"-108,12", \ -"667,6", \ -"1860", \ -"3450", \ -"3450", \ -"3510", \ -"3080", \ ;60 -"3000", \ -"1800", \ -"1440", \ -"3272", \ -"3073", \ -"2587", \ -"2707", \ -"2857", \ -"1947", \ -"1211", \ -"3412", \ -"4620", \ -"5425", \ -"6000", \ -"5900", \ -"5000", \ -"4380", \ -"3800", \ -"2947", \ -"356,66", \ ;80 -"1457", \ -"1745", \ -"1564", \ -"962", \ -"309", \ -"-61,9", \ -"669", \ -"1536", \ -"3300", \ -"4200", \ -"4500", \ -"4200", \ -"4100", \ -"3350", \ -"2880", \ -"3200", \ -"2630", \ -"1227", \ -"???", \ -"???", \ ;100 -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ ; 110 -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ -"???", \ ; 116 -"345 - 230", \ -"80 (+-30)" - - -;Русское название ; 116 элементов -strtbl Rus_nazv, \ -"Водород", \ ;1 -"Гелий", \ -"Литий", \ -"Бериллий", \ -"Бор", \ -"Углерод", \ -"Азот", \ -"Кислород", \ -"Фтор", \ -"Неон", \ ;10 -"Натрий", \ -"Магний", \ -"Алюминий", \ -"Кремний", \ -"Фосфор", \ -"Сера", \ -"Хлор", \ -"Аргон", \ -"Калий", \ -"Кальций", \ -"Скандий", \ -"Титан", \ -"Ванадий", \ -"Хром", \ -"Марганец", \ -"Железо", \ -"Кобальт", \ -"Никель", \ -"Медь", \ -"Цинк", \ ;30 -"Галлий", \ -"Германий", \ -"Мышьяк", \ -"Селен", \ -"Бром", \ -"Криптон", \ -"Рубидий", \ -"Стронций", \ -"Иттрий", \ -"Цирконий", \ -"Ниобий", \ -"Молибден", \ -"Технеций", \ -"Рутений", \ -"Родий", \ -"Палладий", \ -"Серебро", \ -"Кадмий", \ -"Индий", \ -"Олово", \ ;50 -"Сурьма", \ -"Теллур", \ -"Йод", \ -"Ксенон", \ -"Цезий", \ -"Барий", \ -"Лантан", \ -"Церий", \ -"Празеодим", \ -"Неодим", \ -"Прометий", \ -"Самарий", \ -"Европий", \ -"Гадолиний", \ -"Тербий", \ -"Диспрозий", \ -"Гольмий", \ -"Эрбий", \ -"Тулий", \ -"Иттербий", \ ;70 -"Лютеций", \ -"Гафний", \ -"Тантал", \ -"Вольфрам", \ -"Рений", \ -"Осмий", \ -"Иридий", \ -"Платина", \ -"Золото", \ -"Ртуть", \ -"Таллий", \ -"Свинец", \ -"Висмут", \ -"Полоний", \ -"Астат", \ -"Радон", \ -"Франций", \ -"Радий", \ -"Актиний", \ -"Торий",\ -"Протактиний",\ -"Уран",\ -"Нептуний", \ ;90 -"Плутоний", \ -"Америций", \ -"Кюрий", \ -"Берклий", \ -"Калифорний", \ -"Эйнштейний", \ -"Фермий", \ -"Менделевий", \ -"Нобелий", \ -"Лоуренсий", \ -"Резерфордий", \ -"Дубний", \ -"Сиборговий", \ -"Борий", \ -"Гассий", \ -"Мейтнерий", \ -"Дармштадтий", \ ;110 -"Рентгений", \ -"Коперниций", \ -"Нихоний", \ -"Флеровий", \ -"Московий", \ -"Ливерморий", \ ;116 -"Теннессин", \ -"Оганесон" - - -;Первооткрыватели ; 116 элементов -strtbl First_Explore, \ -"Г.Кавендиш, 1766", \ -"Ж.Жансен, Дж.Н.Локьер, 1868", \ -"А.Арфедсон, 1817", \ -"Л.Воклен, 1798", \ -"Л.Ж.Гей-Люссак 1808", \ -"известен до н.э.", \ -"Д.Резерфорд, 1772", \ -"К.В.Шееле, 1772", \ -"А.Муассан, 1886", \ -"У.Рамзай,М.Траверс 1898", \ -"Г.Дэви, 1807",\ -"Г.Дэви, 1808",\ -"Х.К.Эрстед, 1825",\ -"Ж.Л.Гей-Люссак, Л.Ж.Тенар, 1811",\ -"Х.Брандт, 1669",\ -"известна до н.э.",\ -"К.В.Шееле, 1774",\ -"У.Рамзай, Дж.Рэлей, 1894",\ -"Г.Дэви, 1807",\ -"Г.Дэви, 1808",\ -"Л.Ф.Нильсон, 1879",\ -"У.Грегор, 1790 ",\ -"Г.Роско, 1869",\ -"Л.Н.Воклен, 1797",\ -"Ю.Ган, 1774",\ -"известно до н.э.",\ -"Ю.Брандт, 1735",\ -"А.Кронштедт, 1751",\ -"известна до н.э.",\ -"известен со средн. веков",\ -"П.Э.Лекок де Буабодран, 1875",\ -"К.А.Винклер, 1886",\ -"известен со средн. веков",\ -"Й.Берцелиус, Й.Ган, 1817",\ -"Ж.Балар, 1826",\ -"У.Рамзай, М.Траверс, 1898",\ -"Р.Бунзен, Г.Кирхгоф, 1861",\ -"А.Крофорд, 1808",\ -"Ю.Гадолин, 1794",\ -"М.Клапрот, 1789",\ -"Ч.Хатчет, 1801",\ -"К.В.Шееле, 1778",\ -"Э.Сегре, К.Перье, 1937",\ -"К.К.Клаус, 1844",\ -"У.Волластон, 1804",\ -"У.Волластон, 1803",\ -"известно до н.э.",\ -"Ф.Штромейер, 1817",\ -"Р.Рейх, И.Рихтер, 1863",\ -"известно до н.э.",\ -"известна до н.э.",\ -"Ф.Мюллер, 1782",\ -"Б.Куртуа, 1811",\ -"У.Рамзай, М.Траверс, 1898",\ -"Р.Бунзен, Г.Кирхгоф, 1860",\ -"Г.Дэви, 1774",\ -"К.Мосандер, 1839",\ -"К.Мосандер, 1839",\ -"К.Ауэр фон Вельсбах, 1885",\ -"К.Ауэр фон Вельсбах, 1842",\ -"Л.Гленденин, Ч.Кориэлл и др., 1942",\ -"П.Э.Лекок де Буабодран, 1879",\ -"Э.Демарсе, 1901",\ -"Ж.Мариньяк, 1880",\ -"К.Мосандер, 1843",\ -"П.Э.Лекок де Буабодран, 1886",\ -"П.Клеве, 1879",\ -"К.Мосандер, 1843",\ -"П.Клеве, 1879",\ -"Ж.Мариньяк, 1878",\ -"Ж.Урбэн, Ч.Джеймс, 1907",\ -"Д.Костер и др., 1922",\ -"А.Г.Экеберг, 1802",\ -"К.В.Шееле, 1781",\ -"И. и В.Ноддак, О.Берг, 1925",\ -"С.Теннант, 1804",\ -"С.Теннант, 1804",\ -"изв. с древности",\ -"известно до н.э.",\ -"известна до н.э.",\ -"У.Крукс, 1861",\ -"известен до н.э.",\ -"И.Потт, 1739",\ -"М. и П.Кюри, 1898",\ -"Д.Корсон др., 1940",\ -"Э.Дорн, 1940",\ -"М.Перей, 1939",\ -"М. и П.Кюри, Ж.Бемюн, 1898",\ -"А.Дебьерн, 1899",\ -"Й.Берцелиус, 1828",\ -"О.Ган, Л.Мейтнер, Ф.Содди, 1918",\ -"М.Клапрот, 1789",\ -"Э.М.Макмиллан, Ф.Х.Эйблсон, 1940",\ -"Г.Сиборг и др., 1940",\ -"Г.Сиборг и др., 1944",\ -"Г.Сиборг и др., 1944",\ -"Г.Сиборг и др., 1949",\ -"Г.Сиборг и др., 1950",\ -"А.Гиорсо, С.Томпсон, 1952",\ -"А.Гиорсо, С.Томпсон, 1952",\ -"А.Гиорсо и др., 1955",\ -"Учёные СССР, 1966",\ -"А.Гиорсо и др., 1961",\ -"Г.Н.Флеров и др., 1964",\ -"Г.Н.Флеров и др., 1967",\ -"Г.Н.Флеров и др., 1974",\ -"P.Armbruster, G.Munzenber, 1981",\ -"P.Armbruster, G.Munzenber, 1984",\ -"P.Armbruster, G.Munzenber, 1982",\ -"S.Hofmann, V. Ninov, 1994",\ -"S.Hofmann, V. Ninov, 1994",\ -"S.Hofmann, V. Ninov, 1996",\ -"не открыт",\ -"Учёные России, 1998",\ -"не открыт",\ -"Ю.Ц.Оганессян, В.К.Утенков, 2000", \ -"ОИЯИ в г.Дубна", \ -"ОИЯИ и Ливерморская лаборатория" - - -; Плотность 116 элементов -strtbl Plotnost, \ -"-", \ ; 1 -"-", \ -"535", \ -"1848", \ -"2460", \ -"2267", \ -"-", \ -"-", \ -"-", \ -"0,90035 г/л", \ -"968", \ ; 10 -"1738", \ -"2700", \ -"2330", \ -"1823", \ -"1960", \ -"-", \ -"1,7837 г/л", \ -"856", \ -"1550", \ -"2985", \ ; 20 -"4507", \ -"6110", \ -"7140", \ -"7470", \ -"7874", \ -"8900", \ -"8908", \ -"8920", \ -"7140", \ -"5904", \ ; 30 -"5323", \ -"5727", \ -"4819", \ -"-", \ -"3,745 г/л", \ -"1532", \ -"2630", \ -"4472", \ -"6511", \ -"8570", \ ; 40 -"10280", \ -"11500", \ -"12370", \ -"12450", \ -"12023", \ -"10490", \ -"8650", \ -"7310", \ -"7310", \ -"6697", \ ; 50 -"6240", \ -"4940", \ -"5,851 г/л", \ -"1879", \ -"3510", \ -"6146", \ -"6689", \ -"6640", \ -"6800", \ -"7264", \ ; 60 -"7353", \ -"5244", \ -"7901", \ -"8219", \ -"8551", \ -"8795", \ -"9066", \ -"9321", \ -"6570", \ -"9841", \ ; 70 -"13310", \ -"16650", \ -"19250", \ -"21020", \ -"22610", \ -"22650", \ -"21090", \ -"19300", \ -"-", \ -"11850", \ ; 80 -"11340", \ -"9780", \ -"9196", \ -"-", \ -"9,73 г/л", \ -"2400", \ -"5000", \ -"10070", \ -"11724", \ -"15370", \ ; 90 -"19050", \ -"20450", \ -"19816", \ -"-", \ -"13510", \ -"14780", \ -"15100", \ -"-", \ -"-", \ -"-", \ ; 100 -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 110 -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 116 -"-", \ -"4,9 - 5,1 " - - -;РАСПРОСТРАНЕНИЕ В ЗЕМНОЙ КОРЕ 116 элементов -strtbl Rasprostr, \ -"0,14 %", \ ; 1 -"менее 0,0015 %", \ -"0,0030 %", \ -"0,0006 %", \ -"0,005 %", \ -"0,032 %", \ -"0,0046 %", \ -"46,60 %", \ -"0,070 %", \ -"0,00007 г/т", \ ; 10 -"2,83 %", \ -"2,09 %", \ -"8,13 %", \ -"27,72 %", \ -"0,118 %", \ -"0,052 %", \ -"0,020 %", \ -"0,000004 %", \ -"2,59 %", \ -"3,63 %", \ ; 20 -"0,001 %", \ -"0,57 %", \ -"0,0110 %", \ -"0,0200 %", \ -"0,100 %", \ -"5,00 %", \ -"0,0023 %", \ -"0,0080 %", \ -"0,0045 %", \ -"0,0065 %", \ ; 30 -"0,0015 %", \ -"0,00015 %", \ -"0,00017 %", \ -"0,000014 %", \ -"0,00016 %", \ -"0,000114 % (в атмосфере)", \ -"0,0120 %", \ -"???", \ -"0,0040 %", \ -"0,0160 %", \ ; 40 -"0,0024 %", \ -"0,0003 %", \ -"-", \ -"0,0000005 %", \ -"0.0000001 %", \ -"0,000001 %", \ -"0,000007 %", \ -"0,0000135 %", \ -"0,00001 %", \ -"0,008 %", \ -"0,00005 %", \ ; 50 -"0,000001 %", \ -"0,00004 %", \ -"0,000039 % (в атмосфере)", \ -"0,00037 %", \ -"0,040 %", \ -"0,0029 %", \ -"0,007 %", \ -"0,0007 %", \ -"0,0025 %", \ -"-", \ ; 60 -"0,0007 %", \ -"0,00013 %", \ -"0,00054 %", \ -"0,00043 %", \ -"0,0005 %", \ -"0,00013 %", \ -"0,00033 %", \ -"0,000027 %", \ -"0,000033 %", \ -"0,00008 %", \ ; 70 -"0,0003 - 0,0004 %", \ -"0,00025 %", \ -"0,0001 %", \ -"0,00000007 %", \ -"0,000005 %", \ -"0,0000001 %", \ -"0,0000005 %", \ -"0,00000043 %", \ -"0,000007 %", \ -"0,0003 %", \ ; 80 -"0,0015 %", \ -"0,00002 %", \ -"0,00000000000002 %", \ -"17 мг в слое коры 1,6 км", \ -"-", \ -"-", \ -"0,0000000001 %", \ -"0,0000000006 %", \ -"0,0008 %", \ -"-", \ ; 90 -"0,0003 %", \ -"-", \ -"-", \ -"0,0003 %", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 100 -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 110 -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 116 -"-", \ -"-" - - -; степень окисления 116 элементов -strtbl Step_ok, \ -"+1 -1", \ ; 1 -"-", \ -"+1", \ -"+2 (+1)", \ -"+3 (+2)", \ -"+4 -4", \ -"от +5 до -3 ", \ -"+4 -4", \ -"-1", \ -"-", \ ; 10 -"+1", \ -"+2 (+1)", \ -"+3 (+1 +2)", \ -"+1 +2 +3 +4", \ -"-3 +3 +5", \ -"-2 +4 +6", \ -"-1 +1 +3 +5 +7", \ -"-", \ -"+1", \ -"+2 (+1)", \ ; 20 -"+3 (+1 +2)", \ -"+4 +2 +3", \ -"от +2 до +5", \ -"+2 +3 +6 (+4 +5 +1)", \ -"от +2 до +7", \ -"+2 +3 (+1 +2 +4 +6 +8)", \ -"+2 +3 (+1 +4 +5)", \ -"+2 (+1 +3 +4)", \ -"+1 +2 (+3 +4)", \ -"+2", \ ; 30 -"+1 +3", \ -"+4 +3 +2 +1", \ -"+5 +3 -3", \ -"+6 +4 -2 (+2)", \ -"-1 +1 +3 +5 +7", \ -"+2", \ -"+1", \ -"+2 (+1)", \ -"+3", \ -"+4 (+1 +2 +3)", \ ; 40 -"+5 (+1 +2 +3 +4)", \ -"от +2 до +6", \ -"от -1 до +7", \ -"+3 +4 +6 +8", \ -"+1 +2 +3 +4 +5 +6", \ -"+1 +2 +3 +4 (+5 +6)", \ -"+1 +2 +3", \ -"+2 (+1)", \ -"+3 (+1)", \ -"+2 +4", \ ; 50 -"+3 +5 (-3)", \ -"-2 +6 +4 (+2)", \ -"-1 +1 +3 +5 +7", \ -"+2 +4 +6 +8", \ -"+1", \ -"+2 (+1)", \ -"+3", \ -"+3 (+4)", \ -"+4 +3 (+2)", \ -"+4 +3 (+2)", \ ; 60 -"+3", \ -"+2 +3 (+2)", \ -"+3 +2", \ -"+3 (+2 +1)", \ -"+1 +3 +4", \ -"+3 (+2 +4)", \ -"+3 (+2)", \ -"+3 (+1)", \ -"+3 +2 (+4)", \ -"+2 +3", \ ; 70 -"+3", \ -"+4 (+3 +2)", \ -"+5 (+2 +3 +4)", \ -"от +2 до +6", \ -"от +7 до -1", \ -"+4 +6 +8 +1 +3 +5", \ -"+4 +3 +1 +2 +6", \ -"+4 +3 +2 (+5 +6)", \ -"+1 +3 (+5)", \ -"+2 +1", \ ; 80 -"+1 +3", \ -"+1 +4 +2", \ -"+3 +5 -3 (+1 +2)", \ -"+6 +4 +2 -2", \ -"-1 +1 +5 (+7)", \ -"+2 +4 +6", \ -"+1", \ -"+2", \ -"+3", \ -"+4 (+2 +3)", \ ; 90 -"+4 +5 (+3)", \ -"от +2 до +6", \ -"+3 +4 +5 (+6 +7)", \ -"от +3 до +7", \ -"от +2 до +7", \ -"+3 (+4 +6)", \ -"+3 (+4)", \ -"+2 +3 (+4)", \ -"+2 +3", \ -"+2 +3", \ ; 100 -"+1 +2 +3", \ -"+2 +3", \ -"+3", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 110 -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ -"-", \ ; 116 -"-", \ -"-1, 0, +1, +2, +4, +6" -I_END: -sc system_colors \ No newline at end of file +; SPDX-License-Identifier: NOASSERTION +; + +; Text encoded as Code Page 866 - Cyrillic + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Dmitry Ivanovich Mendeleyev's +;; Periodic Table of Chemical Elements for KolibriOS +;; Authors: +;; navanax [violetlab+rambler.ru] +;; Johnny_B [john+kolibrios.org] + +;; macro for creating an array of pointers to ASCIIZ strings + +include '..\..\macros.inc' +macro strtbl name,[string] +{ + common + label name dword + forward + local lbl + dd lbl + forward + lbl db string,0 +} + +use32 + + org 0x0 + db 'MENUET01' ; standard 8-byte header for MeOS executables + dd 0x01 ; header version + dd START ; pointer to the start of the executable code + dd I_END ; image size + dd I_END+0x1000 ; required memory for the application + dd I_END+0x1000 ; pointer to the start of the stack + dd 0x0 , 0x0 ; I_Param , I_Icon + + +;GLOBAL VARIABLES AND CONSTANTS +re_ID dd 0x00000001 ;to store the number of the currently displayed element + + +START: + + mov eax,48 + mov ebx,3 + mov ecx,sc + mov edx,sizeof.system_colors + mcall + +red: + call draw_window + +still: ;main program loop + push 10 ;waiting for event + pop eax + mcall + + dec eax + je red + dec eax + jne button + +key: + mov al,2 + mcall + jmp still + +button: + mov al,17 ;get ID of the pressed button + mcall + shr eax,8 ; eax=24-bit ButtonID + + cmp eax,1 ; whether they are pressed "close" [x] + jne noclose + or eax,-1 + mcall + +noclose: + cmp eax,200 + jne no_H + mov eax,1 +no_H: + mov [re_ID],eax +;; + call draw_text +;; + jmp still + +draw_window: + + mov eax,12 ;begin drawing + xor ebx,ebx + inc ebx + mcall + ; DRAW WINDOW + xor eax,eax + mov ebx,50*65536+555 ;x + mov ecx,30*65536+455 ;y + mov edx,[sc.work] + or edx,0x34000000 ;style + mov edi,caption + mcall + +text_in_window: + mov eax,4 ;text output + mov ecx,0x80000000 ; asciiz, color !!! + + mov ebx,40*65536+200 ;lanthanide + mov edx,Lantanoid_text + mcall + + add ebx,20 ;actinide + mov edx,Actinoid_text + mcall + + mov ebx,150*65536+255 + mov edx,number + mcall + + add ebx,15 + mov edx,name + mcall + + add ebx,15 + mov edx,eng_name + mcall + + add ebx,15 + mov edx,Atomic_massa + mcall + + add ebx,15 + mov edx,density + mcall + + add ebx,15 + mov edx,Step_okisl + mcall + + add ebx,15 + mov edx,Electrootr + mcall + + add ebx,15 + mov edx,T_pl + mcall + + add ebx,15 + mov edx,T_kip + mcall + + add ebx,15 + mov edx,Raspr + mcall + + add ebx,15 + mov edx,Otkrytie + mcall + + ; The conclusion of the numbers + mov ebx,30*65536+43 + mov edx,Period_text ;1 + mcall + + call @f ;2 + call @f ;3 + call @f ;4 + call @f ;5 + call @f ;6 + call @f ;7 + jmp Table + + @@: + add ebx,20 + add edx,4 ;since the string = 4 bytes (with zero) + mcall + ret + +Table: ;Drawing a table in the form of buttons + table_row_1: + shl eax,1 + mov ebx,50*65536+25 + mov ecx,35*65536+20 + mov edx,200 + mov esi,0xE19123 + mcall + He_: + mov ebx,491*65536+25 + mov esi,0x0f0c314 + mov edx,2 + mcall + table_row_2: + Li: + mov ebx,50*65536+25 + mov ecx,56*65536+20 + mov esi,0xE19123 + inc edx + mcall + Be: + mov ebx,76*65536+25 + inc edx + mcall + B_: + mov ebx,361*65536+25 + inc edx + mov esi,0x0f0c314 + mcall + mov edi,4 + table_row_2_loop: + add ebx,26*65536 + inc edx + mcall + dec edi + jns table_row_2_loop + table_row_3: + Na: + mov ebx,50*65536+25 + mov ecx,77*65536+20 + mov esi,0xE19123 + inc edx + mcall + + mov ebx,76*65536+25 + inc edx + mcall + + mov ebx,361*65536+25 + inc edx + mov esi,0x0f0c314 + mcall + mov edi,4 + table_row_3_loop: + add ebx,26*65536 + inc edx + mcall + dec edi + jns table_row_3_loop + + Table_row_4: + K_: + mov ebx,50*65536+25 + mov ecx,98*65536+20 + mov esi,0xE19123 + inc edx + mcall + Ca: + mov ebx,76*65536+25 + inc edx + mcall + Sc: + mov ebx,102*65536+25 + inc edx + mov esi,0x559beb + mcall + mov edi,8 + Table_row_4_loop1: + add ebx,26*65536 + inc edx + mcall + dec edi + jns Table_row_4_loop1 + + mov ebx,361*65536+25 + inc edx + mov esi,0x0f0c314 + mcall + mov edi,4 + table_row_4_loop2: + add ebx,26*65536 + inc edx + mcall + dec edi + jns table_row_4_loop2 + + Table_row_5: + Rb_: + mov ebx,50*65536+25 + mov ecx,119*65536+20 + mov esi,0xE19123 + inc edx + mcall + Sr_: + mov ebx,76*65536+25 + inc edx + mcall + Y_: + mov ebx,102*65536+25 + inc edx + mov esi,0x559beb + mcall + mov edi,8 + Table_row_5_loop1: + add ebx,26*65536 + inc edx + mcall + dec edi + jns Table_row_5_loop1 + + mov ebx,361*65536+25 + inc edx + mov esi,0x0f0c314 + mcall + mov edi,4 + table_row_5_loop2: + add ebx,26*65536 + inc edx + mcall + dec edi + jns table_row_5_loop2 + + Table_row_6: + Cs_: + mov ebx,50*65536+25 + mov ecx,140*65536+20 + mov esi,0xE19123 + inc edx + mcall + Ba_: + mov ebx,76*65536+25 + inc edx + mcall + La_: + mov ebx,102*65536+25 + inc edx + mov esi,0x559beb + mcall + mov edx,71 + mov edi,8 + Table_row_6_loop1: + add ebx,26*65536 + inc edx + mcall + dec edi + jns Table_row_6_loop1 + + mov ebx,361*65536+25 + inc edx + mov esi,0x0f0c314 + mcall + mov edi,4 + table_row_6_loop2: + add ebx,26*65536 + inc edx + mcall + dec edi + jns table_row_6_loop2 + + Table_row_7: + Fr_: + mov ebx,50*65536+25 + mov ecx,161*65536+20 + mov esi,0xE19123 + inc edx + mcall + Ra_: + mov ebx,76*65536+25 + inc edx + mcall + Ac_: + mov ebx,102*65536+25 + inc edx + mov esi,0x559beb + mcall + mov edx,103 + mov edi,8 + Table_row_7_loop1: + add ebx,26*65536 + inc edx + mcall + dec edi + jns Table_row_7_loop1 + + mov ebx,361*65536+25 + inc edx + mov esi,0x0f0c314 + mcall + mov edi,4 + table_row_7_loop2: + add ebx,26*65536 + inc edx + mcall + dec edi + jns table_row_7_loop2 + + row_1: + Cerium_: + mov ebx,102*65536+25 + mov ecx,190*65536+20 + mov edx,58 + mov esi,0x73beeb + mcall + mov edi,12 + + row_1_loop: + add ebx,26*65536 + inc edx + mcall + dec edi + jns row_1_loop + row_2: + dgfsfHe_: + mov ebx,102*65536+25 + mov ecx,211*65536+20 + mov edx,90 + mcall + mov edi,12 + row_2_loop: + + add ebx,26*65536 + inc edx + mcall + dec edi + jns row_2_loop + +text_on_buttons: + text_row1: + ;H + shr eax,1 + mov ebx,62*65536+43 + mov ecx,0x00000000 + mov edx,Symbols + mov esi,3 + mcall + ;Ne + mov ebx,500*65536+43 + add edx,3 + mcall + text_row2_1: + mov ebx,60*65536+63 + add edx,3 + mcall + + mov ebx,85*65536+63 + add edx,3 + mcall + text_row2_2: + mov ebx,374*65536+63 + add edx,3 + mcall + mov edi,4 + + text_row2_2_loop: + add ebx,25*65536 + add edx,3 + mcall + + dec edi + jns text_row2_2_loop + text_row3_1: + mov ebx,60*65536+83 + add edx,3 + mcall + + mov ebx,85*65536+83 + add edx,3 + mcall + text_row3_2: + mov ebx,374*65536+83 + add edx,3 + mcall + mov edi,4 + text_row3_2_loop: + add ebx,25*65536 + add edx,3 + mcall + + dec edi + jns text_row3_2_loop + text_row4: + mov ebx,60*65536+104 + add edx,3 + mcall + mov edi,16 + text_row4_loop: + add ebx,26*65536 + add edx,3 + mcall + + dec edi + jns text_row4_loop + text_row5: + mov ebx,60*65536+125 + add edx,3 + mcall + mov edi,16 + text_row5_loop: + add ebx,26*65536 + add edx,3 + mcall + + dec edi + jns text_row5_loop + text_row6: + mov ebx,60*65536+146 + add edx,3 + mcall + mov edi,16 + text_row6_loop: + add ebx,26*65536 + add edx,3 + mcall + dec edi + jns text_row6_loop + text_row7: + mov ebx,60*65536+167 + add edx,3 + mcall + mov edi,11 ;9 + text_row7_loop: + add ebx,26*65536 + add edx,3 + mcall + + dec edi + jns text_row7_loop + mov edi,4 + text_row7_loop2: + add ebx,26*65536 + add edx,3 + mcall + dec edi + jns text_row7_loop2 + + text_row8: + mov ebx,111*65536+197 + add edx,3 + mcall + mov edi,12 + + text_row8_loop: + add ebx,26*65536 + add edx,3 + mcall + + dec edi + jns text_row8_loop + + text_row9: + mov ebx,111*65536+217 + add edx,3 + mcall + mov edi,12 + + text_row9_loop: + add ebx,26*65536 + add edx,3 + mcall + + dec edi + jns text_row9_loop + +;; - In short, we put it in a separate procedure + call draw_text +;; + + finish: + mov eax,12 ;end drawing + mov ebx,2 + mcall +ret + +draw_text: + ; 1 output serial number [optmzd-mem] + ; 2 output Russian name [optmzd-mem] + ; 3 output English name [optmzd-spd] + ; 4 output atomic mass [optmzd-spd] + ; 5 output density [optmzd-mem] + ; 6 output oxidation state [optmzd-mem] + ; 7 output electronegativity [optmzd-spd] + ; 8 output melting point [optmzd-mem] + ; 9 output boiling point [optmzd-mem] + ;10 output distribution in the Earth's crust [optmzd-mem] + ;11 output names of discoverers [optmzd-mem] + + +;; - coloring, so that there is no overlap when drawing text + mov eax,13 + mov ebx,320*65536+210 + mov ecx,255*65536+(15*11) + mov edx,[sc.work] + mcall +;; + + + push edi ;To optimize EBX changes + + ; 1 output serial number [optmzd-mem] + mov ebx,0x30000 ;Display 3 digits + mov ecx,[re_ID] + mov edx,320*65536+255 + xor esi,esi + mov eax,47 + mcall + +;ATTENTION! HERE IS THE COLOR OF ALL THE REST OF THE TEXT! [done to reduce the code by 20 bytes :)] + mov ecx,[sc.work_text] ; Color + or ecx,0x80000000 ; asciiz + mov eax,4 ; this function is called 10 times! so we will write 1 time + + ; 2 output Russian name [optmzd-mem] + mov edi,Rus_nazv ;pointer to the beginning of an array of signs ;) + mov ebx,320*65536+255 ;Coordinates are introduced here, then there will be only Add EBX, 15 + call out_asciiz_item + + xor ecx,ecx ;color + ; 3 output English name [optmzd-spd] + mov edx,Elements + mov edi,[re_ID] + dec edi + mov esi,12 ; The length of the line + imul edi,esi ; we consider the pointer to the desired line + add edx,edi + add ebx,15 ; We increase the text of the text by 15 pixels + mcall + + ; 4 output atomic mass [optmzd-spd] + mov edx,MassNo + mov edi,[re_ID] + dec edi + mov esi,7 ; The length of the line + imul edi,esi ; we consider the pointer to the desired line + add edx,edi + add ebx,15 + mcall + + mov ecx,0x80000000 ; asciiz, color !!! + ; 5 output density [optmzd-mem] + mov edi,Plotnost + call out_asciiz_item + + ; 6 output oxidation state [optmzd-mem] + mov edi,Step_ok + call out_asciiz_item + + xor ecx,ecx ;color + ; 7 output electronegativity [optmzd-spd] + mov edx,Electr + mov edi,[re_ID] + dec edi + mov esi,4 ;Line length + shl edi,2 + add edx,edi + add ebx,15 + mcall + + mov ecx,0x80000000 ;asciiz, color !!! + ; 8 output melting point [optmzd-mem] + mov edi,T_plavl + call out_asciiz_item + + ; 9 output boiling point [optmzd-mem] + mov edi,T_kipen + call out_asciiz_item + + ;10 output distribution in the Earth's crust [optmzd-mem] + mov edi,Rasprostr + call out_asciiz_item + + ;11 output names of discoverers [optmzd-mem] + mov edi,First_Explore + call out_asciiz_item + + pop edi ; He was preserved at the beginning :) + ret + +; the function performs a set of actions to display information +out_asciiz_item: + mov edx,[re_ID] + dec edx + shl edx,2 ;multiply by 4 (pointer size) + mov edx,[edx+edi] ;pointer to a string in edx + add ebx,15 + mcall +ret + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; ;; +;; Data area ;; +;; ;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;---- begin ---- Данные для ГЛАВНОГО окна -------------------------- +caption db 'Периодическая система Д.И.Менделеева by navanax & Johnny_B',0 +density db 'Плотность',0 +Atomic_massa db 'Атомная масса',0 +name db 'Название',0 +eng_name db 'Англ. название',0 +T_pl db 'Температура пл.',0 +T_kip db 'Температура кип.',0 +Electrootr db 'Электроотрицательность',0 +Raspr db 'Распределение в земн. коре',0 +Step_okisl db 'Степень окисления',0 +Otkrytie db 'Открытие',0 +number db 'Порядковый номер',0 +Period_text: + db ' I',0 + db ' II',0 + db 'III',0 + db ' IV',0 + db ' V',0 + db ' VI',0 + db 'VII',0 +Lantanoid_text db 'Лантаноиды',0 +Actinoid_text db ' Актиноиды',0 +;---- end ------ Данные для ГЛАВНОГО окна -------------------------- + + +;********************************************* +; БАЗА ДАННЫХ ПО ХИМИЧЕСКИМ ЭЛЕМЕНТАМ +;********************************************* +;определимся, что кол-во элементов = 116. Ни больше, ни меньше! +;Каждый массив должен содержать 116 элементов, +;чтобы не было выхода за его пределы + +;Английское название +Elements: ;116 элементов +db 'Hydrogen ' ; 1 +db 'Helium ' +db 'Lithium ' +db 'Beryllium ' +db 'Boron ' +db 'Carbon ' +db 'Nitrogen ' +db 'Oxygen ' +db 'Fluorine ' +db 'Neon ' +db 'Sodium ' +db 'Magnesium ' +db 'Aluminum ' +db 'Silicon ' +db 'Phosphorus ' +db 'Sulfur ' +db 'Chlorine ' +db 'Argon ' +db 'Potassium ' +db 'Calcium ' ;20 +db 'Scandium ' +db 'Titanium ' +db 'Vandium ' +db 'Chromium ' +db 'Manganese ' +db 'Iron ' +db 'Cobalt ' +db 'Nickel ' +db 'Copper ' +db 'Zinc ' ;30 +db 'Gallium ' +db 'Germanium ' +db 'Arsenic ' +db 'Selenium ' +db 'Bromine ' +db 'Krypton ' +db 'Rubidium ' +db 'Strontium ' +db 'Yttrium ' +db 'Zirconium ' +db 'Niobium ' +db 'Molybdenum ' +db 'Technetium ' +db 'Ruthenium ' +db 'Rhodium ' +db 'Palladium ' +db 'Silver ' +db 'Cadmium ' +db 'Indium ' +db 'Tin ' ;50 +db 'Antimony ' +db 'Tellurium ' +db 'Iodine ' +db 'Xenon ' +db 'Cesium ' +db 'Barium ' +db 'Lanthanum ' +db 'Cerium ' +db 'Praseodymium' +db 'Neodymium ' +db 'Promethium ' +db 'Samarium ' +db 'Europium ' +db 'Gadolinium ' +db 'Terbium ' +db 'Dysprosium ' +db 'Homium ' +db 'Erbium ' +db 'Thulium ' +db 'Ytterbium ' ;70 +db 'Lutetium ' +db 'Hafnium ' +db 'Tantalum ' +db 'Tungsten ' +db 'Rhenium ' +db 'Osmium ' +db 'Iridum ' +db 'Platinum ' +db 'Gold ' +db 'Mercury ' ;80 +db 'Thallium ' +db 'Lead ' +db 'Bismuth ' +db 'Polonium ' +db 'Astatine ' +db 'Radon ' +db 'Francium ' +db 'Radium ' +db 'Actinum ' +db 'Thorium ' ;90 +db 'Protactinium' +db 'Uranium ' +db 'Neptunium ' +db 'Plutonium ' +db 'Americium ' +db 'Curium ' +db 'Berkelium ' +db 'Californium ' +db 'Einsteinium ' +db 'Fermium ' ;100 +db 'Mendelevium ' +db 'Nobelium ' +db 'Lawrencium ' +db 'Reserfordium' +db 'Dubnium ' +db 'Siborgovium ' +db 'Boronium ' +db 'Hassium ' +db 'Meithnerium ' +db 'Darmstadtium' ;110 +db 'Roentgenium ' +db 'Copernicium ' +db 'Nihonium ' +db 'Flerovium ' +db 'Moscovium ' +db 'Livermorium ' ;116 +db 'Tennessine ' +db 'Oganesson ' + + +;--------------------------------- + +Symbols: ;116 элементов +db 'H ' +db 'He ' +db 'Li ' +db 'Be ' +db 'B ' +db 'C ' +db 'N ' +db 'O ' +db 'F ' +db 'Ne ' +db 'Na ' +db 'Mg ' +db 'Al ' +db 'Si ' +db 'P ' +db 'S ' +db 'Cl ' +db 'Ar ' +db 'K ' +db 'Ca ' +db 'Sc ' +db 'Ti ' +db 'V ' +db 'Cr ' +db 'Mn ' +db 'Fe ' +db 'Co ' +db 'Ni ' +db 'Cu ' +db 'Zn ' +db 'Ga ' +db 'Ge ' +db 'As ' +db 'Se ' +db 'Br ' +db 'Kr ' +db 'Rb ' +db 'Sr ' +db 'Y ' +db 'Zr ' +db 'Nb ' +db 'Mo ' +db 'Tc ' +db 'Ru ' +db 'Rh ' +db 'Pd ' +db 'Ag ' +db 'Cd ' +db 'In ' +db 'Sn ' +db 'Sb ' +db 'Te ' +db 'I ' +db 'Xe ' +db 'Cs ' +db 'Ba ' +db 'La ' +db 'Hf ' +db 'Ta ' +db 'W ' +db 'Re ' +db 'Os ' +db 'Ir ' +db 'Pt ' +db 'Au ' +db 'Hg ' +db 'Tl ' +db 'Pb ' +db 'Bi ' +db 'Po ' +db 'At ' +db 'Rn ' +db 'Fr ' +db 'Ra ' +db 'Ac ' +db 'Rf ' +db 'Db ' +db 'Sg ' +db 'Bh ' +db 'Hs ' +db 'Mt ' +db 'Ds ' +db 'Rg ' +db 'Cn ' +db 'Nh ' +db 'Fi ' +db 'Mc ' +db 'Lv ' +; +db 'Ts ' +db 'Og ' +; +db 'Ce ' +db 'Pr ' +db 'Nd ' +db 'Pm ' +db 'Sm ' +db 'Eu ' +db 'Gd ' +db 'Tb ' +db 'Dy ' +db 'Ho ' +db 'Er ' +db 'Tm ' +db 'Yb ' +db 'Lu ' +db 'Th ' +db 'Pa ' +db 'U ' +db 'Np ' +db 'Pu ' +db 'Am ' +db 'Cm ' +db 'Bk ' +db 'Cf ' +db 'Es ' +db 'Fm ' +db 'Md ' +db 'No ' +db 'Lr ' + +;АТОМНАЯ МАССА +MassNo: ;116 элементов +db '1.00794' ; 1 +db '4.0026 ' +db '6.941 ' +db '9.01218' +db '10.811 ' +db '12.0107' +db '14.0067' +db '15.9994' +db '18.9984' +db '20.179 ' ; 10 +db '22.9898' +db '24.305 ' +db '26.9815' +db '28.0855' +db '30.9738' +db '32.066 ' +db '35.453 ' +db '39.948 ' +db '39.0983' +db '40.078 ' ; 20 +db '44.9559' +db '47.88 ' +db '50.9415' +db '51.996 ' +db '54.938 ' +db '55.847 ' +db '58.9332' +db '58.6934' +db '63.546 ' +db '65.39 ' ; 30 +db '69.723 ' +db '72.61 ' +db '74.922 ' +db '78.96 ' +db '79.904 ' +db '83.80 ' +db '85.47 ' +db '87.62 ' +db '88.906 ' +db '91.224 ' ; 40 +db '92.906 ' +db '95.94 ' +db '(98) ' +db '101.07 ' +db '102.905' +db '106.42 ' +db '107.868' +db '112.41 ' +db '114.82 ' +db '118.71 ' ; 50 +db '121.75 ' +db '127.60 ' +db '126.90 ' +db '131.29 ' +db '132.90 ' +db '137.33 ' +db '138.91 ' +db '140.12 ' +db '140.91 ' +db '144.24 ' ; 60 +db '(147) ' +db '150.36 ' +db '151.96 ' +db '157.25 ' +db '158.92 ' +db '162.50 ' +db '164.93 ' +db '167.26 ' +db '168.93 ' +db '173.04 ' ; 70 +db '174.97 ' +db '178.49 ' +db '180.95 ' +db '183.85 ' +db '186.21 ' +db '190.2 ' +db '192.22 ' +db '195.08 ' +db '196.97 ' +db '200.59 ' ; 80 +db '204.38 ' +db '207.19 ' +db '208.98 ' +db '(209) ' +db '(210) ' +db '(222) ' +db '(223) ' +db '(226) ' +db '(227) ' +db '232.04 ' ; 90 +db '(231) ' +db '238.029' +db '(237) ' +db '(244) ' +db '(243) ' +db '(247) ' +db '(247) ' +db '(251) ' +db '(254) ' +db '(257) ' ; 100 +db '(258) ' +db '(259) ' +db '(262) ' ;103 +db '(261) ' +db '(262) ' +db '(266) ' +db '(264) ' +db '(269) ' +db '(268) ' +db '(271) ' ; 110 +db '(272) ' +db '(285) ' +db '(284) ' +db '(289) ' +db '(288) ' +db '(292) ' ;116 +; +db '294,210' +db '294,214' + + +;----------------------- + +;ЭЛЕКТРООТРИЦАТЕЛЬНОСТЬ +Electr: ; 116 элементов +db '2,1 ' ; 1 +db '5,5 ' +db '0,97' +db '1,47' +db '2,01' +db '2,50' +db '3,07' +db '3,50' +db '4,10' +db '4,84' ; 10 +db '0,93' +db '1,23' +db '1,47' +db '2,25' +db '2,32' +db '2,60' +db '2,83' +db '3,20' +db '0,91' +db '1,04' ; 20 +db '1,20' +db '1,32' +db '1,45' +db '1,56' +db '1,60' +db '1,64' +db '1,70' +db '1,75' +db '1,75' +db '1,66' ; 30 +db '1,82' +db '2,02' +db '2,11' +db '2,48' +db '2,74' +db '2,94' +db '0,89' +db '0,99' +db '1,11' +db '1,22' ;40 +db '1,6 ' +db '2,16' +db '1,9 ' +db '2.2 ' +db '2.28' +db '2,2 ' +db '1,93' +db '1,69' +db '1,78' +db '1,96' +db '2,05' +db '2,1 ' +db '2,66' +db '??? ' +db '0,79' +db '0,89' +db '1,1 ' +db '1,12' +db '1,13' +db '1,14' ;60 +db '1,13' +db '1,17' +db '1,2 ' +db '1,2 ' +db '1,2 ' +db '1,22' +db '1,23' +db '1,24' +db '1,25' +db '1,1 ' ; 70 +db '1,27' +db '1,3 ' +db '1,5 ' +db '1,36' +db '1,46' +db '1,52' +db '1,55' +db '1,44' +db '1,42' +db '1,42' ; 80 +db '1,42' +db '1,55' +db '1,67' +db '1,76' +db '1,90' +db '2,06' +db '0,86' +db '0,97' +db '1,00' +db '1,11' ;90 +db '1,14' +db '1,22' +db '1,22' +db '1,2 ' +db '1,1 ' +db '1,2 ' +db '1,1 ' +db '1,2 ' +db '??? ' +db '??? ' ; 100 +db '1,2 ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' ; 110 +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' +db '??? ' ; 116 +db '??? ' +dd '??? ' + + +;----------------------- + +;ТЕМПЕРАТУРА ПЛАВЛЕНИЯ 116 элементов +strtbl T_plavl, \ +"- 259,19", \ +"- 271,15", \ +"180,5", \ +"1287", \ +"2075", \ +"4000(графит)", \ +"-210,0", \ +"-218,7", \ +"-219,699", \ +"-248,6", \ +"97,83", \ +"648", \ +"660,37", \ +"1415", \ +"44,14(белый) 593(красный)", \ +"119,3", \ +"-101,03", \ +"-189,34", \ +"63,51", \ +"842", \ ;20 +"1541", \ +"1658", \ +"1920", \ +"1890", \ +"1245", \ +"1539", \ +"1494", \ +"1455", \ +"1084,5", \ +"419,5", \ +"29,78", \ +"937", \ +"817 (под давлением)", \ +"217", \ +"-7,25", \ +"-157,37", \ +"39,3", \ +"768", \ +"1528", \ +"1855", \ ;40 +"2470", \ +"2620", \ +"2250", \ +"2607", \ +"1963", \ +"1554", \ +"961,93", \ +"321,108", \ +"156,634", \ +"231,9681", \ +"630,74", \ +"449,8", \ +"113,5", \ +"-111,85", \ +"28,7", \ +"727", \ +"920", \ +"804", \ +"931", \ +"1024", \ ;60 +"1170", \ +"1072", \ +"826", \ +"1312", \ +"1356", \ +"1409", \ +"1470", \ +"1522", \ +"1545", \ +"824", \ +"1663", \ +"2230", \ +"3270", \ +"3660", \ +"3190", \ +"3027", \ +"2443", \ +"1772", \ +"1064,43", \ +"-38,862", \ ;80 +"303,6", \ +"327,502", \ +"271,44", \ +"254", \ +"575", \ +"-71,0", \ +"21", \ +"969", \ +"1050", \ +"1750", \ +"1580", \ +"1134", \ +"637", \ +"640", \ +"1292", \ +"1345", \ +"1050", \ +"900", \ +"860", \ +"???", \ ;100 +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ ;110 +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ ; 116 +"???", \ +"???" + + +;----------------------- + +;ТЕМПЕРАТУРА КИПЕНИЯ 116 элементов +strtbl T_kipen, \ +"- 252,87", \ +"- 268,935", \ +"1336,6", \ +"2471", \ +"3700", \ +"4200(графит)", \ +"-195,802", \ +"-182,962", \ +"-188,2", \ +"-246,048", \ +"886", \ +"1095", \ +"2500", \ +"3250", \ +"287,3 - белый ", \ +"444,674", \ +"-34,1", \ +"-185,86", \ +"760", \ +"1495", \ ;20 +"2850", \ +"3260", \ +"3450", \ +"2680", \ +"2080", \ +"3200", \ +"2960", \ +"2900", \ +"2540", \ +"906,2", \ +"2403", \ +"2850", \ +"-", \ +"685,3", \ +"59,82", \ +"153,35", \ +"696", \ +"1390", \ +"3320", \ +"4340", \ ;40 +"4927", \ +"4630", \ +"4630", \ +"4900", \ +"3700", \ +"2940", \ +"2170", \ +"766,5", \ +"2024", \ +"2620", \ +"1634", \ +"990", \ +"184,35", \ +"-108,12", \ +"667,6", \ +"1860", \ +"3450", \ +"3450", \ +"3510", \ +"3080", \ ;60 +"3000", \ +"1800", \ +"1440", \ +"3272", \ +"3073", \ +"2587", \ +"2707", \ +"2857", \ +"1947", \ +"1211", \ +"3412", \ +"4620", \ +"5425", \ +"6000", \ +"5900", \ +"5000", \ +"4380", \ +"3800", \ +"2947", \ +"356,66", \ ;80 +"1457", \ +"1745", \ +"1564", \ +"962", \ +"309", \ +"-61,9", \ +"669", \ +"1536", \ +"3300", \ +"4200", \ +"4500", \ +"4200", \ +"4100", \ +"3350", \ +"2880", \ +"3200", \ +"2630", \ +"1227", \ +"???", \ +"???", \ ;100 +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ ; 110 +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ +"???", \ ; 116 +"345 - 230", \ +"80 (+-30)" + + +;Русское название ; 116 элементов +strtbl Rus_nazv, \ +"Водород", \ ;1 +"Гелий", \ +"Литий", \ +"Бериллий", \ +"Бор", \ +"Углерод", \ +"Азот", \ +"Кислород", \ +"Фтор", \ +"Неон", \ ;10 +"Натрий", \ +"Магний", \ +"Алюминий", \ +"Кремний", \ +"Фосфор", \ +"Сера", \ +"Хлор", \ +"Аргон", \ +"Калий", \ +"Кальций", \ +"Скандий", \ +"Титан", \ +"Ванадий", \ +"Хром", \ +"Марганец", \ +"Железо", \ +"Кобальт", \ +"Никель", \ +"Медь", \ +"Цинк", \ ;30 +"Галлий", \ +"Германий", \ +"Мышьяк", \ +"Селен", \ +"Бром", \ +"Криптон", \ +"Рубидий", \ +"Стронций", \ +"Иттрий", \ +"Цирконий", \ +"Ниобий", \ +"Молибден", \ +"Технеций", \ +"Рутений", \ +"Родий", \ +"Палладий", \ +"Серебро", \ +"Кадмий", \ +"Индий", \ +"Олово", \ ;50 +"Сурьма", \ +"Теллур", \ +"Йод", \ +"Ксенон", \ +"Цезий", \ +"Барий", \ +"Лантан", \ +"Церий", \ +"Празеодим", \ +"Неодим", \ +"Прометий", \ +"Самарий", \ +"Европий", \ +"Гадолиний", \ +"Тербий", \ +"Диспрозий", \ +"Гольмий", \ +"Эрбий", \ +"Тулий", \ +"Иттербий", \ ;70 +"Лютеций", \ +"Гафний", \ +"Тантал", \ +"Вольфрам", \ +"Рений", \ +"Осмий", \ +"Иридий", \ +"Платина", \ +"Золото", \ +"Ртуть", \ +"Таллий", \ +"Свинец", \ +"Висмут", \ +"Полоний", \ +"Астат", \ +"Радон", \ +"Франций", \ +"Радий", \ +"Актиний", \ +"Торий",\ +"Протактиний",\ +"Уран",\ +"Нептуний", \ ;90 +"Плутоний", \ +"Америций", \ +"Кюрий", \ +"Берклий", \ +"Калифорний", \ +"Эйнштейний", \ +"Фермий", \ +"Менделевий", \ +"Нобелий", \ +"Лоуренсий", \ +"Резерфордий", \ +"Дубний", \ +"Сиборговий", \ +"Борий", \ +"Гассий", \ +"Мейтнерий", \ +"Дармштадтий", \ ;110 +"Рентгений", \ +"Коперниций", \ +"Нихоний", \ +"Флеровий", \ +"Московий", \ +"Ливерморий", \ ;116 +"Теннессин", \ +"Оганесон" + + +;Первооткрыватели ; 116 элементов +strtbl First_Explore, \ +"Г.Кавендиш, 1766", \ +"Ж.Жансен, Дж.Н.Локьер, 1868", \ +"А.Арфедсон, 1817", \ +"Л.Воклен, 1798", \ +"Л.Ж.Гей-Люссак 1808", \ +"известен до н.э.", \ +"Д.Резерфорд, 1772", \ +"К.В.Шееле, 1772", \ +"А.Муассан, 1886", \ +"У.Рамзай,М.Траверс 1898", \ +"Г.Дэви, 1807",\ +"Г.Дэви, 1808",\ +"Х.К.Эрстед, 1825",\ +"Ж.Л.Гей-Люссак, Л.Ж.Тенар, 1811",\ +"Х.Брандт, 1669",\ +"известна до н.э.",\ +"К.В.Шееле, 1774",\ +"У.Рамзай, Дж.Рэлей, 1894",\ +"Г.Дэви, 1807",\ +"Г.Дэви, 1808",\ +"Л.Ф.Нильсон, 1879",\ +"У.Грегор, 1790 ",\ +"Г.Роско, 1869",\ +"Л.Н.Воклен, 1797",\ +"Ю.Ган, 1774",\ +"известно до н.э.",\ +"Ю.Брандт, 1735",\ +"А.Кронштедт, 1751",\ +"известна до н.э.",\ +"известен со средн. веков",\ +"П.Э.Лекок де Буабодран, 1875",\ +"К.А.Винклер, 1886",\ +"известен со средн. веков",\ +"Й.Берцелиус, Й.Ган, 1817",\ +"Ж.Балар, 1826",\ +"У.Рамзай, М.Траверс, 1898",\ +"Р.Бунзен, Г.Кирхгоф, 1861",\ +"А.Крофорд, 1808",\ +"Ю.Гадолин, 1794",\ +"М.Клапрот, 1789",\ +"Ч.Хатчет, 1801",\ +"К.В.Шееле, 1778",\ +"Э.Сегре, К.Перье, 1937",\ +"К.К.Клаус, 1844",\ +"У.Волластон, 1804",\ +"У.Волластон, 1803",\ +"известно до н.э.",\ +"Ф.Штромейер, 1817",\ +"Р.Рейх, И.Рихтер, 1863",\ +"известно до н.э.",\ +"известна до н.э.",\ +"Ф.Мюллер, 1782",\ +"Б.Куртуа, 1811",\ +"У.Рамзай, М.Траверс, 1898",\ +"Р.Бунзен, Г.Кирхгоф, 1860",\ +"Г.Дэви, 1774",\ +"К.Мосандер, 1839",\ +"К.Мосандер, 1839",\ +"К.Ауэр фон Вельсбах, 1885",\ +"К.Ауэр фон Вельсбах, 1842",\ +"Л.Гленденин, Ч.Кориэлл и др., 1942",\ +"П.Э.Лекок де Буабодран, 1879",\ +"Э.Демарсе, 1901",\ +"Ж.Мариньяк, 1880",\ +"К.Мосандер, 1843",\ +"П.Э.Лекок де Буабодран, 1886",\ +"П.Клеве, 1879",\ +"К.Мосандер, 1843",\ +"П.Клеве, 1879",\ +"Ж.Мариньяк, 1878",\ +"Ж.Урбэн, Ч.Джеймс, 1907",\ +"Д.Костер и др., 1922",\ +"А.Г.Экеберг, 1802",\ +"К.В.Шееле, 1781",\ +"И. и В.Ноддак, О.Берг, 1925",\ +"С.Теннант, 1804",\ +"С.Теннант, 1804",\ +"изв. с древности",\ +"известно до н.э.",\ +"известна до н.э.",\ +"У.Крукс, 1861",\ +"известен до н.э.",\ +"И.Потт, 1739",\ +"М. и П.Кюри, 1898",\ +"Д.Корсон др., 1940",\ +"Э.Дорн, 1940",\ +"М.Перей, 1939",\ +"М. и П.Кюри, Ж.Бемюн, 1898",\ +"А.Дебьерн, 1899",\ +"Й.Берцелиус, 1828",\ +"О.Ган, Л.Мейтнер, Ф.Содди, 1918",\ +"М.Клапрот, 1789",\ +"Э.М.Макмиллан, Ф.Х.Эйблсон, 1940",\ +"Г.Сиборг и др., 1940",\ +"Г.Сиборг и др., 1944",\ +"Г.Сиборг и др., 1944",\ +"Г.Сиборг и др., 1949",\ +"Г.Сиборг и др., 1950",\ +"А.Гиорсо, С.Томпсон, 1952",\ +"А.Гиорсо, С.Томпсон, 1952",\ +"А.Гиорсо и др., 1955",\ +"Учёные СССР, 1966",\ +"А.Гиорсо и др., 1961",\ +"Г.Н.Флеров и др., 1964",\ +"Г.Н.Флеров и др., 1967",\ +"Г.Н.Флеров и др., 1974",\ +"P.Armbruster, G.Munzenber, 1981",\ +"P.Armbruster, G.Munzenber, 1984",\ +"P.Armbruster, G.Munzenber, 1982",\ +"S.Hofmann, V. Ninov, 1994",\ +"S.Hofmann, V. Ninov, 1994",\ +"S.Hofmann, V. Ninov, 1996",\ +"не открыт",\ +"Учёные России, 1998",\ +"не открыт",\ +"Ю.Ц.Оганессян, В.К.Утенков, 2000", \ +"ОИЯИ в г.Дубна", \ +"ОИЯИ и Ливерморская лаборатория" + + +; Плотность 116 элементов +strtbl Plotnost, \ +"-", \ ; 1 +"-", \ +"535", \ +"1848", \ +"2460", \ +"2267", \ +"-", \ +"-", \ +"-", \ +"0,90035 г/л", \ +"968", \ ; 10 +"1738", \ +"2700", \ +"2330", \ +"1823", \ +"1960", \ +"-", \ +"1,7837 г/л", \ +"856", \ +"1550", \ +"2985", \ ; 20 +"4507", \ +"6110", \ +"7140", \ +"7470", \ +"7874", \ +"8900", \ +"8908", \ +"8920", \ +"7140", \ +"5904", \ ; 30 +"5323", \ +"5727", \ +"4819", \ +"-", \ +"3,745 г/л", \ +"1532", \ +"2630", \ +"4472", \ +"6511", \ +"8570", \ ; 40 +"10280", \ +"11500", \ +"12370", \ +"12450", \ +"12023", \ +"10490", \ +"8650", \ +"7310", \ +"7310", \ +"6697", \ ; 50 +"6240", \ +"4940", \ +"5,851 г/л", \ +"1879", \ +"3510", \ +"6146", \ +"6689", \ +"6640", \ +"6800", \ +"7264", \ ; 60 +"7353", \ +"5244", \ +"7901", \ +"8219", \ +"8551", \ +"8795", \ +"9066", \ +"9321", \ +"6570", \ +"9841", \ ; 70 +"13310", \ +"16650", \ +"19250", \ +"21020", \ +"22610", \ +"22650", \ +"21090", \ +"19300", \ +"-", \ +"11850", \ ; 80 +"11340", \ +"9780", \ +"9196", \ +"-", \ +"9,73 г/л", \ +"2400", \ +"5000", \ +"10070", \ +"11724", \ +"15370", \ ; 90 +"19050", \ +"20450", \ +"19816", \ +"-", \ +"13510", \ +"14780", \ +"15100", \ +"-", \ +"-", \ +"-", \ ; 100 +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 110 +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 116 +"-", \ +"4,9 - 5,1 " + + +;РАСПРОСТРАНЕНИЕ В ЗЕМНОЙ КОРЕ 116 элементов +strtbl Rasprostr, \ +"0,14 %", \ ; 1 +"менее 0,0015 %", \ +"0,0030 %", \ +"0,0006 %", \ +"0,005 %", \ +"0,032 %", \ +"0,0046 %", \ +"46,60 %", \ +"0,070 %", \ +"0,00007 г/т", \ ; 10 +"2,83 %", \ +"2,09 %", \ +"8,13 %", \ +"27,72 %", \ +"0,118 %", \ +"0,052 %", \ +"0,020 %", \ +"0,000004 %", \ +"2,59 %", \ +"3,63 %", \ ; 20 +"0,001 %", \ +"0,57 %", \ +"0,0110 %", \ +"0,0200 %", \ +"0,100 %", \ +"5,00 %", \ +"0,0023 %", \ +"0,0080 %", \ +"0,0045 %", \ +"0,0065 %", \ ; 30 +"0,0015 %", \ +"0,00015 %", \ +"0,00017 %", \ +"0,000014 %", \ +"0,00016 %", \ +"0,000114 % (в атмосфере)", \ +"0,0120 %", \ +"???", \ +"0,0040 %", \ +"0,0160 %", \ ; 40 +"0,0024 %", \ +"0,0003 %", \ +"-", \ +"0,0000005 %", \ +"0.0000001 %", \ +"0,000001 %", \ +"0,000007 %", \ +"0,0000135 %", \ +"0,00001 %", \ +"0,008 %", \ +"0,00005 %", \ ; 50 +"0,000001 %", \ +"0,00004 %", \ +"0,000039 % (в атмосфере)", \ +"0,00037 %", \ +"0,040 %", \ +"0,0029 %", \ +"0,007 %", \ +"0,0007 %", \ +"0,0025 %", \ +"-", \ ; 60 +"0,0007 %", \ +"0,00013 %", \ +"0,00054 %", \ +"0,00043 %", \ +"0,0005 %", \ +"0,00013 %", \ +"0,00033 %", \ +"0,000027 %", \ +"0,000033 %", \ +"0,00008 %", \ ; 70 +"0,0003 - 0,0004 %", \ +"0,00025 %", \ +"0,0001 %", \ +"0,00000007 %", \ +"0,000005 %", \ +"0,0000001 %", \ +"0,0000005 %", \ +"0,00000043 %", \ +"0,000007 %", \ +"0,0003 %", \ ; 80 +"0,0015 %", \ +"0,00002 %", \ +"0,00000000000002 %", \ +"17 мг в слое коры 1,6 км", \ +"-", \ +"-", \ +"0,0000000001 %", \ +"0,0000000006 %", \ +"0,0008 %", \ +"-", \ ; 90 +"0,0003 %", \ +"-", \ +"-", \ +"0,0003 %", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 100 +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 110 +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 116 +"-", \ +"-" + + +; степень окисления 116 элементов +strtbl Step_ok, \ +"+1 -1", \ ; 1 +"-", \ +"+1", \ +"+2 (+1)", \ +"+3 (+2)", \ +"+4 -4", \ +"от +5 до -3 ", \ +"+4 -4", \ +"-1", \ +"-", \ ; 10 +"+1", \ +"+2 (+1)", \ +"+3 (+1 +2)", \ +"+1 +2 +3 +4", \ +"-3 +3 +5", \ +"-2 +4 +6", \ +"-1 +1 +3 +5 +7", \ +"-", \ +"+1", \ +"+2 (+1)", \ ; 20 +"+3 (+1 +2)", \ +"+4 +2 +3", \ +"от +2 до +5", \ +"+2 +3 +6 (+4 +5 +1)", \ +"от +2 до +7", \ +"+2 +3 (+1 +2 +4 +6 +8)", \ +"+2 +3 (+1 +4 +5)", \ +"+2 (+1 +3 +4)", \ +"+1 +2 (+3 +4)", \ +"+2", \ ; 30 +"+1 +3", \ +"+4 +3 +2 +1", \ +"+5 +3 -3", \ +"+6 +4 -2 (+2)", \ +"-1 +1 +3 +5 +7", \ +"+2", \ +"+1", \ +"+2 (+1)", \ +"+3", \ +"+4 (+1 +2 +3)", \ ; 40 +"+5 (+1 +2 +3 +4)", \ +"от +2 до +6", \ +"от -1 до +7", \ +"+3 +4 +6 +8", \ +"+1 +2 +3 +4 +5 +6", \ +"+1 +2 +3 +4 (+5 +6)", \ +"+1 +2 +3", \ +"+2 (+1)", \ +"+3 (+1)", \ +"+2 +4", \ ; 50 +"+3 +5 (-3)", \ +"-2 +6 +4 (+2)", \ +"-1 +1 +3 +5 +7", \ +"+2 +4 +6 +8", \ +"+1", \ +"+2 (+1)", \ +"+3", \ +"+3 (+4)", \ +"+4 +3 (+2)", \ +"+4 +3 (+2)", \ ; 60 +"+3", \ +"+2 +3 (+2)", \ +"+3 +2", \ +"+3 (+2 +1)", \ +"+1 +3 +4", \ +"+3 (+2 +4)", \ +"+3 (+2)", \ +"+3 (+1)", \ +"+3 +2 (+4)", \ +"+2 +3", \ ; 70 +"+3", \ +"+4 (+3 +2)", \ +"+5 (+2 +3 +4)", \ +"от +2 до +6", \ +"от +7 до -1", \ +"+4 +6 +8 +1 +3 +5", \ +"+4 +3 +1 +2 +6", \ +"+4 +3 +2 (+5 +6)", \ +"+1 +3 (+5)", \ +"+2 +1", \ ; 80 +"+1 +3", \ +"+1 +4 +2", \ +"+3 +5 -3 (+1 +2)", \ +"+6 +4 +2 -2", \ +"-1 +1 +5 (+7)", \ +"+2 +4 +6", \ +"+1", \ +"+2", \ +"+3", \ +"+4 (+2 +3)", \ ; 90 +"+4 +5 (+3)", \ +"от +2 до +6", \ +"+3 +4 +5 (+6 +7)", \ +"от +3 до +7", \ +"от +2 до +7", \ +"+3 (+4 +6)", \ +"+3 (+4)", \ +"+2 +3 (+4)", \ +"+2 +3", \ +"+2 +3", \ ; 100 +"+1 +2 +3", \ +"+2 +3", \ +"+3", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 110 +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ +"-", \ ; 116 +"-", \ +"-1, 0, +1, +2, +4, +6" +I_END: +sc system_colors diff --git a/programs/other/rtfread/trunk/Tupfile.lua b/programs/other/rtfread/Tupfile.lua similarity index 100% rename from programs/other/rtfread/trunk/Tupfile.lua rename to programs/other/rtfread/Tupfile.lua diff --git a/programs/other/rtfread/trunk/bgifont.inc b/programs/other/rtfread/bgifont.inc similarity index 100% rename from programs/other/rtfread/trunk/bgifont.inc rename to programs/other/rtfread/bgifont.inc diff --git a/programs/other/rtfread/trunk/build.sh b/programs/other/rtfread/build.sh similarity index 100% rename from programs/other/rtfread/trunk/build.sh rename to programs/other/rtfread/build.sh diff --git a/programs/other/rtfread/trunk/build_en.bat b/programs/other/rtfread/build_en.bat similarity index 100% rename from programs/other/rtfread/trunk/build_en.bat rename to programs/other/rtfread/build_en.bat diff --git a/programs/other/rtfread/trunk/build_ru.bat b/programs/other/rtfread/build_ru.bat similarity index 100% rename from programs/other/rtfread/trunk/build_ru.bat rename to programs/other/rtfread/build_ru.bat diff --git a/programs/other/rtfread/trunk/litt.chr b/programs/other/rtfread/litt.chr similarity index 100% rename from programs/other/rtfread/trunk/litt.chr rename to programs/other/rtfread/litt.chr diff --git a/programs/other/rtfread/trunk/reader.rtf b/programs/other/rtfread/reader.rtf similarity index 100% rename from programs/other/rtfread/trunk/reader.rtf rename to programs/other/rtfread/reader.rtf diff --git a/programs/other/rtfread/trunk/rtf_lite.inc b/programs/other/rtfread/rtf_lite.inc similarity index 100% rename from programs/other/rtfread/trunk/rtf_lite.inc rename to programs/other/rtfread/rtf_lite.inc diff --git a/programs/other/rtfread/trunk/rtfactn.inc b/programs/other/rtfread/rtfactn.inc similarity index 100% rename from programs/other/rtfread/trunk/rtfactn.inc rename to programs/other/rtfread/rtfactn.inc diff --git a/programs/other/rtfread/trunk/rtfread.asm b/programs/other/rtfread/rtfread.asm similarity index 98% rename from programs/other/rtfread/trunk/rtfread.asm rename to programs/other/rtfread/rtfread.asm index b13bc0bb5..35e9d00d4 100644 --- a/programs/other/rtfread/trunk/rtfread.asm +++ b/programs/other/rtfread/rtfread.asm @@ -1,3 +1,6 @@ +; SPDX-License-Identifier: NOASSERTION +; + ; RTF READER FOR KOLIBRI >= 0.7.7.0 ; Written in pure assembler by Ivushkin Andrey aka Willow ; Menu_bar and scroll_bar from box_lib provided by dunkaist @@ -57,15 +60,15 @@ AR_OFFSET equ 10 dd fname_buf ; адрес буфера для параметров dd cur_dir_path ; путь к программе -include '../../../config.inc' ;for nightbuild -include '../../../macros.inc' ; макросы облегчают жизнь ассемблерщиков! -include '../../../develop/libraries/box_lib/trunk/box_lib.mac' -include '../../../KOSfuncs.inc' -include '../../../load_lib.mac' +include '../../config.inc' ;for nightbuild +include '../../macros.inc' ; Macros facilitate the life of assemblers! +include '../../develop/libraries/box_lib/trunk/box_lib.mac' +include '../../KOSfuncs.inc' +include '../../load_lib.mac' @use_library -; include '../../../debug.inc' +; include '../../debug.inc' TOP=TOP+4 include 'bgifont.inc' @@ -242,10 +245,10 @@ key: ; .home: cmp ah,180 ; Home je top_red - + cmp dword[is_scroll_bar_needed], 0 je still - + mov ebx,dword[prcinfo+46] sub ebx,TOP+15 cmp ah,183 ;PgDn @@ -254,7 +257,7 @@ key: ; cmp dword[is_scroll_bar_needed], 0 je still - + mov eax, [scroll_bar_data_vertical.position] add eax, AR_OFFSET*7 mov ebx, [scroll_bar_data_vertical.max_area] @@ -273,7 +276,7 @@ key: ; cmp dword[is_scroll_bar_needed], 0 je still - + mov eax, [scroll_bar_data_vertical.position] add eax, AR_OFFSET mov ebx, [scroll_bar_data_vertical.max_area] @@ -299,7 +302,7 @@ key: ; cmp dword[is_scroll_bar_needed], 0 je still - + cmp dword[scroll_bar_data_vertical.position], AR_OFFSET*7 sub dword[scroll_bar_data_vertical.position], AR_OFFSET*7 jg @f @@ -314,7 +317,7 @@ key: ; cmp dword[is_scroll_bar_needed], 0 je still - + cmp dword[scroll_bar_data_vertical.position], AR_OFFSET sub dword[scroll_bar_data_vertical.position], AR_OFFSET jg @f @@ -337,7 +340,7 @@ key: ; cmp dword[is_scroll_bar_needed], 0 je still - + mov eax, [scroll_bar_data_vertical.max_area] sub eax, [scroll_bar_data_vertical.cur_area] mov dword[scroll_bar_data_vertical.position], eax @@ -350,7 +353,7 @@ key: ; ;--------------------------------------------------------------------- ;OpenDialog_start: ; copy_path open_dialog_name,path,library_path,0 - + push dword OpenDialog_data call [OpenDialog_Start] @@ -366,14 +369,14 @@ key: ; cmp ah, 1 ; если нажата кнопка с номером 1, je .exit jmp still - + .exit: mcall -1 ; иначе конец программы - + ;--------------------------------------------------------------------- ;--- MOUSE EVENT PROCESSING ---------------------------------------- -;--------------------------------------------------------------------- +;--------------------------------------------------------------------- mouse: mcall 37,7 test eax, eax @@ -454,9 +457,9 @@ mouse: push dword scroll_bar_data_vertical call [scrollbar_ver_mouse] - + call Set_position - + mov eax,scroll_bar_data_vertical.redraw xor ebx,ebx cmp [eax],ebx @@ -482,7 +485,7 @@ draw_window: @@: mov edx, -1 mov esi, -1 - + mov eax, [procinfo2.box.width] cmp eax, [window_width] je @f @@ -526,11 +529,11 @@ draw_window: sub ebx, SCROLL_WIDTH_SIZE dec ebx @@: - + mov ecx, 19*65536-23 add ecx, [procinfo2.box.height] sub ecx, [skin_height] - + mov eax, 13 mov edx, 0xf0f0f0 int 0x40 @@ -544,13 +547,13 @@ draw_window: ; draw for Vertical ScrollBar push dword scroll_bar_data_vertical call [scrollbar_ver_draw] -; reset all_redraw flag +; reset all_redraw flag xor eax,eax mov [scroll_bar_data_vertical.all_redraw],eax @@: ;--------------------------------------------- ;po-moumu eto govno mamonta - + ;mcall 47,0x30000,isymImplemented,<114,8>, 0x10DDEEFF ;add edx,36 shl 16 ;mcall ,,isymMax @@ -585,18 +588,18 @@ draw_window: ;--------------------------------------------- ; draw for Menu 1 push dword menu_data_1 - call [menu_bar_draw] + call [menu_bar_draw] ; draw for Menu 2 push dword menu_data_2 - call [menu_bar_draw] + call [menu_bar_draw] ; draw for Menu 3 push dword menu_data_3 - call [menu_bar_draw] + call [menu_bar_draw] ;--------------------------------------------- sub dword[prcinfo+42],2*LMARGIN+SCROLL_WIDTH_SIZE sub dword[prcinfo+46],CHARH+25 - + if GUTTER eq 1 mov ebx,LMARGIN shl 16+20 mov ecx,20 @@ -676,7 +679,7 @@ call Set_position ; draw for Vertical ScrollBar push dword scroll_bar_data_vertical call [scrollbar_ver_draw] -; reset all_redraw flag +; reset all_redraw flag xor eax,eax mov [scroll_bar_data_vertical.all_redraw],eax @@: @@ -712,10 +715,10 @@ Set_position: mov ebx, [scroll_bar_data_vertical.max_area] sub ebx, [scroll_bar_data_vertical.cur_area] div ebx - + mov dword[top], TOP sub dword[top], eax - + .quit: ret ;--------------------------------------------------------------------- @@ -728,7 +731,7 @@ Set_scroll_position: mov eax, dword[procinfo2+0x42] sub eax, 17 mov word[scroll_bar_data_vertical.size_y], ax - + ret ;--------------------------------------------------------------------- @@ -1049,7 +1052,7 @@ litt_end: help_file: file 'reader.rtf' help_end: - + I_END0: fname_buf: rb 1024+16 diff --git a/programs/other/rtfread/trunk/rtftype.inc b/programs/other/rtfread/rtftype.inc similarity index 100% rename from programs/other/rtfread/trunk/rtftype.inc rename to programs/other/rtfread/rtftype.inc