Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
Aiuto! - Non trovo nessun driver per dos...
Nuovo argomento   Rispondi    Indice del forum -> Programmazione
Precedente :: Successivo  
Autore Messaggio
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 12:16
Messaggi: 11806
Residenza: Tokelau

MessaggioInviato: 30 Dic 2008 16:00    Oggetto: Rispondi citando

Il DOS non definisce interfacce COM virtuali (cioè che non esistono) ma è solo in grado di mappare le interfacce reali, quindi se hai solo una seriale sul tuo PC questa sarà (probabilmente) COM1.

Per sapere quante/quali interfacce hai installato sul tuo PC devi leggere la memoria in determinate locazioni: se è 0 allora l'interfaccia non c'è, se è invece un valore diverso da zero, allora questo è l'indirizzo della porta (in senso della 'porta CPU') nella quale devi scrivere / leggere per accedere all'interfaccia seriale (la porta COMx)

(spero tu sappia cosa è una porta per la CPU, per non confondere con l'interfaccia COMx... io non riesco ad essere più chiaro di così)

Ecco una tabella delle locazioni di memoria dove è memorizzato il valore delle porte per le interfacce, ed i valori 'standard' (che però devi ignorare se vuoi fare una cosa che funzioni...)
Top
Profilo Invia messaggio privato HomePage
johnbrown
Cavallo di Troia *
Cavallo di Troia *


Registrato: 19/07/07 08:12
Messaggi: 56

MessaggioInviato: 30 Dic 2008 18:31    Oggetto: Rispondi citando

grazie sverx per i tuoi consigli...

Verificherò se riesco a fare il programma giusto per accedere al tanto desiderato modem... Very Happy

farò sapere presto se ci sono riuscito

grazie ancora..

John Brown
Top
Profilo Invia messaggio privato
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 18:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 31 Dic 2008 01:05    Oggetto: Rispondi citando

johnbrown ha scritto:
vorrei rispondere a chemicalbit.

Forse mi sono spiegato male, oppure mi hai frainteso, ma devo farti presente che il dos 7.0, anche se ho detto di windows 95/98 , è stand-alone, nel senso che anche senza "l'interfaccia GUI" di windows funziona perfettamente.
Vabbe', però da Windows 95 in poi non sichiama più DOS ma Winsows 95, appunto.
(E' una scelta del produttore, non ci cambia la vita, ma è giusto per capirci).

Anche perché se parlassimo veramente di DOS (fino al DOS 6) allora saprei dirti per certo che di driver perusare le porte seriali (come la COM3) non ne hai bisogno, è supportato direttamente dal DOS.
(al limite puoi avere bisogno di librerie per il tuo linguaggio di programmazione, visto che siamo nel forum di programmazione)

Da Windows 95 in poi, purtroppo me ne intendo molto meno. (E so che sono stati aggiunti driver per praticamente qualunque cosa, pure per la scheda madre, lo schermo ... ancor aun po' anche per il led d'accensione Very Happy )


johnbrown ha scritto:
Centra con la programmazione perkè senza questo driver non posso sviluppare alcun programma che nel DOS utilizzi la rete.
Ma al di là di questo tuo programma che vuoi realizzare,
con altri programmi riesci ad utilizzare quel modem in quel computer?

Un conto è se tu hai il problema di installare / configurare un modem (e hai eventualmente bisogno del driver richiesto da Windows).

Un conto è se tu devi creare un programma che giri su un generico computer, utilizzando il suo modem, che si presume e richiede sia installato corerttamente per il sistema operativo che usa.
Top
Profilo Invia messaggio privato
johnbrown
Cavallo di Troia *
Cavallo di Troia *


Registrato: 19/07/07 08:12
Messaggi: 56

MessaggioInviato: 31 Dic 2008 10:27    Oggetto: Rispondi citando

salve chemicalbit, io dovrei scrivere un programma il più generico possibile per usare un generico modem interno di un generico computer tramite un programma per DOS....

Ora so inviare comandi al modem tramite la COM3... mi resta da inizializzarla nel DOS...

Questo è il mio attuale problema...
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 12:16
Messaggi: 11806
Residenza: Tokelau

MessaggioInviato: 31 Dic 2008 12:17    Oggetto: Rispondi citando

johnbrown ha scritto:
so inviare comandi al modem tramite la COM3... mi resta da inizializzarla nel DOS...


Credo che qualunque linguaggio di programmazione tu stia usando ti permette di 'aprire' un canale di comunicazione su una specifica seriale... quale linguaggio usi?
Top
Profilo Invia messaggio privato HomePage
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 18:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 31 Dic 2008 12:46    Oggetto: Rispondi citando

johnbrown ha scritto:
mi resta da inizializzarla nel DOS...
Ma appunto quello è un problema di chi installa il modem su quel certo computer X con sistema operativo Y.

Se il sistema opertativo è Windows 95, sarà premura di chi installa il modem lì, d'installare i relativi driver (che immagino in Windows 95 siano richiesti. )

(Con il DOS e Windows 3.1 non c'erano driver -né per modem esterni attaccati alle porte seriali COM1 e COM2 fisiche, che per i modem interni che creavano porte seriali COM3 o COM4 virtuali. Bisognava al limite configurarle, ma di solito andavano bene le configuraizoni di default. Ah, e non si poteva usare la COM1 e COM3 in contemporanea, né la COM2 e COM4, andavano in conflitto.
Il sistema oeprativo faceva sì che si potesse accedere -in lettura e scrittura- ad alto livello alla porta come se fosse un file -ovviamente la cosa è diversa se vuoi fare un accesso a basso livello- ).


Su altri computer, con eventualmente modem diversi e sistemi operativi diversi, sarà cura di chi installa il modem fare in modo che funzioni.


Per questo non ho capito se il tuo problema sia creare il programma, comunicando con la COM (quindi la tua domanda è "con il linguaggio di programmazione che uso -quale?- come parlo con la porta COM?"
Ma ad alto livello, cioè sfruttando i servizi del sistema operativo,
o a basso livello, cioè scavalcandoli e accedendo direttamente?)

o sapere se sarà poi possibile per un generico utente di un computer con Windows 95 installare il modem (e quindi poi usare il tuo programma?)
(Ovviamente bisogna innanzitutto vedere se per lo specifico modello di modem esista un driver per quello specifico sistema operativo).

Se ci dici che il problema è quest'ultimo spostiamo la discussione nel forum adatto.
(a proprosito, ma il modem è interno o esterno?)
Top
Profilo Invia messaggio privato
johnbrown
Cavallo di Troia *
Cavallo di Troia *


Registrato: 19/07/07 08:12
Messaggi: 56

MessaggioInviato: 31 Dic 2008 17:24    Oggetto: Rispondi citando

il mio scopo è quello di poter comunicare con il modem fisico tramite software, scavalcando il sistema operativo.
Per me è indifferente se mi serva un driver generico oppure le "porte CPU" sono standard e accedo direttamente, ma il mio scopo, ripeto, è poter comunicare tra un programma e il modem fisico INTERNO;

Sistema operativo scavalcato;
accesso diretto al modem;
uso il Pascal (e non vorrei cambiarlo);

So che i comandi AT dei modem (almeno i comandi base) sono standard, quindi il modello del modem non influisce nel mio scopo.

Sono stato abbastanza chiaro?
Top
Profilo Invia messaggio privato
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 18:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 31 Dic 2008 17:34    Oggetto: Rispondi citando

Se vi accedi (in scrittura e lettura) tramite il sistema operativo,
dovresti "vederlo" come un normale file.

Ma visto che vuoi scalcare il sistema operativo, devi usare delle apposite funzioni del PAscal (che non conosco: non consoco il Pascal).
A questo punto però, saltando il sistema operativo, non salti anche il driver?
In pratica è il tuo programma che deve farsi carico di tutta la gestione della porta seriale (compreso controllare che nessun altro la stia già usando tramite il sitema operativo, o anche lui direttamente, e impedire accesso se succesivamente qualcun altro tentasse di accedervi).
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 12:16
Messaggi: 11806
Residenza: Tokelau

MessaggioInviato: 02 Gen 2009 11:13    Oggetto: Rispondi citando

johnbrown ha scritto:
uso il Pascal (e non vorrei cambiarlo);


In Turbo Pascal c'era l'array Port[] per scrivere/leggere dalle porte della CPU. Nel Pascal che usi tu non so, vedi la documentazione.

In questo caso stai 'scavalcando' qualunque software, Sistema Operativo e BIOS, e stai accedendo direttamente all'hardware.
Top
Profilo Invia messaggio privato HomePage
chemicalbit
Dio maturo
Dio maturo


Registrato: 01/04/05 18:59
Messaggi: 18597
Residenza: Milano

MessaggioInviato: 02 Gen 2009 12:17    Oggetto: Rispondi citando

SverX ha scritto:
n questo caso stai 'scavalcando' qualunque software, Sistema Operativo e BIOS, e stai accedendo direttamente all'hardware.
Scavalcando anche il BIOS?
(Io pensavo si scavalcasse il sistema operativo e si chiedesse il servizio di lettura / scrittura direttamente al BIOS -Basic Input-Output System- )


Quanto allo scavalcare il sistema operativo,
so che in DOS lo si faceva tranquillamente,
ma un sistema operativo, come Windows 95 e seguenti, che dovrebbe essere protetto e gestire la concorenza (non economica Wink) tra i vari programmi si lascia scavalcare così? Rolling Eyes
Top
Profilo Invia messaggio privato
SverX
Supervisor Macchinisti
Supervisor Macchinisti


Registrato: 25/03/02 12:16
Messaggi: 11806
Residenza: Tokelau

MessaggioInviato: 02 Gen 2009 18:46    Oggetto: Rispondi

chemicalbit ha scritto:
Scavalcando anche il BIOS?


Il bios è software, in parte memorizzato dentro alcune ROM del PC e in parte dentro ad alcuni file che vengono caricati al boot (ricordi il famoso IO.SYS ? ). Se hai accesso alle risorse hardware (ovvero se non stai girando su un sistema operativo che ti limita) puoi comunicare con qualunque hardware a bordo del PC semplicemente scrivendo i valori giusti nel posto (memoria/porte) giuste. Ad esempio per "accendere" un pixel sullo schermo basta(va) scrivere il valore nella posizione giusta nella memoria grafica (segmento $a000, sulla VGA)

chemicalbit ha scritto:
(Io pensavo si scavalcasse il sistema operativo e si chiedesse il servizio di lettura / scrittura direttamente al BIOS -Basic Input-Output System- )


non conosco i servizi BIOS di I/O delle porte seriali... effettivamente può essere che ci siano (leggi un carattere/scrivi un carattere...) ...
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Programmazione Tutti i fusi orari sono GMT + 2 ore
Vai a Precedente  1, 2
Pagina 2 di 2

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi