"Ночные" сборки KolibriOS
-
А пофиксить sound.asm, как я предлагал, не пробовали ? Я свежий ати готовлю, но если никто не возьмётся, я займусь.
Исправил sound.asm, теперь ядро не зависает при перезапуске.
Так и было задумано. Если нет активных звуковых потоков, микшер выводит тишину.CleverMouse wrote:... ни при остановке проигрывания ac97snd
А по коду и не скажешь.Serge wrote:Исправил sound.asm, теперь ядро не зависает при перезапуске.
Сделаем мир лучше!
Старею, наверное. Не выходит цветок каменный.
Похоже, изменения в libimg.obj сломали работу игры "Гробница фараона". Теперь игра не запускается, только выводит на доску строку:
Проверял на ревизии 3827
Code: Select all
Required exports were not found in libimg.obj
Не знал где спросить. То, что у верхнего ряда цифровых клавиш и функционального ряда совпадают ASCII-коды, это только в KolibriOS так определяет, или так на самом деле и есть?
to infinity and beyond
Они совпадают в режиме получения данных в ASCII кодов. Если получать SCAN-коды, то у 1,2,3 и F1,F2,F3 разные коды.
Плюсы ASCII режима: Ctrl+A - это один код. В SCAN режиме нужно проверять отдельно не зажат ли Ctrl и нажата клавиша А.
Функция для переключения в SCAN режим есть в kolibri.h.
В главном меню Колибри "Разработка" есть ссылки на программы для получения нужных кодов от кнопок клавиатуры.
Плюсы ASCII режима: Ctrl+A - это один код. В SCAN режиме нужно проверять отдельно не зажат ли Ctrl и нажата клавиша А.
Функция для переключения в SCAN режим есть в kolibri.h.
В главном меню Колибри "Разработка" есть ссылки на программы для получения нужных кодов от кнопок клавиатуры.
Из хаоса в космос
Структура дистрибутива нелогична, возможно, баг в скрипте сборки.
Скачал latest-distr.7z от 10 авг 2013.
1. В архиве папка /games (которую неплохо бы переместить в папку /kolibrios)
2. В папке /games ещё одна папка games
3. Там же бинарник /games/soko, в то время как испольняемые файлы в /games/games/soko
Скачал latest-distr.7z от 10 авг 2013.
1. В архиве папка /games (которую неплохо бы переместить в папку /kolibrios)
2. В папке /games ещё одна папка games
3. Там же бинарник /games/soko, в то время как испольняемые файлы в /games/games/soko
Из хаоса в космос
Spoiler:
Spoiler:
Code: Select all
ORG 0
BITS 32
; ======================================================================= ;
STACK_SIZE equ 256
; ======================================================================= ;
MENUET01 db 'MENUET01'
version dd 1
program.start dd start_
program.end dd end_
program.memory dd end_ + STACK_SIZE
program.stack dd end_ + STACK_SIZE
program.params dd 0
program.path dd 0
; ======================================================================= ;
start_:
mov ecx, 100
; ======================================================================= ;
.loop:
push sz_SS
push sz_empty
call file.run
loop .loop
; exit:
or eax, -1
int 64
; ======================================================================= ;
file.run:
mov eax, [esp + 8]
mov edx, [esp + 4]
mov ebx, .file_info
mov [.file_path], eax
mov [.params], edx
mov eax, 70
int 64
ret 8
.file_info:
dd 7
dd 0
.params:
dd 0
dd 0
dd 0
db 0
.file_path:
dd 0
; ======================================================================= ;
sz_empty db 0
sz_SS db "/sys/@ss",0
; ======================================================================= ;
end_:
VirtualBox(svn3907)
Qemu(svn3903)
Bochs(svn3907)
Уже готовый бинарник:
It's called a fork bomb, and there is no need to make it so complicated.0CodErr wrote:Запустить 2 раза полученное приложение.
VirtualBox(svn3907)
Qemu(svn3903)
Bochs(svn3907)
Here's my implementation from 2006:
Spoiler:
Code: Select all
;
; FORKBOMB
;
; http://en.wikipedia.org/wiki/Fork_bomb
;
; For Educational Purposes only
;
; Compile with FASM for Menuet
;
use32
org 0x0
db 'MENUET01' ; 8 byte id
dd 1 ; header version
dd START ; start of code
dd I_END ; size of image
dd (I_END-START)*256 ; memory for app
dd (I_END-START)*256 ; esp
dd 0x0 , 0x0 ; I_Param , I_Icon
include 'macros.inc'
START: ; start of execution
mov eax,40
xor ebx,ebx
int 0x40
mov edx,I_END
inc ebx
mov ecx,START
@@:
mov al,51
int 0x40
add edx,I_END-START
jmp @b
I_END:
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
0CodErr
А аппаратное ограничение на 256 потоков тебя не смущает?![Smile :)](./images/smilies/icon_smile.gif)
А аппаратное ограничение на 256 потоков тебя не смущает?
![Smile :)](./images/smilies/icon_smile.gif)
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Нет, конечноMario_r4 wrote:0CodErr
А аппаратное ограничение на 256 потоков тебя не смущает?
![Smile :)](./images/smilies/icon_smile.gif)
В svn3273 такое не происходит. Я там насчитал 254 потока вместе с OS/IDLE. И в svn3907 тоже максимум 254.
My code is not a fork bomb, because if I kill processes, the new does not continue to launch.hidnplayr wrote:It's called a fork bomb,
OK, I think you are right0CodErr wrote:My code is not a fork bomb, because if I kill processes, the new does not continue to launch.
![Smile :)](./images/smilies/icon_smile.gif)
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
Проблемная ревизия 3727, в ревизии 3726 все работало в штатном режиме.0CodErr wrote:Этот эффект получился от такого кода:Spoiler:
Upd. Исправлено в р.3925.
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
Who is online
Users browsing this forum: No registered users and 1 guest