Page 30 of 77

Re: Помогите новичку

Posted: Sat Apr 28, 2012 7:33 pm
by Mario
int 20h
В Колибри не работает.
А вообще что мешает попробовать скомпилировать и запустить?

Re: Помогите новичку

Posted: Sat Apr 28, 2012 7:39 pm
by SoUrcerer

Code: Select all

mov ax,c0 ;помещаем _адрес_ данных в ах
Не сработает, я думаю. Ассемблер 32-битный, а не 16-битный.

Code: Select all

mov eax, c0
...

add eax,1 ;может, лучше так, чем mov ax,ax+1?


Re: Помогите новичку

Posted: Sat Apr 28, 2012 7:42 pm
by Scampada
mario,
Совершенно верное замечание, просто в любом случае высока вероятность, что мне придется приходить сюда и спрашивать немного по-другому: "Пытался сделать вот так, почему оно не работает?" :mrgreen:

SoUrcerer,
add eax,1 ;может, лучше так, чем mov ax,ax+1?
Да сто пудов лучше, я просто еще не помню наизусть всех инструкций. :wink: помнил, что должно быть что-то типа "inc" или "add", но неточно.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 9:24 pm
by Scampada
Spoiler:Image

Image
Ругается на строку
mov [eax],1
в чем я туплю? :?:

PS длч пробы переделываю пример из SDK во избежание других ошибок...

Re: Помогите новичку

Posted: Sat Apr 28, 2012 9:40 pm
by Mario
Ругается как? Одного сообщения о ругани для определения причины недостаточно. Обычно FASM вполне внятно указывает на грубые синтаксические ошибки.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 9:45 pm
by Scampada
А я по-тупому пытаюсь компилировать в Tinypad :D Он просто мигает курсором и не запускает.
Сейчас попробую в fasm.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 9:51 pm
by Mario
Не обязательно компилировать непосредственно в FASM - всего то и нужно запустить BOARD (доска отладки) и смотреть на что ругается там.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:08 pm
by Scampada
Ну, я пытался запускать подпункт "Доска отладки" прямо в Тайнипэд, в пункте меню "Компиляция", но ничего не происходит, ничего не запускается.
Так что...
Spoiler:Image
Я просто забыл определить размер. :)
mov byte [eax],1, скорее всего, даст нужный результат. :)

Почему "скорее всего" - потому что Колибри гружу с образа дискеты на флешке и сразу проверить не могу. Основная система Ubuntu, и с виртуальными машинами я практического опыта работы не имею (тем более с эмуляцией таких нестандартных ОС), так что каждый раз просто перезагружаюсь. :?
всего то и нужно запустить BOARD
А, ясно. В следующий раз посмотрю, что да как. А я-то думал, почему она ничего не показывает, если ее просто так запустить. :mrgreen:

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:17 pm
by SoUrcerer

Code: Select all

sudo apt-get install qemu
qemu -fda ~/kolibri.img -boot a
В Ubuntu. Путь заменить на свой.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:19 pm
by Mario
Зачем же так мучаться? Есть qemu и есть замечательная команда mount, когда нужно достать или положить файлы в образ.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:27 pm
by Scampada

Code: Select all

COMMAND> qemu -fda /media/KO/kolibri.img -boot a
open /dev/kvm: No such file or directory
Could not initialize KVM, will disable KVM support
pci_add_option_rom: failed to find romfile "pxe-rtl8139.bin"
:roll:
Если с первой матерной строчкой я еще могу что-то предположить, то последняя непонятна чуть менее, чем полностью. rtl - видимо, realtek?

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:33 pm
by Scampada
Поставил пакеты kvm и pxe-kvm, помогло.
Притормаживает заметно в эмуляторе, по сравнению с "настоящей" загрузкой. Не только во времени отклика заметно, но и прорисовка происходит на глазах сверху вниз. Плюс курсор ведет себя неадекватно (но это, наверное, можно настроить через чувствительность, все же), разрешение чуток не то и видно хуже. Однако для пробных компиляций сойдет. :)

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:37 pm
by Mario
Можно попробовать поставить AQEMU и сформировать рабочую машину в графической оболочке. Какие то файлы прописанные по умолчанию отсутствуют.
А вообще вот viewtopic.php?f=4&t=1344 я тут чего то писал давно уже.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 10:49 pm
by Scampada
Spoiler:Image
Не понравился я эмулятору.

Re: Помогите новичку

Posted: Sat Apr 28, 2012 11:03 pm
by SoUrcerer
sudo apt-get install virtualbox
Будет побыстрее, чем qemu. Хотя чего уж там, реальная машина круче.