Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » Bildschirmprogrammierung A5120 » Themenansicht

Autor Thread - Seiten: -1-
000
04.06.2010, 23:40 Uhr
Greon



Hallo Leute,
da das Basic unter SPC kein LOCATE und PRINT AT kennt, benutze ich zur Cursorpositionierung folgendes: PRINT CHR$(27)+CHR$(Zeile)+CHR$(Spalte); - was soweit auch funktioniert, ausser wenn Spalte = 8 oder 9 ist, dann wird es als Steuerzeichen interpretiert. Weiß jemand Rat oder eine Alternative?

Zweite Frage: Wie kann ich mittels Assembler direkt auf den Bildspeicher zugreifen (Umschaltung Arbeitsspeicher/Bildspeicher)? Ich habe mal in den CPA-Quellen gewühlt und habe Verweise auf die Macros "setbs" und "setram" gefunden, jedoch nicht den zugehörigen Code.

Gruß Olaf

Dieser Beitrag wurde am 04.06.2010 um 23:48 Uhr von Greon editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
05.06.2010, 12:23 Uhr
ThomasR

Avatar von ThomasR

Hallo Olaf,

Zitat:
... benutze ich zur Cursorpositionierung folgendes: PRINT CHR$(27)+CHR$(Zeile)+CHR$(Spalte);

bist Du sicher, daß der Befehl so lautet? Nach meinem Gefühl fehlt hier der Code, der unter den (vielen durch PRINT CHR$(27); eingeleiteten) Escape-Sequenzen die gewünschte präzisiert; bei Dir folgen ja gleich die Argumente/Parameter.
Im Basic zu einem anderen CP/M-Computer habe ich folgende Syntax gefunden:
PRINT CHR$(27);"Y";CHR$(32+zeile);CHR$(32+spalte);
Zur zweiten Frage weiß ich nicht, ob das nur über Systemvariablen oder nur hardwareabhängig über die betreffenden RAM-Adressen geht.

Gruß Thomas
--
Tot wie ein Dodo?
viele Informationen zu BasiCode auf basicode.de

Cu via komputilo povas Esperanto?
Jes, BasiCode!

Dieser Beitrag wurde am 05.06.2010 um 12:23 Uhr von ThomasR editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
05.06.2010, 13:46 Uhr
holm

Avatar von holm

Mankann eine Speicherumschaltung ins CP/A integrieren so das der BWS RAM aus dem normalen Speicher ausgeblendet wird. Der Vorteil wäre mehr TPA, ner Nachteil, das sämtliche Ausgaben über das BIOS laufen müssen und direkter Zugriff zum BWS Speicher vom Anwenderprogramm aus nicht mehr möglich ist, es sei denn, es implementiert die selbe Umschaltung.
Wordstar kann z.B. direkt in den BWS schreiben wenn im Configbereich das so angegeben ist,
entsprechend schnell ist der Bildaufbau und z.B. scrollen usw. Dies wird deutlich langsamer wenn die Ausgabe Einzelzeichenweise über das BIOS erfolgen muß.

Die ganze Mimik wird Dir von Basic aus wenig nützen, Du kannst aber den BWS auch mit Peek und Poke behandeln..

Gruß,

Holm
--
float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v;
{s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+
(r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&&
(A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;}
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
05.06.2010, 13:54 Uhr
felge1966
Default Group and Edit


@greon
Denke aber auch daran, daß du beim direkten Schreiben in den Bildschirmram immer erst abprüfen mußt, welche Karte in dem Rechner steckt. Ansonsten fabrizierst du eine inkompatible Software, die nur auf einen Teil der Rechner läuft (entweder BAB1 oder BAB2)
--
http://felgentreu.spdns.org/bilder/jacob120.gif
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
09.06.2010, 23:19 Uhr
Greon



Die Lösung Teil 1 - es muß richtig heißen:
PRINT CHR$(27)+CHR$(Zeile+80h)+CHR$(Spalte+80h)

@holm: Ja klar - da habe ich den Wald vor lauter Bäumen nicht gesehen und nicht daran gedacht, dass der BWS standardmäßig eingeblendent ist.
Das ganze war allerdings auch nicht für o.g. Aufgabestellung gedacht, sondern für ein Testprogramm für's Boot-EPROM.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek