Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet von: jeb am 01. April 2005, 16:38
-
Was bedeutet:
reboot:
db 0EAh
dw 0000h
dw 0FFFFh
Gibt es eine möglichkeit, den PC auch im ausgeschalteten zustand zu lassen?
-
das ist eigentlich nur der hex-code für einen farjump in den biosbereich, dort wird dein ein reboot ausgelöst über den tastaturport.
Um ihn aus zu lassen musst du dich mit APM befassen, da hab ich kein plan von momentan
-
um ihn auszulassen: das ganze rebooten oder nur das booten nach dem abschalten?
Gibt es noch die möglichkeit, ihn einfach nur auszuschalten?
mfg
jeb
-
hab mich vielleicht dumm ausgedrückt
um ihn auszuschalten brauchst du APM
-
und wie schaltest du dein OS (ich nehm mal an, du hast/machst eins) aus?
-
Naja du musst dir klar machen was runterfahren heisst:
Offene Dateien sichern etc.
Wenn sowas nicht der fall ist kann man einfach ausschalten
Beim guten alten DOS machte man das immer so, da war nichts mit runterfahren. Stromausfall intressierte keinen^^
-
ja ok, aber bei win oder linux kappt man ja auch nicht einfach die stromkabel:). Oder machen die das mit diesem amp?
-
wie ich sagte dich sicher aller offenen dateien und son zeug, was die genau machen weiss ich nicht, und dann zeigen se bild an von wegen man kann jetzt ausschalten und gehen in eine endlosschleife oder falls verfügbar nehmen apm und schalten aus
-
In Lowlevel #3 ist ein Beispielcode für nen APM-Shutdown:
; SYSTEM POWERDOWN
; WARNING - DO NOT RUN UNDER WIN! (IT WORKS!)
; (C) 1999 BY VINNY
MOV AX,0x5300
XOR BX,BX
INT 0x15 ; APM install check
MOV AX,0x5304
XOR BX, BX
INT 0x15 ; disconnect interface
MOV AX,0x5301
XOR BX, BX
INT 0x15 ; connect real-mode interface
MOV AX,0x5307
MOV BX,1
MOV CX,3
INT 0x15 ; powerdown system
Läuft also komplett über Int 0x15. Vorher muss man also BIOS Interrupts wieder aktivieren.
-
nur in den RM wechseln.
bei mir geht der code net.
-
Ich habs bei mir noch nicht eingebaut. Zurzeit rufe ich ein paar Funktionen von Treibern usw. auf um diese zu killen, dann zeig ich nen Text an (sowas wie "Der Computer kann ausgeschaltet werden"), disable alle Interrupt und geh dann in eine Endlosschleife. Das ist nur für moderne PCs ein wenig unschön...