|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
[DOS] .com a 16 bit
sto uscendo scemo (il che è tutto dire).
voglio creare un programma a 16 bit con estensione .com e sto provando a usare MASM32 e NASM, ma con nessuno dei due ci riesco in particolare tra i due preferivo il masm; anche se si tratta del masm32, la direttiva .model supporta ancora il modello tiny, quindi dovrebbe comunque essere in grado di generare codice a 16 bit in un file .com ho provato a fare uno scheletro iniziale di programma (questo in masm): Codice:
.model tiny .code .startup .exit end dov'è che sbaglio ?? qualcuno può dirmi passo passo come fare un programma scheletrico a 16 bit con estensione .com possibilmente in masm32? (sennò al limite va bene il nasm...) come sempre lavoro su win2k pro thx Ultima modifica di 71104 : 19-05-2005 alle 22:17. |
|
|
|
|
|
#2 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
up
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Non chiedermi cosa vuol dire, l'ho trovato nei gruppi di google, forse tu riesci a decifrarlo:
" If using a module definition (.def) file, these lines should appear in it: If using a module definition (.def) file, these lines should appear in it: EXETYPE NT SUBSYSTEM CONSOLE Do not use /ENTRY:WinMainCRTStartup in a command to the linker, this specifies a Windows application." Spero ti sia utile.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
#4 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
ehm... -__________-'''
apprezzo molto la tua solerzia e la tua collaborazione ^^' ma non è esattamente quello che cercavo ^^ ti spiego brevemente che vuol dire: quando crei programmi EXE (quindi non c'entra nulla coi COM) puoi opzionalmente includere un file con estensione .def che contiene le cosiddette definizioni, una serie di informazioni di vario genere; tra queste troviamo il nome dell'entry point (di default "WinMainCRTStartup"), il subsystem usato (cioè se è un programma console, un programma GUI, un driver, ecc.), le eventuali esportazioni, le definizioni delle sezioni, eccetera eccetera. |
|
|
|
|
|
#5 |
|
Bannato
Iscritto dal: Jul 2004
Città: Tatooine
Messaggi: 506
|
non so se puo' aiutare...pero' nel codice che hai postato manca l'indicazione dell'indirizzo di partenza del programma. Se non sbaglio per i file .com non deve essere _sempre_ 100h? Quindi ORG 100h?
|
|
|
|
|
|
#6 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
ORG 100h? e chè è? dove lo devo scrivere?
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
|
Quote:
Fatto sta che i com partono da li e se nn lo fanno, nn sono .com
__________________
Gnu/Linux User
|
|
|
|
|
|
|
#8 | |
|
Bannato
Iscritto dal: Jul 2004
Città: Tatooine
Messaggi: 506
|
Quote:
|
|
|
|
|
|
|
#9 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
a parte che non è mai libero neanche in modalità reale perché c'è il bios e subito prima l'IVT... |
|
|
|
|
|
|
#10 | |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
Quote:
|
|
|
|
|
|
|
#11 | |
|
Bannato
Iscritto dal: Jul 2004
Città: Tatooine
Messaggi: 506
|
da http://www.uv.tietgen.dk/staff/mlha/...directives.htm:
Quote:
|
|
|
|
|
|
|
#12 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
ma sta cosa dove va messa? ho provato subito dopo la direttiva .CODE ma non cambia nulla
e comunque non credo che sia quello il problema... devo far capire al linker che non sto generando un EXE, ma un COM! il linker mi cerca l'entry point! |
|
|
|
|
|
#13 | |
|
Bannato
Iscritto dal: Jul 2004
Città: Tatooine
Messaggi: 506
|
Quote:
|
|
|
|
|
|
|
#14 |
|
Bannato
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
|
MWHAUWHAUHUWHAUA COMPILA!!!! ehm, però come dire... è un exe... :-|
![]() ti ringrazio tantissimo per l'aiuto, ma a questo punto mi sembra chiaro che bisogna cambiare qualche settaggio, qualche impostazione, forse nel linker; aho, ti giuro che le ho provate tutte e proprio non ci riesco... :-| boh, forse domani ci riuscirò, dato che domani è domenica e quindi dovrei avere la concentrazione di un carciofo, però almeno non è sabato, che ho la concentrazione di una patata :-| |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:07.











ORG 100h? e chè è? dove lo devo scrivere?









