La pagina effettivamente è cresciuta, e col tempo ho conosciuto anche un sacco di amici che ringrazio per avermi dato "spago" durante questa mia "camminata" sul web. Vado subito al dunque, nella pagina "Download" ci sono dei link a dei files in formato zip che alcuni amici mi hanno chiesto, ed io le rendo disponibili qui per tutti, sono le specifiche dello standard SFF8020 per programmare le periferiche ATAPI. Nella sezione "Download" ho aggiunto anche dei tutorials presi in rete sulla programmazione in assembler e la programmazione 32bit Protected Mode ottimi per iniziare a muoversi nel mondo dell'assembly. Ultimamente mi sono avvicinato molto al reverse engineering, per poter capire bene come funziona quella o l'altra periferica, troverete nella pagina dei link dedicati al mondo del reversing, zeppi di cose interessantissime!! Ricordatevi che reversing non significa pirateria, reversare è l'arte di capire e implica delle conoscenze certamente non superficiali, non confondetelo col mero rubare e lucrare sul lavoro altrui!!!Devo ringraziare molto Ritzz, il mio tutor, che con la sua disponibilità mi sta guidando pian piano in questa per me nuova avventura 'elettronica' !

Dopo alcune peripezie tra i boot loader, ho disassemblato quello di Win95, ero proprio curioso di vedere quale fosse mai il primo vagito del sistema operativo più blasonato del mondo....eccolo qui, oltretutto è anche facile (non si sono sprecati molto i nostri amici....) ed ormai visto che c'ero ho disassemblato anche LILO! Potete trovare queste cose nella mia BootZone, insieme ad altri programmi utili ed esempi per chi vuole avventurarsi nel mondo dei bootloader. Comoda l'utility bdm.exe , di cui potete trovare anche i sorgenti nella bootzone, che serve per "infilare" del codice di boot in un dischetto FAT12. Il programma fa parte di un progetto a più ampio respiro sviluppato da Xavier Leclercq che ha sviluppato questa utility per il suo sistema operativo, l' O3S , un OS creato a scopo di insegnamento. Per chiarire e riorganizzare le idee di noi poveri autodidatti della programmazione di O.S. ho inserito nella TutorialZONE le slides in formato pdf usato del prof.Roberto Polillo nel suo Corso di Sistemi Operativi tenuto all'Università di Milano. Gli argomenti trattati e l'ausilio visivo di grafici e immagini varie aiutano a digerire meglio i concetti di system call, architettura interna e implementazione di un sistema operativo. Dategli uno sguardo se vi sentite disorientati!!

A chi interessasse potrà trovare nella pagina dei Download il mio tutorial per la programmazione delle WinSock in c/c++.Il programma che espongo è molto semplice, un miniserver che aspetta collegamenti sulla porta telnet e invia al client tutti i dati che riceve in ingresso. Il file .zip contiene l'eseguibile compilato con il VC++ ma qualsiasi compilatore può andare bene, un file in formato Word (il tutorial stesso) e il sorgente tcp3. Certamente il programma non è un gran che, ma è a scopo didattico e comunque è un buona introduzione al mondo delle comunicazioni "Over IP". Il tutorial è anche disponibile per la lettura in linea (TutorialZONE). Arrivo di rilievo nella TutorialZONE è il documento di Franco Torrini che spiega molto chiaramente (leggete per credere) come fare per costruirsi le proprie DLL in VisualC++, complimenti Franco!

Navigando in rete ho trovato anche una marea di siti interessanti per quanto riguarda la programmazione di Sistemi Operativi per così dire "personalizzati". In questi Link troverete molte notizie su come costruire da zero un OS, quindi se Win comincia a starvi stretto, basta lamentarsi! E' l'ora di sedersi davanti al computer e scrivere un po' (?!) di codice........e se non sapete dove trovare del buon codice free, allora rivolgetevi a Carlo Altieri nella sua pagina (il link lo trovate qui in fondo) ci sono molti programmi che lui stesso ha scritto da prelevare e studiare. 

GazTek ...la pagina in assoluto più bella che ho trovato sui SO, spiega molto bene gli aspetti basiliari, ed è ricca di esempi di codice e di Link ad altre pagine utili, DOVETE guardarla e sopratutto DOVETE firmare il guestbook di Gaz, se non altro per incoraggiarlo !!!! Dalla sua pagina potete anche raggiungere il sito 500Mhz dove potete trovare veramente ogni cosa possiate desiderare su come programmare il vostro personalissimo OS. Gaz mi ha dato il permesso di includere nella mia pagina i sorgenti e l'eseguibile del suo OS, li potete trovare nella mia OSZone!

Se siete programmatori gradirete sicuramente questo link alla pagina di NASM-IDE un ambiente di sviluppo integrato per il famoso NASM (Netwide Assembler), fatto sulle orme dell'IDE del BorlandC++ 3.1 e di RHIDE. Inoltre (per chi ancora non lo conoscesse...) ho messo anche un link alla home-page di DJ Delorie, dove potete trovare il suo famoso DJGPP. un compilatore C/C++ per DOS32bit veramente ben fatto (tutto gratis per di più!!).Se siete in cerca di esempi per programmare a basso livello in DJGPP (videogiochi etc...) vi rimando alla pagina di Paolo Pancheri, graficamente molto accattivante e piena zeppa di "how to code" in DGJPP, c'e' anche la possibilità di scaricarla completamente per poterla poi comodamente studiare offline, ed è inoltre collegata al webring della programmazione in DJGPP.

Segnalo anche la pagina di Antonio Bonifati che ha tradotto in DJGPP i sorgenti di esempio del libro di A.Fasano (lo consiglio a tutti coloro che vogliono iniziare a costruire il loro motore 3D personale, lo trovate presso INFOMEDIA).

Una 'new entry' nei miei Link a fondo pagina è RingZer0 una pagina tutta italiana dedicata al mondo del reverse-engineering, la capacità cioè di estrarre dall'eseguibile il codice che lo ha creato (in assembler ovviamente)e, piu' che altro, capirne il significato. Grazie a questa tecnica, che non ho ancora capito bene se è illegale o no, si possono ricavare informazioni utilissime, ad esempio, per far funzionare il vostro device XyZ anche all'interno del vostro miniOS fresco fresco di compilazione. Una cosa è certa: queste persone manipolano l'assembler con la stessa padronanza con cui noi maneggiamo lo spazzolino da denti!!! Potrete trovare su RingZer0 una sacco di tutorial interessanti e di documenti che spiegano il funzionamento piu' 'intimo' di svariati OS, dei driver VXD e dell'assembler per Win32.......c'è molto da imparare!!

 

Progetto VGAMEM by MrCODE

Catturato dall'ondata dell'Open Source, una filosofia davvero accattivante, ho deciso di mettere sulla pubblica piazza un errore di gioventù che ho commesso qualche anno addietro, il mio (fantastico) progetto VGAMEM, che si chiama così perchè oltre a non essere completato, non ha mai nemmeno avuto un nome di battesimo ben definito.
Il programma doveva essere nei sui intenti un mini-micro windows 3.1, con poche funzioni sufficienti a gestire con agilità una stazione di collaudo per motori elettrici. Una volta scompattato l'archivio degli eseguibili (che ho chiamato vgamembin.zip disponibile anche nella sezione download) dovreste trovarvi tre directory (BMP,PCX e FONT) ed un file eseguibile VGAMEM.EXE, il tutto dentro la directory Caviar1270/WORK/SOURCE/KERN. Il programma è disponibile anche in versione sorgente nell'archivio vgamemsrc.zip, che una volta scompattato creerà un albero con tutti i file pronti per essere compilati (io usai ai tempi il BorlandC++3.1, a voi l'arduo (?!) porting in DJGPP !!!) Molto del codice all'interno del mio progetto è stato "raccattato" in rete qua e la, ammetto che ho fatto molto cut&paste!! Specialmente la sezione inerente alle comunicazioni seriali è stato presa e messa li e poi manco toccata, visto che tanto poi non ci avrei tirato fuori un fico secco!!
Per lanciare il programma digitate semplicemente VGAMEM (dovete essere nella directory :) ).Poichè il mio programma usa la modalità di memoria FlatRealMode, non è compatibile ne con Win ne tantomeno con i vari EMM386 e compagnia. Necessità pero che sia caricato il driver Himem.sys, di cui usa alcune funzioni. Per funzionare necessita inoltre di una scheda grafica VESA 1.2 compliant.

*** Features ***

Finestre simil-window95 scalabili (realizzate con primitive).
Supporto lettura files PCX.
Supporto lettura files BMP.
Supporto di 4 porte seriali con comunicazione fino a 115200bps in maniera asincrona.
Supporto per vari fonts, selezionabili da programma.
Supporto VESA 1.2 e superiore.
Implementato nuovo handle per la tastiera (piu' veloce e affidabile).
Implementate primitive grafiche come punto, linea ,rettangolo etc.
Implementati bottoni con e senza testo.
Implementato ScreenSaver tipo "viaggio nello spazio".
Implementato Orologio sulla taskbar.
Supporto XMS per memoria sopra il megabyte.
Gestione "futuristica" della memoria espansa, FLAT-REAL-MODE , (non compatibile con Win95 e EMM386 presa dal tutorial dei Massive)
Possibilità di "simulare" altri tipi di finestre semplicemente aggiungendo un paragrafo ad una routine.
Gira su tutti i computer che hanno almeno un 386 ed una scheda grafica VESA compliant

....(Non male vero?) =8?)

*** DIFETTI ***

1. deve essere ancora finito ...... ;)
2. è scritto in C tranne le routine di basso livello per la grafica che sono in assembler.
3. ....non me ne viene in mente altri...

Il programma lo avevo creato per un'applicazione di rilevazione dati in ambito industriale, quello che gira al momento, non è molto professionale, ha l'interfaccia a caratteri ed è anche lenta su di un 486dx2 66Mhz, allora mi sono messo a scrivere qualcosa di un po' più professionale e "performante", con una gestione SERIA delle porte seriale (interrupt) invece che in polling come quello di ora (bleah!) con una grafica un po' più accattivante ed una gestione della tastiera non alla BorlandC, la routine della Borland è bella ma troppo lenta per applicazioni che devono cercare il massimo dalla gestione delle seriali, e rallenta tutto!!!. Il risultato è stato questo, che devo dire mi ha soddisfatto, e poiché l'ho messo insieme imparando dalla rete, volentieri lo lascio completamente FREE sul mio sito, fatene quello che volete!!. 
Spero che funzioni sul vostro PC, ovviamente funziona solo in modalità MSDOS (i computer industriali hanno quasi tutti rigorosamente il DOS), e con l'HIMEM.SYS caricato e l'EMM386 disattivato.
All'interno del programma , o dovrei dire del "desktop" ,potrete usare solo il tasto [esc] ,che come forse non sapete amo moltissimo, per andare avanti nelle varie "prove d'uso" che ho predisposto. I tasti della TaskBar non "sentono" i comandi, perché non sapevo cosa fargli fare...è tutto allo stato embrionale!!!

Il programma VGAMEM una volta lanciato, e se tutto và bene, dovrebbe sortire questi effetti:

1. in modalità testo il programma fa un check dell'hardware che trova installato, poi aspetta "ESC" per andare in modalità grafica.
2. entra in modalità grafica (640x480x256col) caricando la bitmap di sfondo LOGO.BMP ed apre la taskbar con l'orologio (funzionante) Non dà nessun messaggio, ma dovete premere ancora "ESC".
3. Apre un tot di finestre una sopra l'altra (per provare la funzione di "salvataggio" della bitmap sottostante) e dei bottoni sulla taskbar, apre anche un EasyWin con dei messaggi del cavolo. A questo punto premere "ESC"
4. Scazza in una Window un tot di icone che ho fregato a Win3.1 (le avevo prese per dare un tocco di classe in piu' al programma, per fare bottoni personalizzati etc.).Premere di nuovo "ESC"
5. Chiude tutto e torna a casa.

Spero vi piaccia, tenete conto che così come è non serve a niente, andava finito con le routine di dialogo con il PLC e gli strumenti vari sparsi per il quadro prove (Voltmetri, Amperometri, Wattmetri digitali  e alcuni rilevatori di vibrazioni che colloquiano con il PC).
Per implementare i sorgenti mi sono ispirato al modello "Amiga" degli include e dei protos, mi ci sono sempre trovato bene......
Se vi avanzano due minutini di tempo libero mandatemi un messaggio per darmi un parere su questa mia creazione (abortita) e se diventerete miliardari vendendola (dubito), ricordatevi di me! ;)
HappyCoding!
  MrCODE

 

Mirror Italiano di "THix"

Grazie al permesso accordato da Tudor Hulubei, adesso è possibile scaricare direttamente dal mio sito sia i sorgenti che gli eseguibili del suo sistema operativo, THix appunto, che è un clone Unix POSIX.1 compliant, per il quale Tudor ha già effettuato il porting della suite completa di sviluppo GNU C/C++. A Tudor vanno i miei ringraziamenti per la concessione dell'hosting e i complimenti per aver fatto DA SOLO (urgh!) tutto questo popò di lavoro!!!! Potete scaricare il suo lavoro dalla mia OSZone, clicckando sul bottone qui a fianco. Nel riquadro dedicato a THix all'interno della OSZone potrete anche trovare la traduzione che ho fatto del suo "manuale di programmazione di THix", una sorta di appunti di viaggio che Tudor ha scritto per puntualizzare il funzionamento del suo O.S. Vi consiglio di scaricare i sorgenti e di seguirli passo passo aiutandovi con questo file, potrete così approfondire i seguenti argomenti:
  • Process management.
  • Process scheduling.
  • Sleep and wakeup primitives.
  • Signals handling.
  • Kernel timers.
  • System calls interface.
  • Interrupts and exceptions handling.
  • Low level I/O

Buona lettura!
HappyCoding!
  MrCODE



L'appendice dedicata ai Link


www.programmazione.it
il sito Italiano per i programmatori!

Siete interessati al Reverse Engineering? Volete diventare padroni totali del vostro sistema operativo? Allora non perdetevi la pagina (ITALIANA!!) che dara' la luce alla vostra buia esistenza. Tutorials, Tools e Docs da mozzafiato, direttamente dai numeri uno dell'assembler in Italia !!!

L'autore dell'ottimo PeRdr, un visualizzatore/disassemblatore di files eseguibili in formato PE, che stà migliorando giorno per giorno...Freddy aderisce al movimento open source, un'occasione d'oro per studiarsi il sorgente e capire un sacco di cose sul PE!! 

Un ottimo luogo dove poter approfondire la conoscenza del sistema operativo piu' innovativo del momento, LINUX. Qui imparerete a programmare a basso livello su Linux e a capire le sue qualità in confronto al (bellissimo) Win9x. Courtesy of Ritzz (my tutor!).
Add Me!

Registra il tuo sito sui motori di ricerca più famosi!

http://www.liberliber.it/speciali/1999/telecom/
Se anche tu credi che la bolletta TELECOM sia esagerata, dai un'occhiata a questo sito e stupisciti........

Se date un'occhiata a XUNGAME troverete un'ottima libreria grafica scritta in Pascal e assembler, oltre ad un Tutorial su ASP e altre risorse di sicuro interesse, tutto rigorosamente condito da codice sorgente!!  Courtesy of Giovanni Ceglia, XUNGAME WebMaster
La pagina di -ALBE- e del suo OS. Altro progetto Italiano per fare un OS seguendo le PROPRIE regole, i PROPRI algoritmi e le PROPRIE convinzioni...interessante fonte di informazioni per la programmazione a basso livello dei device fisici del vostro PC. Courtesy of -ALBE-

Raccolta di esempi, semplici applicazioni, librerie e controlli sia free che commerciali, tutti rigorosamente disponibili con codice sorgente. Courtesy of Carlo Altieri

Per fare un link alla pagina di MrCODE usa i seguenti tag:

<a href=http://web.tiscalinet.it/mrcode>
<img src=http://web.tiscalinet.it/mrcode/link.gif alt="MrCODE!" border=0>
</a>

Date uno sguardo anche a www.pippo.com , troverete degli interessanti articoli scritti da Marco Iannacone inerenti Linux e la comunità OpenSource, ottimo per i newbies!!! Di seguito le news del sito:



OSDev 
      Ring Previous 5 Sites
Previous Site
List Sites
Next Site
Next 5 Sites
Random Site

Potete contattarmi a questi indirizzi:
NetService mrcode@aruba.it
HomeSite mrcode@tiscalinet.it
OtherThings mrcode@tin.it

Ultimo Aggiornamento del sito: 10/01/02 22.16 +0100


DISCLAIMER DOVUTO: I CONTENUTI DI QUESTA PAGINA E I LINK PRESENTI SONO MESSI A DISPOSIZIONE DI TUTTI COSI' COME SONO, SENZA NESSUNA INTENZIONE MALEVOLA E/O CRIMINALE DI FAR DANNO. NON SONO RESPONSABILE PER L'USO NON CORRETTO CHE LA GENTE POTREBBE FARE DEL CONTENUTO DI QUESTE PAGINE, A ME PIACE PROGRAMMARE, NON RUBARE O LUCRARE SUL LAVORO ALTRUI !! SE VI PIACE UN PROGRAMMA..COMPRATELO!! QUINDI POI NON VENITEMI A DIRE CHE NON VI AVEVO AVVERTITO, OK? :)