Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Menù DOS 6.22

    Ciao a tutti...

    spero di postare in una zona giusta stavolta...

    premetto che sono nuovo della programmazione C per DOS (non .net framework) e non conosco praticamente niente...

    Chiedo il vostro aiuto per creare un piccolo programmino che per voi sicuramente sarà una stupidata...

    io vorrei creare un programmino che avviato mi mostri una immagine bmp a 256bit dove ci sono illustrate delle istruzioni e:

    premendo tasto 1 mi avvia un programma specificato in un qulunque file esterno (txt, cfg, etc...)

    premendo tasto 2 mi avvia un secondo programma specificato ne sudetto file.

    spero di essermi esaurientemente spiegato...

    il programma funzionerà in DOS puro (6.22)

    grazie per chiunque mi aiuti...
    -=Meglio morire in piedi, che condurre una vita in ginocchio=-

  2. #2
    Intanto devi procurarti un compilatore DOS, quindi devi studiarti un po' di C/C++ standard (che tra l'altro è sempre lo stesso, sia per DOS che per Windows che per Linux); credo che dovrai sudare sangue per la faccenda delle immagini, perché non esistono funzioni standard per visualizzare immagini, e non so quanto si possano facilmente trovare librerie esterne che facciano questi lavori sotto DOS.
    premendo tasto 1 mi avvia un programma specificato in un qulunque file esterno (txt, cfg, etc...)
    premendo tasto 2 mi avvia un secondo programma specificato ne sudetto file.
    Cosa significa avviare un programma "in un file"? Nel senso di passargli come parametro il file in questione?
    il programma funzionerà in DOS puro (6.22)
    Gloriosa versione! Avevo una macchina VMWare con DOS 6.22 e Windows 3.1 per Workgroup che andava perfettamente in Internet con una versione antica di TCP/IP e Netscape... :rollo:
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Finalmente posso rendermi utile in questo forum!!!

    Guarda ti cosiglio di usare la libreria Allegro (allegro.cc non è il sito ufficiale ma è sicuramente più usabile e chiaro); pensa che io non sapendo nulla di programmazione grafica in una settimana avevo già fatto delle cose carine.

    Inoltre DJGPP (il link lo trovi nel sito di prima) è un compilatore dos che consigliano di usare in parallelo alla libreria sopra citata.

    Spero di esserti stato utile.

  4. #4
    sapete per caro se è possibile decompilare questo file?? se è una cosa che si può fare...

    Bitmap for DOS

    @ MItaly

    mi sono spiegato male io... cmq richiamando il percorso del programma "da un file"...

    @Tobler

    vedro di seguire anche i tuoi consigli...


    grazie per adesso... vi faccio sapere...
    -=Meglio morire in piedi, che condurre una vita in ginocchio=-

  5. #5
    ciao ragazzi... ho trovato questo listato che credo faccia al caso mio...

    #include "allegro.h" /* CARICA LA LIBRERIA ALLEGRO.H */

    int main() /* INIZIO PROCEDURA */
    {
    BITMAP *immagine; /* DICHIARAZIONE VARIABILE IMMAGINE */
    PALETTE colori; /* DICHIARAZIONE VARIABILE COLORI */

    allegro_init(); /* INIZIALIZZA LA LIBRERIA ALLEGRO */
    install_keyboard(); /* INSTALLA LA TASTIERA */

    set_color_depth(32); /* IMPOSTA LA PALETTE DEI COLORI A 32 BIT */
    set_gfx_mode(GFX_AUTODETECT, 800, 600, 0, 0); /* IMPOSTA LA MODALITA' GRAFICA 800x600 */

    immagine=load_bitmap("immagine.tga", colori); /* CARICA IL FILE IMMAGINE.TGA */
    blit(immagine, screen, 0, 0, 0, 0, 800, 600); /* VISUALIZZA L'IMMAGINE SULLO SCHERMO */

    destroy_bitmap(immagine); /* ELIMINA L'IMMAGINE DAL BUFFER PRIMA DI USCIRE DAL PROGRAMMA */

    readkey(); /* LEGGE UN TASTO QUALSIASI DA TASTIERA */

    allegro_exit(); /* TERMINA LA LIBRERIA ALLEGRO */
    }
    END_OF_MAIN (); /* FINE DEL PROGRAMMA */



    questo per l'immagine... ma si può aggiungere che :

    premendo il tasto 1 mi apre il programma chiamato primo.exe
    premendo il tasto 2 mi apre il programma chiamato secondo.exe?
    -=Meglio morire in piedi, che condurre una vita in ginocchio=-

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288

    Moderazione

    Originariamente inviato da superany
    sapete per caro se è possibile decompilare questo file?? se è una cosa che si può fare...
    Ho rimosso il link; non è ammessa la richiesta di decompilazione di file eseguibili, peraltro di cui è sconosciuto l'autore.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  7. #7
    ciao a tutti... sono arrivato a questo punto...

    qualcuno potrebbe correggermi il compitino?

    #include <stdio.h>
    #include "allegro.h" /* CARICA LA LIBRERIA ALLEGRO.H */
    #include <unistd.h>

    int main(int argc, char *argv[]) /* INIZIO PROCEDURA */
    {
    BITMAP *immagine; /* DICHIARAZIONE VARIABILE IMMAGINE */
    PALETTE colori; /* DICHIARAZIONE VARIABILE COLORI */

    allegro_init(); /* INIZIALIZZA LA LIBRERIA ALLEGRO */
    install_keyboard(); /* INSTALLA LA TASTIERA */

    set_color_depth(32); /* IMPOSTA LA PALETTE DEI COLORI A 32 BIT */
    set_gfx_mode(GFX_AUTODETECT, 640, 480, 0, 0); /* IMPOSTA LA MODALITA' GRAFICA 800x600 */

    immagine=load_bitmap("immagine.bmp", colori); /* CARICA IL FILE IMMAGINE.TGA */
    blit(immagine, screen, 0, 0, 0, 0, 640, 480); /* VISUALIZZA L'IMMAGINE SULLO SCHERMO */

    destroy_bitmap(immagine); /* ELIMINA L'IMMAGINE DAL BUFFER PRIMA DI USCIRE DAL PROGRAMMA */
    int scelta;
    scanf("%d",&scelta);
    switch (scelta)
    {
    case 1:
    int execve ("./primo/primo.exe","-ds","d",NULL);
    break;

    case 2:
    int execve ("./secondo/secondo.exe",NULL);
    break;
    }
    readkey(); /* LEGGE UN TASTO QUALSIASI DA TASTIERA */

    allegro_exit(); /* TERMINA LA LIBRERIA ALLEGRO */

    return 0;
    }


    come faccio poi a compilarlo?
    -=Meglio morire in piedi, che condurre una vita in ginocchio=-

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.