Im Basic des CPCs hat man ja eine Grafikauflösung von 640x400 Bildpunkte.Und die wird ja umgesetzt auf die Auflösung des CPCs. Frage: Warum wurde das gemacht?
Kann der Grafikchip gar mehr?
Gab ja mal in einer Zeitschrift ein Programm mit Interlace Modus.
Warum hat man diese 400er Auflösung vom Basic aus??
Quote from: harzretro on 19:57, 19 February 25Warum hat man diese 400er Auflösung vom Basic aus??
Die logische Auflösung 640x400 macht es einfacher für den Programmierer in jeder Auflösung die richtigen Verhältnisse zu behalten ohne kompliziert umzurechnen.
Stell dir vor, du willst einen Kreis machen, der über die gesamte Bildschirmhöhe geht.
Bei 640x200 müssten es in y-Richtung 100 Pixel sein, während es in x-Richtung 200 sind.
Bei 320x200 währen es in beide Richtungen 100 Pixel.
Bei 160x200 wären es hingegen in x-Richtung nur 50 Pixel und in y-Richtung weiterhin 100 Pixel.
Nimmt man stattdessen in allen Modi 640x400, dann kann man immer in x- und y-Richtung 200 Pixel nehmen und erhält in allen Auflösungen einen sauberen Kreis.
Daran habe ich auch mit gedacht bei der Nutzung.
Und doch frage ich mich ob es so beabsichtigt war oder nicht doch eine höhere Auflösung angedacht gewesen sein könnte.
:)
Quote from: harzretro on 21:02, 19 February 25Und doch frage ich mich ob es so beabsichtigt war oder nicht doch eine höhere Auflösung angedacht gewesen sein könnte.
Eher nicht.
- 640x400 braucht 32K Speicher, d.h. man hätte nur noch 32K übrig für alles andere
- der Z80 tut sich schon schwer damit 16K schnell zu bearbeiten, Bei 32K wäre das nur noch lahm
- 640x400 braucht einen Monitor mit höherer Zeilenfrequenz. Amstrad hätte also keine billigen TV-Röhren nehmen können
- Für 640x400 reicht die Bandbreite auf dem Datenbus nicht mehr aus. Der CPC hätte mit 8MHz laufen müssen, damit sich CPU und Grafik weiterhin den Bus hätten teilen können - mit entsprechend höheren Kosten für die schnellere Hardware
Randnotiz: löst man all die "Probleme" hat man quasi einen Atari ST.
Quote from: harzretro on 21:02, 19 February 25Daran habe ich auch mit gedacht bei der Nutzung.
Und doch frage ich mich ob es so beabsichtigt war oder nicht doch eine höhere Auflösung angedacht gewesen sein könnte.
:)
Nein der Grund war tatsächlich die Screenmode unabhängige Programmierung. Egal in welchem Modus, die Pixel erscheinen immer an der selben Stelle, und da hatte 640x400 auch wegen des Seitenverhältnisses am besten gepasst.
Wie Eto sagte, ein heimlich geplanter erweiterter Screenmode hatte damit ganz sicher nichts zu tun gehabt.
Das CPC-OS hat damit bereits in gewisser Weise "platformunabhängig" gearbeitet. Ähnliches sieht man auch bei den Textausgabe Routinen, das war alles schon extremst gut designed.
Das ist etwas was mir auch schon als Kind aufgefallen war das man dadurch schnell seine Basic Programme in verschiedenen Auflösungen testen konnte.
Fand das sehr angenehm - im Gegensatz zum PC oder dem C128 ....