Page 1 of 1

Cold/warm restart

Posted: Sat Jul 30, 2005 1:50 pm
by mike.dld
Уже давно меня мучала такая вот особенность Менуета - при выборе 3-го пункта (перезагрузка) происходит ХОЛОДНЫЙ рестарт. К счастью, сам того не ожидая, я сегодня нашёл решение этой проблемы. Следует изменить код в boot/SHUTDOWN.INC (строка ~240):

Code: Select all

; то, что было раньше:
    cmp  al,3              ; boot
    jnz  no_sys_boot
    jmp  0xffff:0
; то, что должно быть:
    cmp  al,3              ; boot
    jnz  no_sys_boot
    mov  ax,0x0040
    mov  ds,ax
    mov  word[0x0072],0x1234
    jmp  0xF000:0xFFF0

Posted: Sat Jul 30, 2005 9:12 pm
by halyavin
А что за странная константа 0x1234?

Posted: Sun Jul 31, 2005 2:01 am
by mike.dld
Ну это вопрос не ко мне ;) Так должно быть.

Posted: Sun Jul 31, 2005 1:04 pm
by DoomEd Archangel
Майк, а почему исправлять функцию? ведь холодный рестарт тоже может понадобиться. мож добавить к функции выключения новую подфункцию?

Posted: Mon Aug 01, 2005 12:50 am
by mike.dld
Интересно, зачем он может понадобиться??? Хочешь холодный - жми reset ;)