E-andrew , Pathoswithin , Ray и другие!
О-о-о-о, ребята !
Всем спасибо!
Почувствовал, что у нас будет, что-то получаться! Вот только правильный подход нужен, и он постепенно у нас наладился! Теперь я думаю правильно действовать так:
Я перевожу очередную «порцию функций», выкладываю, саму ту «порцию функций», а также выкладываю вложенный файл KOSfuncs.inc со всеми, наработанными «патрохами». Вы обсуждайте, предлагайте, комментируйте, это всё будет учтено, но не сразу же, или точнее выражаясь, будет исправлено не сразу же, а после полного завершения созданий имён всех функций, т. е. после обработки мной всего файла.
Ну вот. Вроде так должно, получаться, что-то эффективное у нас.
Окончательную правку будет делать скорее всего Pathoswithin , он на это согласился. Как по мне, то мне, всё равно кто её будет делать, только не я!...
Так как я не являюсь таким уж большим спецом, годным для окончательных утверждений и заключений!
Еще раз всем спасибо за участие и не безразличие.
=====================
Думаю правильно будет, если я файл с русским комментариями, пока «подвину» в сторону. А то, что делаю, буду «начинять» английскими комментариями. При большом желании, после всей обработки, создать версию с русскими комментариями, думаю не составит труда.
Все что не скомпилирует FASM будет закоментировано, вот так «;!!!!» , с припиской ошибки которую выдаёт FASM вот пример:
;!!!!PAUSE=5 ; — пауза.
;!!!! error: reserved word used as symbol.
Обращайте особое внимание на подобные строки.
==============================
Вот, добавил:
Spoiler:
Code: Select all
CREATE_WINDOW=0 ; - define and draw the window
PUT_PEXEL=1 ; - put pixel in the window
GET_KEY=2 ; - get the code of the pressed key
GET_SYS_TIME=3 ; - get system time
DRAW_TEXT=4 ; - draw text string
;!!!!PAUSE=5 ; — delay
;!!!! error: reserved word used as symbol.
OLD_READ_FILE_RD=6 ; - read the file from ramdisk
PUT_IMAGE=7 ; - draw image in the window
DEFINE_BUTTON=8 ; - define/delete the button
PROCESS_INFO=9 ; - information on execution thread
WAIT_EVENT=10 ; - wait for event
CHECK_EVENT=11 ; - check for event, no wait
WINDOW_REDRAW=12;;!!!!! Function 12 - begin/end window redraw
.BEGIN_DRAW_WINDOW=1 ; Subfunction 1 - begin window redraw
.END_DRAW_WINDOW = 2 ; Subfunction 2 - end window redraw
DRAW_RECT=13 ; - draw a rectangle in the window
GET_SCREEN_SIZE=14 ; - get screen size
; Function 15, subfunction 1 - set a size of the background image
BACKGROUND=15 ; background image
.SET_SIZE=1 ; subfunction 1 - set a size of the background image
.PUT_PIXEL=2 ; subfunction 2 - put pixel on the background image
.REFRESH=3 ; subfunction 3 - redraw background
.SET_MODE=4 ;subfunction 4 - set drawing mode for the background
.PUT_IMAGE=5 ; subfunction 5 - Put block of pixels on the background image.
.MAP=6 ; subfunction 6 - Map background data to the address space of process
.UNMAP=7 ; subfunction 7 - close mapped background data.
.LAST_DRAW=8;subfunction 8 - Get coordinates of last draw the background
.REDRAWS_RECTANG=9 ;subfunction 9 - Redraws a rectangular part of the background
RD_TO_FLOPPY=16 ; - save ramdisk on a floppy
GET_BUTTIN=17 ; - get the identifier of the pressed button
SYSTEM=18 ; Function 18
.DEACTIVATE_WINDOW=1 ; subfunction 1 - Make deactive the window of the given thread.
.TERMINATE_THREAD=2 ; subfunction 2 - terminate process/thread by the slot.
.ACTIVATE_WINDOW=3 ; subfunction 3 - Make active the window of the given thread
.GET_IDLE_COUNT=4 ; subfunction 4 - Get counter of idle time units per one second.
.GET_CPU_REQUENCY=5 ; subfunction 5 - get CPU clock rate.
.RD_TO_HDD=6 ; subfunction 6 - save ramdisk to the file on hard drive
.GET_ACTIVE_WINDOW=7 ; subfunction 7 - get active window
.SPEAKER =8 ; Function 18, subfunction 8
.SPEAKER_STATE=1 ; Subsubfunction 1 - get status
.SPEAKER_TOGGLE=2 ; Subsubfunction 2 - toggle status.
.SHUTDOWN_SYS_PARAM=9 ; subfunction 9 - system shutdown with the parameter.
.WINDOW_MINIMIZE=10 ; subfunction 10 - minimize topmost window
.INFO_DISC_SYS=11 ; subfunction 11 - get information on the disk subsystem
.KERNEL_VERSION=13 ; subfunction 13 - get kernel version.
.WAIT_RETRACE=14 ; subfunction 14 - wait for screen retrace
.CURSOR_RESET=15 ; subfunction 15 - center mouse cursor on the screen
.GET_FREE_RAM=16 ; subfunction 16 - get size of free RAM
.GET_TOTAL_RAM=17 ; subfunction 17 - get full amount of RAM
.TERMINATE_THREAD_ID=18 ; subfunction 18 Terminate process/thread by the identifier. ============
;======== Function 18, subfunction 19 - get/set mouse features. =======
.GET_MOUSE_SPEED=0 ; Subsubfunction 0 - get mouse speed.
.SET_MOUSE_SPEED=1 ; Subsubfunction 1 - set mouse speed.
.GET_MOUSE_ACCELARAT=2 ; Subsubfunction 2 - get mouse acceleration
.SET_MOUSE_ACCELARAT=3 ; Subsubfunction 3 - set mouse acceleration
.SET_MOUSE_POS=4 ; Subsubfunction 4 - set mouse pointer position
.SIMUL_MOUSE_KEY=5 ; Subsubfunction 5 - simulate state of mouse buttons
.GET_DOUBLE_CLICK_DELAY=6 ; Subsubfunction 6 - get doubleclick delay. -------------
.SET_DOUBLE_CLICK_DELAY=7 ;Subsubfunction 7 - set doubleclick delay.
.GET_INFO_RAM =20 ; ;subfunction 20 - get information on RAM.
.GET_NUMBER_PROCESS_THREAD=21 ; subfunction 21 - Get slot number of process/thread by the identifier.
;!!!!. !!!!!!! ???? ; subfunction 22 - Operations with window of another thread
.MINIMIZE_ALL_WINDOW=23 ;subfunction 23 - minimize all windows
.SET_LIMIT_SCREEN=24 ; subfunction 24 - set limits of screen
.CONTROL_POS_WINDOW=25 ;subfunction 25- Control position of the window relative to other windows.
.GET_POS=1 ; Subsubfunction 1 - get position
.SET_POS=2 ;Subsubfunction 2 - set position
MIDI=20 ;==================== Function 20 - MIDI interface. ===================
.RESET=1; Subfunction 1 - reset
.OUTPUT=2 ;Subfunction 2 - output byte
MPU_MIDI_BASE_PORT=21;
.SET_MPU_MIDI_BASE_PORT=1 ;subfunction 1 - set MPU MIDI base port
.SET_KEYBOARD_LAYOR=2 ;subfunction 2 - set keyboard layout.
.SET_SYS_LANG=5 ; subfunction 5 - set system language
.LOW_LEVEL_ACCESS_HD=11 ; subfunction 11 - enable/disable low-level access to HD.
.LOW_LEVEL_ACCESS_PCI=12 ;subfunction 12 - enable/disable low-level access to PCI.
SET_SYS_DATE_TIME=22 ; - set system date/time
WAIT_EVENT_TIMEOUT=23 ; ; - wait for event with timeout.
;Function 24
EJECT_TRAY_DISC=4; subfunction 4 - eject tray of disk drive.
LOAD_TRAY_DISK=5; subfunction 5 - load tray of disk drive.
PUT_IMAGE_AREA_BACKGROUNG=25 ; - put image area on the background layer
Пока хватит! А, то что-то у меня мозги «зашиваются» от Subsubfunction . Проверяйте внимательно и всё абсолютно, - имя, номер, комментарий к нему и т. д. Особенно функции с subfunction и subsubfunction.
В дальнейшем, первые 10,20, ... функций, я публиковать в сообщении не буду!
Абсолютно всё будет в прикреплённом к сообщению, файле KOSfuncs.inc
Кстати, 7z-пить или RAR-ить его нужно ? или пусть так ?