Здравствуйте!
Видимо всё очень плохо в моём случае...и я понимаю что мне необходимо повысить уровень знаний, а для этого нужно читать или задавать глупые вопросы вам, чего я очень не люблю, очень надеюсь на ваше понимание и рекомендации что именно почитать.
Вот код:
Код:
format MS COFF
include 'imports.inc'
struc IOCTL
{ .handle dd ?
.io_code dd ?
.input dd ?
.inp_size dd ?
.output dd ?
.out_size dd ?
}
virtual at 0
IOCTL IOCTL
end virtual
section '.flat' code readable align 16
START:
push ebp
mov ebp,esp
mov eax,[esp+8]
cmp eax,1
pop ebp
ret 4
Запуская вот так:
Код:
use32 ; включить 32-битный режим ассемблера
org 0x0 ; адресация с нуля
db 'MENUET01' ; 8-байтный идентификатор MenuetOS
dd 0x01 ; версия заголовка (всегда 1)
dd START ; адрес первой команды
dd I_END ; размер программы
dd 0x1000 ; количество памяти
dd 0x1000 ; адрес вершины стэка
dd 0x0 ; адрес буфера для параметров (не используется)
dd 0x0 ; зарезервировано
START:
mov eax,68
mov ebx,16
mov ecx,bcm
int 0x40
bcm db 'bcm4312',0
I_END:
Доска отладки показала вот это:
Код:
in module bcm4312
K : Process - forced terminate PID: 00000039
K : Undefined Exception
K : EAX : 00000000 EBX : 00000010 ECX : 00000035
K : EDX : 00000000 ESI : 00000000 EDI : 00000000
K : EBP : 00000000 EIP : 00000035 ESP : 00001000
K : Flags : 00011202 CS : 0000001B (application)
Видимо что-то пошло не так...и я не очень понимаю что...что самое обидное...