PDA

View Full Version : Superditta rilascia Grande editore di testo -- Microsoft corre ai ripari


SuperISD32
26-08-2007, 20:00
Avete presente quel nuovissimo linguaggio, non ancora molto diffuso, che porta l'Onorevole nome di QBasic?
Proprio quello di quarant'anni fa...
Ecco, con quell' aggeggio ho scritto un editorino di testo piccolo piccolo che per adesso non pretende ancora niente (nemmeno di essere usato).
Il suo scopo e' quello di consentire una piu' agevole scrittura dei programmi rispetto ai normali strumenti usati oggi, in particolare consentendo il salvataggio immediato su piu' percorsi e la visualizzazione diversificata tra variabili, strutture ecc dichiarate, esterne o non dichiarate, anche se il limite massimo della risoluzione video la dice lunga (vga o inferiori).
(Considerate che sono rimasto a Visual studio 6, forse le nuove versioni mi hanno prevenuto).

Comunque il programma non e' ancora completo ma e' stato rattoppato per funzionare comunque, e presenta qualche bug.

Se lo confrontate con uno dei programmi pre-microsoft di bill gates, intendo l'edit per dos, il mio a confronto e' un gioiello, perche' non risente del limite di allocazione della memoria impostato a 64 KB; questo perche' usa un sistema di trasferimento del testo tra ram e disco che consente agli utenti di scrivere fino a saturare il disco rigido e non le ram.


Da autore del programma, cedo il codice sorgente con l'unica condizione che nessuno se ne impossessi.

eseguibili e sorgente:
http://www.savefile.com/files/1005007

considerando che il tempo di host del server e di 7 giorni, e che la discussione e' dedicata, vorrei postare il codice direttamente sul forum.
puo' essere una scelta scomoda; ditemi voi

PS: per motivi di host gli eseguibili non hanno estensione;
aggiungete .exe al nome

SuperISD32
26-08-2007, 20:26
Il documento di testo allegato Avrebbe lo scopo di spiegare due cosette un po' complesse (complesse se riferite alla semplicita' generale del software) sul funzionamento di due variabili.
La spiegazione l'ho scritta oggi stesso ed e' indirizzata a me come promemoria, perchè per poterla capire e' necessario conoscere il funzionamento del programma abbastanza in profondità.

PS: scusate la mia grammatica, sono un po' rincogli@nito...

wingman87
26-08-2007, 23:35
Purtroppo a me su vista nn funziona...

ndakota
27-08-2007, 11:59
a me va molto carino :) ma non era meglio farlo con una gui?

^TiGeRShArK^
27-08-2007, 13:02
a me va molto carino :) ma non era meglio farlo con una gui?

una gui col qbasic? :mbe:
mi sa che non hai tanto presente il linguaggio allora :asd:

ndakota
27-08-2007, 13:33
una gui col qbasic? :mbe:
mi sa che non hai tanto presente il linguaggio allora :asd:

no infatti, non ho proprio idea di che sia, chiedo scusa. :)

variabilepippo
27-08-2007, 13:43
una gui col qbasic?
mi sa che non hai tanto presente il linguaggio allor


In realtà si possono sviluppare GUI in QBasic/QuickBasic (e te lo dice uno dei massimi denigratori dei dialetti BASIC), il vero problema è un altro! Perché sviluppare (o addirittura usare!) in pieno 2007 un programma a 16 bit, afflitto da bug, limitazioni e da una usabilità "opinabile" quando esistono centinaia di IDE, RAD e programmer's editor user-friendly di ottima fattura con tonnellate di features e compatibilità con un numero impressionante di compilatori C++ e di sistemi operativi? A 'sto punto tanto vale programmare con EDLIN (http://www.computerhope.com/edlin.htm). :muro:

Se siete allergici alle GUI potete sempre installare VIM (http://www.vim.org/) o emacs (http://www.gnu.org/software/emacs/windows/ntemacs.html).

P.S.1. Per usare il programma con Windows Vista è necessario l'emulatore DosBox

P.S.1. Perché i messaggi dell'editor sembrano tradotti dall'inglese con un traduttore automatico?
"Scrivendo il documento", "Stop - Confine", "Assemblazione dei componenti...", ecc.

^TiGeRShArK^
27-08-2007, 16:57
In realtà si possono sviluppare GUI in QBasic/QuickBasic
..
dipende da cosa intendi per GUI....
Con qbasic aveva a disposizione come modalità grafica max la VGA standard e cioè 640X480 16 colori e 320X200 256 colori (scelti entrambi da una palette di 2^18 colori se non ricordo male).
Io per GUI oggi come oggi indendo un programma che si interfacci nativamente (o quasi nativamente) col SO...
e a quella risoluzione e con l'uso esclusivo dello schermo mi pare proprio impossibile :D
(certo.. a meno di non usare altri linguaggi di programmazione come bridge con i SO moderni.. ma la vedo piuttosto dura :fagiano: )

variabilepippo
27-08-2007, 17:10
dipende da cosa intendi per GUI....

GUI = Graphical User Interface

Quindi tutto ciò che va da ?curses/TVision a wxWidgets&Co, dalle GUI sviluppate in Vesa-ModeX-XLib-DirectX-OpenGL-??? a quelle native di uno specifico sistema operativo.

Io per GUI oggi come oggi indendo un programma che si interfacci nativamente (o quasi nativamente) col SO...

Definizione molto, troppo, restrittiva. I comandi EDIT e DOSSHELL del vecchio DOS sono entrambi GUI-based (hanno del menu, dei pulsanti, l'interazione avviene tramite mouse) e si contrappongono ai comandi CUI (Console User Interface).

Quindi GUI != CUI ma GUI != Interfaccia Nativa (o quasi) del Sistema Operativo

^TiGeRShArK^
27-08-2007, 21:44
GUI = Graphical User Interface

Quindi tutto ciò che va da ?curses/TVision a wxWidgets&Co, dalle GUI sviluppate in Vesa-ModeX-XLib-DirectX-OpenGL-??? a quelle native di uno specifico sistema operativo.



Definizione molto, troppo, restrittiva. I comandi EDIT e DOSSHELL del vecchio DOS sono entrambi GUI-based (hanno del menu, dei pulsanti, l'interazione avviene tramite mouse) e si contrappongono ai comandi CUI (Console User Interface).

Quindi GUI != CUI ma GUI != Interfaccia Nativa (o quasi) del Sistema Operativo

appunto per me quella non è una GUI..
non è grafica è solo testo :mbe:
Se l'avesse fatta in modalità vga a 16 colori con qualche disegnino allora l'avrei chiamata GUI :p

P.S.
tra l'altro dosshell aveva una GUI dato ke i disegnini c'erano..
l'EDIT invece manco per niente..
tutta ascii art :p

variabilepippo
28-08-2007, 02:16
Se l'avesse fatta in modalità vga a 16 colori con qualche disegnino allora l'avrei chiamata GUI

P.S.
tra l'altro dosshell aveva una GUI dato ke i disegnini c'erano..
l'EDIT invece manco per niente..
tutta ascii art


Questo la dice lunga sulla tua discutibile definizione di GUI. DosShell, quella che tu consideri una GUI, in realtà è ottenuta da semplici caratteri ASCII, al pari del comando Edit. Gli autori hanno semplicemente ridefinito la grafica degli elementi estesi della tabella ASCII. Un trucco che si usava spesso ai tempi del DOS e che ha ingannato (a quanto sembra continua a farlo) più di un profano... Trucco che mostra quanto sia labile la differenza tra GUI e TUI. :rolleyes:

Per i più curiosi la ridefinizione dei simboli dei caratteri ASCII veniva effettuata tramite uno dei servizi dell'interrupt 0x10 (http://www.ctyme.com/intr/rb-0136.htm):

VIDEO - TEXT-MODE CHARGEN - LOAD USER-SPECIFIED PATTERNS (PS,EGA,VGA)
AX = 1100h
ES:BP -> user table
CX = count of patterns to store
DX = character offset into map 2 block
BL = block to load in map 2
BH = number of bytes per character pattern


Return:
Nothing

Notes: This function will cause a mode set, completely resetting the video environment, but without clearing the video buffer. The current block specifiers may be determined with INT 10/AH=1Bh, looking at offsets 2Bh and 2Ch of the returned data (VGA only) (see AH=1Bh,#00040)

^TiGeRShArK^
28-08-2007, 08:35
Questo la dice lunga sulla tua discutibile definizione di GUI. DosShell, quella che tu consideri una GUI, in realtà è ottenuta da semplici caratteri ASCII, al pari del comando Edit. Gli autori hanno semplicemente ridefinito la grafica degli elementi estesi della tabella ASCII. Un trucco che si usava spesso ai tempi del DOS e che ha ingannato (a quanto sembra continua a farlo) più di un profano... Trucco che mostra quanto sia labile la differenza tra GUI e TUI. :rolleyes:

Per i più curiosi la ridefinizione dei simboli dei caratteri ASCII veniva effettuata tramite uno dei servizi dell'interrupt 0x10 (http://www.ctyme.com/intr/rb-0136.htm):
:rolleyes:
vedi ke non sono io ad avere le idee confuse? :rolleyes:
ti ho spiegato che la TUI (se proprio vogliamo chiamarla così) è quella dell'EDIT.
Dosshell girava in due modalita:
modalità testo (TUI)
modalità grafica (GUI)
Io OVVIAMENTE mi stavo riferendo alla seconda modalità :rolleyes:
ah.. e se non sbaglio la modalità grafica c'era sin dal DOS 5.0.
A meno che tu non abbia mai fatto partire dosshell in modalità grafica e non ne conoscessi l'esistenza :p

E per quanto riguarda la ridefinizione dei simboli dei caratteri ASCII era proprio a quello a cui mi riferivo quando nel post precedente parlavo di "ASCII ART".

variabilepippo
28-08-2007, 10:17
ti ho spiegato che la TUI (se proprio vogliamo chiamarla così) è quella dell'EDIT.

Se dovessimo chiamarla diversamente dovremmo chiamarla GUI, e detto tra noi io sono di questo parere. Per me cercare una differenza tra TUI e GUI è solo un fatto di pedanteria, si può realizzare una TUI e che sembri una GUI e viceversa. Dunque l'unica discriminante, IMHO, è il metodo adottato per interagire con l'utente: se si usano pulsanti, menu e affini (senza tralasciare eventuali "effetti speciali", tipo interfacce 3D o le interfacce tipiche dei videogiochi più recenti) ha senso parlare di GUI - e/o TUI se si vuole essere MOLTO pedanti - altrimenti, se i comandi vanno digitati carattere per carattere su un prompt, si ha un approccio CLI (o CUI).

Io OVVIAMENTE mi stavo riferendo alla seconda modalità

Ho sempre ritenuto la DosShell poco più di un giocattolo, ero un utente di software palesemente più produttivi: 4DOS e Norton Commander. Ho fatto qualche ricerca per trovare immagini della versione "grafica" della DosShell, purtroppo non ho trovato nulla. Puoi mandarmi qualche link? Anche nella voce su Wikipedia (http://en.wikipedia.org/wiki/DOS_Shell):

The shell could be run by the command "dosshell". It had the ability to set simple colours and styles. The shell was one of the first successful attempts to create a basic graphical user interface (GUI) type file manager in DOS, although it is properly (=per chi vive di pignoleria) referred to as a text user interface (TUI).

http://www.mvps.org/serenitymacros/images/dosshell.png

^TiGeRShArK^
28-08-2007, 10:31
http://users.cybercity.dk/~bse26236/batutil/help/DOSSHELS.HTM

Syntax

To start MS-DOS Shell in text mode, use the following syntax:

DOSSHELL [/T[:res[n]]] [/B]

To start MS-DOS Shell in graphics mode, use the following syntax:

DOSSHELL [/G[:res[n]]] [/B]

Screen non credo se ne trovino cmq ora mi faccio un giro.

^TiGeRShArK^
28-08-2007, 10:36
Nope...
Ne ho trovato solo uno simile al tuo...
Se ero dai miei ti facevo una foto dello schermo del 386 :asd:

variabilepippo
28-08-2007, 10:38
E come puoi ben vedere NON è una TUI

E' la versione in bassa qualita ed in B/W dell'immagine postata da me... Quella è una TUI con i caratteri ridefiniti!!! Anche le Norton Utilities usavano il medesimo trucchetto.

To start MS-DOS Shell in graphics mode, use the following syntax:

Per graphics mode intendevano la ridefinizione del set dei caratteri, alternativa al text-mode SENZA ridefinizione. Alcuni preferivano vedere i caratteri standard, altri erano costretti da problemi di compatibilità. Se vuoi ti trovo le immagini della DosShell con i caratteri ASCII NON ridefiniti (=text-mode secondo Microsoft).

^TiGeRShArK^
28-08-2007, 13:03
E' la versione in bassa qualita ed in B/W dell'immagine postata da me... Quella è una TUI con i caratteri ridefiniti!!! Anche le Norton Utilities usavano il medesimo trucchetto.



Per graphics mode intendevano la ridefinizione del set dei caratteri, alternativa al text-mode SENZA ridefinizione. Alcuni preferivano vedere i caratteri standard, altri erano costretti da problemi di compatibilità. Se vuoi ti trovo le immagini della DosShell con i caratteri ASCII NON ridefiniti (=text-mode secondo Microsoft).

si vabbè..
POI mi sono accorto che era la stessa della tua.
La versione che dico io aveva tutti i bordi delle finestre arrotondati, i bottoni ovali e la FRECCIA del mouse disegnata e non un semplice rettangolino.
Era in risoluzione EGA o VGA a 16 colori.

variabilepippo
28-08-2007, 13:07
La versione che dico io aveva tutti i bordi delle finestre arrotondati, i bottoni ovali e la FRECCIA del mouse disegnata e non un semplice rettangolino.

Appena ho un po' di tempo installo MS-DOS 6.22 dai dischi originali in una macchina virtual vmWare e controllo, poi documenterò con qualche screenshot.