Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Schirm sichern ohne Screen, in Konsole

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Eastler_dart



Anmeldungsdatum: 25.09.2005
Beiträge: 177
Wohnort: Baden-Würtemberg + Sachsen

BeitragVerfasst am: 26.11.2005, 22:26    Titel: Schirm sichern ohne Screen, in Konsole Antworten mit Zitat

So Leute, jetzt habt Ihr mich soweit,
jetzt hab ich auch mal ne Anfängerfrage geschockt

Steh halt aufm Schlauch, mächtig sogar.


Hab ein altes Qbasic-Programm. (wer hat das nicht)
Und benutze es noch regelmäßig auf nem alten 486er Laptop
(für n Sport, ne Spielauswertung)

Jetzt kam der Moment, wo ich dat Dings auch weitergegeben hab.
Ein Mitsportler. Daß der auch mal mit seinem Lap mittippen kann,
wenn ich mal nicht dabei bin. Auch gut.
War nur ne mords Knofelei, bis das Prog unter seinem XP auch
wirklich startete. Qbasic.exe-Interpreter etc. mit rüberkopiert (V 1.1).
Immer noch nicht weltbewegend, oder?

Dabei hat sich dann gezeigt, wo das Prog bei mir manchmal abstürzt, läuft es auf seinem Lap voll durch. Hm.

In dem Zusammenhang versuche ich nun grad, das Prog so wie es ist mit nur kleinen Änderungen in ne EXE zu verwandeln. QB.exe (V4.5) scheint ja dafür prädestiniert zu sein. Einlesen damit, Kompilieren und gut.
weinen Is nich weinen
Hab diesbezüglich schon im Qbasic-Forum geposted, das ist eine sehr harte Nuß.

Deshalb jetzt noch viel mutiger: ich machs mit FreeBasic-Dos. lächeln

Na ja, Traumwelt und Realität, Ihr kennt das ja. Ganze Kette von Fehlermeldungen von Freebasic schon rauseditiert, mittlerweile kompiliert FreeBasic014b-DOS (auch -WIN) das Ding.

Hab das meißte schon hingekriegt, aber an zwei Subroutinen häng ich nun voll durch:

Die Bildschirmsicherung und -restaurierung.

BESCHREIBUNG: Im Programmablauf entsteht eine Bildschirmanzeige, die super läuft. Nur bei Sonderbedingungen (Sonderanzeigen wie Programmrückfragen J/N) öffnen sich "Fenster" über dieser Anzeige. Nach Rückantwort des Users sollte das Fenster wieder verschwinden, die Eigentliche Anzeigetabelle wieder voll sichtbar sein. Das war mittels DEF SEG und BSAVE in eine Datei konstruiert.

TECHNISCHES: in dem Prog gibt es keinen SCREEN-Befehl. Nach meiner Auffassung sag ich mal, es läuft im Text-Modus.
Wenn ich mit meinem 486er-Lap damit arbeite, ist Dos6.22 das Betriebssystem, wenn der Sportkollege damit tippt, dann unter XP.

FRAGE 1:
Hatte schon mal ein "Screen"-FreeBasic-Prog mit Line()-()s und DRAWs under Dos laufen lassen,
maximal Print"Text" wurde angezeigt, auf die Screenanweisung wird unter Dos wohl gar nicht reagiert? (640x480x8bit hätt ich gerne) bzw. sind Grafiklinien etc unter DOS nicht möglich?

FRAGE 2: (aber nicht lachen)
Wie kann ich im "Textmodus" den gesamten Bildschirminhalt in Dateien sichern und nach Bedarf wieder herstellen?
( BSAVE SDatei$, 0, 4000 <=> geht nicht! , auch nicht mit 64000 als Größe, Bsave wird ja in der FreeBasic-Hilfe auch als Grafikbefehl beschrieben)
_________________
Kaum macht mans richtig, schon geht's
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen Yahoo Messenger
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 26.11.2005, 22:56    Titel: Antworten mit Zitat

Zu Frage 2:
Du müsstest vor das
Code:

BSAVE Datei$, 0, 4000

noch ein
Code:

DEF SEG = &HB800

schreiben, und das nachher mit
Code:

DEF SEG

wieder abschalten.
Dadurch wird auf den Textbildschirm geschaltet.
Sollte so eigentlich klappen.

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Eastler_dart



Anmeldungsdatum: 25.09.2005
Beiträge: 177
Wohnort: Baden-Würtemberg + Sachsen

BeitragVerfasst am: 26.11.2005, 23:35    Titel: Antworten mit Zitat

Ja, JB, das ist genau das, was ich auch kenne. Und so stehts auch im Alten Listing drinne.

Nur, FreeBasic kennt keine Segmente mehr! Durch die 32-Bit kann Freebasic ohne Segmentansätze direkt bis sonstwohin Speicherstellen adressieren.
Der FreeBasicCompiler sagt beim Kompilieren mit DEF kann er nix anfangen, er meint zwischen DEF und SEG sollte ein = oder * oder sonstwas. weinen

Und deshalb gehen mir auch die Ideen dazu aus. Hab noch nicht viel mit Freebasic unter DOS gemacht.

vielleicht sollte ich doch nochmal probieren, eine Screen-Anweisung zu verwenden, 640x480 in monochrom oder so, daß dadurch dann BSAVE / BLOAD eine Grundlage (Grafik) haben. Im alten Prog gibts ja keine LINEs oder DRAWs. Was meint Ihr?
_________________
Kaum macht mans richtig, schon geht's
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen Yahoo Messenger
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 26.11.2005, 23:53    Titel: Antworten mit Zitat

Hi,
schau dir mal den Beitrag aus dem engl. Forum an.
http://www.freebasic.net/forum/viewtopic.php?p=8479#8479
Da ging es um das gleiche Thema!
Gruß
Volta
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 27.11.2005, 14:07    Titel: Antworten mit Zitat

Hab ich ganz vergessen, dass das unter FB nicht mehr geht...
Naja, alternativ könnte man den Bildschirm ja auch mit SCREEN(x, y) abtasten...

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz