Software > Coding

"opening lower border" in GEM?

<< < (8/8)

thh:

--- Zitat von: Thorsten Otto am So 10.04.2022, 11:42:06 ---Evtl. müsste man sich auch Gedanken machen wie man den Bildschirmspeicher besser allozieren kann. Momentan wird er Teil des residenten Programms, was bedeutet daß er a) nicht mehr wie sonst am Ende des Speichers ist und b) der vorherige Bildschirmspeicher von 32k damit brach liegt und nicht mehr genutzt werden kann.

--- Ende Zitat ---

Schau mal in die Sourcen von meiner "SCREENPLUS 2" Variante, das hatte ich damals so geändert, dass der alte Bildschirmspeicher möglichst übernommen wird.

Thorsten Otto:
Muss ich nochmal checken, aber übernehmen kann man den ja nicht so einfach. Der liegt normalerweise am Ende des physischen Speichers, der neue ist aber grösser. phystop nach unten schieben geht auch nicht so einfach, da alles von membot-phystop schon von GEMDOS verwaltet wird.

Aber erstmal muss das überhaupt laufen. Habe bisher noch keine sonstige Rückmeldung erhalten.

thh:

--- Zitat von: Thorsten Otto am Sa 16.04.2022, 16:41:11 ---Muss ich nochmal checken, aber übernehmen kann man den ja nicht so einfach. Der liegt normalerweise am Ende des physischen Speichers, der neue ist aber grösser. phystop nach unten schieben geht auch nicht so einfach, da alles von membot-phystop schon von GEMDOS verwaltet wird.

--- Ende Zitat ---

Doch, geht recht einfach so lange SCRPLUS recht früh im AUTO-Ordnr ausgeführt wurde, sogar ohne sich mit den System-Variablen rumzuschlagen. Der Trick ist, mit Malloc(-1) den größten Block zu suchen und zu allozieren. Der endet dann in der Regel genau am alten Bildschirmspeicher. Dann kann man den größten Block mit Mshrink() um die benötigte zusätzliche Speichermenge verkleinern und gleich drauf die zusätzliche Speichermenge Malloc'en - dann hat man einen Block genau vorm alten Bildschirmspeicher. Dann noch den größten Block wieder freigeben, und man hat jede Menge Speicher gespart.

czietz:
Ich sehe gerade, dass ich zum Thema Software-Overscan in Mono in einem anderen Forum gepostet hatte, aber die Infos nicht hier her übertragen hatte. Sorry! Ich zitiere mich mal selbst, ohne Übersetzung:

----
Patching the "Mono-No-Border Screen" demo (https://demozoo.org/productions/73157/) to run with an inverted screen, i.e., white background, explains what I meant:



As you can see: Yes, it manages to display the scroll text below what would normally be the lower border of the monochrome screen. But it doing so, it massively messes with HSYNC, causing one very long line and, thus, very visible artifacts. You can see the analog electronics in the deflection circuitry of my poor SM124 slowly settling again during the next lines. I guess this is what troed is referring to when he says "you can't perform a sync-clean opening" [in monochrome]. The demo just hides all that in the black background; but you can't use it with arbitrary programs.
----

PS: Troed, sicherlich der Experte bzgl. Overscan-Tricks, hat meine Schlussfolgerung bestätigt.

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln