Neue Antwort schreiben 
 
Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Assembler mit Debug
SnGtKs Offline
DEXTER

Beiträge: 1.616
Registriert seit: Jul 2008
Beitrag #1
Assembler mit Debug
So mal ein Paar Listings wie man mit dem Befehl debug was machen kann ;)

Teil 1: RESET.COM ... Neustart eines DOS Rechners
Als erstes eine Eingabeaufforderung starten unter Vista mit Admin Rechte.
Dann debug eingeben und folgendes abtippen ;)
Code:
n C:\reset.com
a 100
mov ax,0040
mov dx,ax
mov ax,1234
mov [0072],ax
jmp f000:fff0
"hier einfach Return drücken und diesen Kommentar nicht schreiben"
rcx
10
w
q

Das erstellen der Datei ist unter Vista, XP, 2k, ME und 9x möglich aber ein ausführen ist nur unter DOS möglich.
09.12.2008 17:17
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
gandro Offline
Quälgeist

Beiträge: 8.950
Registriert seit: Jul 2008
Beitrag #2
Assembler mit Debug
Hm.. da hab ich auch noch welche auf der Platte, den da hab ich von dir:

Ist allerdings ne Batch, weil variabler Inhalt.

Code:
@echo off
if "%1"=="" goto end
if "%2"=="" goto end
if "%3"=="" goto end
if "%4"=="" goto end

echo Set floppy serial nr to: %1%2-%3%4
echo L100 0 0 1 > floppysn.tmp
echo E127 %4 %3 %2 %1 >> floppysn.tmp
echo W100 0 0 1 >> floppysn.tmp
echo Q >> floppysn.tmp
debug < floppysn.tmp >nul
del  floppysn.tmp >nul
:end
Aufruf mit mit vier hexdezimalen Parametern, z.B.:
Code:
fdserial.bat 1F 45 13 EC
__________________

Code:
e100 BE 81 0 AC 3C D "t"FB "N+"C0 "*"FF B9 A 0 8A 1C "F"80 EB "08"CB
e118 "s"6 F7 E1 1 D8 "s"ED "P"BE A2 1 "+"DB 89 F2 B9 0 F0 B4 "?"CD
e12E "!"8B D8 C6 0 1A B9 7 0 BA 9B 1 BB 1 0 B4 40 CD "!]"85 ED "u"
e145 1 "E+"C9 AC 3C D "t"FB 3C D "t"F7 3C D "t"F3 3C D "t"EF 3C D "t"EB 3C A
e160 "t"E7 "N"89 F2 80 3C D "t F"8A 4 3C D "t"14 3C D "t"10 3C D "t"C 3C D "t"
e17B "t"8 3C D "t"4 3C A "u"E0 "A;"CD "u"BF 8B CE ")"D1 B4 40 CD
e191 "!"B4 3E CD "!"B8 0 "L"CD "!set %%1="
n INPUT.COM
rCX
A2
w
q
Der ist eine INPUT.COM für Batch-Eingaben in DOS/Win9x (unter NT gibts dafür ja set /p).

Aufruf:
Code:
input.com >temp.bat
call temp.bat VARIABLENNAME
del temp.bat
Speichert eine Tastatureingabe in der Umgebungsvariable deren Namen man der temp.bat als Parameter übergibt.

__________________

Code:
n key.com
a0100  
mov ah,00  
int 16  
mov ah,4c  
int 21  

rcx  
8  
rbx  
0  
w0100  
q
Erstellt eine KEY.COM, die den ASCII-Wert der gedrückten Taste als Errorlevel zurückgibt.
09.12.2008 18:10
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
SnGtKs Offline
DEXTER

Beiträge: 1.616
Registriert seit: Jul 2008
Beitrag #3
Assembler mit Debug
Hmm naja eigentlich beginnt man ja mit einem "Hallo Welt!" Programm ... na denne hier ist es:

hmm dieses mal machen wir es aber anders ... folgenden code als hallo.scr abspeichern am besten unter c:\ dann starten wir eine eingabeaufforderung und führen den befehl debug <C:\hallo.scr

Code:
n hallo.com
a
jmp 0200
db 0a,0d,"Hallo Welt!",0a,0d,"$"

a 0200
mov ah,9
mov dx,0103
int 21
mov ah,0
int 21

rcx
010b
w
q
P.S. wichtig das beim q noch ein return folgt!

Läuft unter DOS bis Vista ;)
09.12.2008 18:53
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
huttERic Offline
Yet Another Vostro User

Beiträge: 1.969
Registriert seit: Jul 2008
Beitrag #4
Assembler mit Debug
Wie muss man das Hallo-Welt-Teil eigentlich verändern, sodass man 2 Zeilen ausgeben kann?
18.12.2008 17:11
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
DosAmp Offline
Anderes Zeigegerät

Beiträge: 12.217
Registriert seit: Jul 2008
Beitrag #5
Assembler mit Debug
huttERic schrieb:  Wie muss man das Hallo-Welt-Teil eigentlich verändern, sodass man 2 Zeilen ausgeben kann?
Einfach noch "<Deinen String>",0a,0d dazwischen quetschen?

Erinnerst du dich an #whfclassics? Es ist zurück! In Pog-Form.
18.12.2008 18:50
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
chiaki Offline
Die Pommesfee

Beiträge: 12.534
Registriert seit: Jul 2008
Beitrag #6
Assembler mit Debug
DosAmp schrieb:  
huttERic schrieb:  Wie muss man das Hallo-Welt-Teil eigentlich verändern, sodass man 2 Zeilen ausgeben kann?
Einfach noch "<Deinen String>",0a,0d dazwischen quetschen?

halte ich für ein gerücht
18.12.2008 18:56
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
huttERic Offline
Yet Another Vostro User

Beiträge: 1.969
Registriert seit: Jul 2008
Beitrag #7
Assembler mit Debug
Ich hatte immer noch ein ,0a,0d,"$" eingebaut :( Kein Wunder, dass es nicht geht, das darf nur am Ende sein :D
18.12.2008 18:57
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
chiaki Offline
Die Pommesfee

Beiträge: 12.534
Registriert seit: Jul 2008
Beitrag #8
Assembler mit Debug
ich kenn mich nur mit 68k Assembler aus, aber man muss eigentlich für ne 2. zeile im adressregister die speicheradresse angeben für den 2. text (und natürlich ein CR/CL für den zeilensprung)
18.12.2008 19:07
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
SnGtKs Offline
DEXTER

Beiträge: 1.616
Registriert seit: Jul 2008
Beitrag #9
Assembler mit Debug
weil fragen sind wegen hallo welt
Code:
n hallo.com
a
jmp 0200
db 0a,0d,"Hallo Welt!",0a,0d
db 0a,0d,"This is a Test!",0a,0d,"$"

a 0200
mov ah,9
mov dx,0103
int 21
mov ah,0
int 21

rcx
010b
w
q

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

Früh aufstehen ist der erste Schritt in die falsche Richtung.

Uri Geller verbiegt Löffel. Na und, Maggi macht Knoten rein!

Ich bin im WH Forum seit dem 11.05.2003 ... wow
18.12.2008 19:27
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
huttERic Offline
Yet Another Vostro User

Beiträge: 1.969
Registriert seit: Jul 2008
Beitrag #10
Assembler mit Debug
Ich habs jetzt so gelöst:
Code:
n hallo.com
a
jmp 0200
db 0a,0d,"Hallo Welt!",0a,0d,"Testtest",0a,0d,"$"

a 0200
mov ah,9
mov dx,0103
int 21
mov ah,0
int 21

rcx
010b
w
q
Funktioniert irgendwie auch :)
18.12.2008 19:28
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Neue Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste