home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / EFFO / forum14.lzh / LETTERS / brief.nehring < prev    next >
Text File  |  1990-10-29  |  8KB  |  143 lines

  1. Hubert Nehring                                                  30.09.90
  2. Dahlemer Str. 4
  3. D-5090 Leverkusen 1
  4.  
  5.  
  6. Hallo,
  7.  
  8. bei mir laeuft OS-9 auf einem mc 68000 (System I) mit 2,5 MByte RAM, einem
  9. 5 1/4" Floppy-Laufwerk und einer 65 MByte Festplatte. 
  10.  
  11. Durch einen kleinen Hardwaretrick (ein IC, etwas Draht und einige verbogene
  12. Beinchen, s.u.) ist es mir gelungen, die Bildschirmaufloesung auf 640x300
  13. Punkte zu erhoehen.  Prinzipiell ist es auch moeglich andere (hoehere) Auf-
  14. loesungen zu realisieren, mein Monitor macht aber nicht mehr als 300 Zeilen
  15. mit (Ich bin so schon ein klein wenig ueber die Frequenzgrenzen gegangen - er
  16. wird mir schon nicht gleich um die Ohren fliegen).  Es jetzt moeglich, die
  17. Zeichen in einer 8x12 Matrix mit besseren Unterlaengen und mit Unterstreichung
  18. darzustellen.  Dadurch sind auch die dunklen Zwischenzeilen im Textmodus
  19. ueberfluessig, so dass nicht mehr zwischen Text- und Graphikmodus unter-
  20. schieden werden muss.  Das ganze funktioniert natuerlich nur mit einem neuen
  21. Terminaltreiber, den ich zur Zeit schreibe (Er laeuft schon recht stabil ist
  22. aber noch nicht fertig.).  Bei Bedarf werde ich ihn auf einer der naechsten
  23. EFFO-Forum-Disketten einschicken.
  24. << Wir werden den Terminaltreiber gerne veroeffentlichen. Auch aus der
  25.    Software-Kueche der Firma VCS Computer Systeme GmbH (Goethestrasse 17,
  26.    D-8000 Muenchen 2, Tel. 089/59'12'21, Fax 089/523'67'26) gibt's einen
  27.    neuen Konsoltreiber. Aber nur fuer den mc 68.000-II. Dazu folgendes
  28.    aus der Erweiterungspreisliste vom September 1990:
  29.       Konsoltreiber fuer mc 68.000-II
  30.       Mit dem neuen Konsoltreiber kann mit einer variablen Zeilenzahl
  31.       von 25 - 50 Bildschirmzeilen gearbeitet werden. Ueber einen neuen
  32.       Deskriptor koennen beliebige Initialisierungswerte fuer die CRTC
  33.       6845 festgelegt werden. So kann der mc 68.000-II / 12.5 MHz mit
  34.       35 Zeilen und Ablenkfrequenzen von 32 kHz / 60 Hz betrieben werden.
  35.       Ausserdem wurden die Ausgaberoutinen des Treibers stark verbessert,
  36.       so dass sich trotz des groesseren Graphikspeichers bei 35 Zeilen
  37.       keine Geschwindigkeitsverluste ergeben. Mit dem Treiber werden zwei
  38.       verschiedene Zeichensaetze mitgeliefert, die den vollstaendigen
  39.       PC-Zeichensatz enthalten (8-Bit ASCII).
  40.    Interessenten werden gebeten, sich direkt an oben genannte Firma zu
  41.    wenden. THGSCH >>
  42.  
  43. Der Treiber unterstuetzt ein zweites virtuelles Terminal.  Zwischen den beiden
  44. Terminals kann mit Ctrl-Esc umgeschaltet werden.  Ich habe einen IBM-Zeichen-
  45. satz implementiert - damit koennen dann auch mit Hilfe von Blockgraphikzeichen
  46. Rahmen fuer Fenster gezeichnet werden (es gibt ja keinen stoerenden dunklen
  47. Zwischenzeilen mehr) und Drucker mit IBM-Zeichensatz gibt es ja auch genug. 
  48. Als naechstes steht die Anpassung an eine Tastatur mit MF-2 Layout sowie eine
  49. Graphikunterstuetzung an.
  50.  
  51. Die sauberste Moeglichkeit Graphikfunktionen zu implementieren ist sicherlich,
  52. sie als GetStat- bzw.  Putstat-Funktionen in den Treiber einzubauen. 
  53. Microware hat dafuer aber offensichtlich keine Funktionen definiert (stimmt
  54. das ???).
  55. << Seit uWare am CD/I herumbastelt, wimmelt es im funcs.a-file (so ab V2.3)
  56.    von Definitionen fuer Graphik, Maeuse und dergleichen. Da RAVE (Industrie-
  57.    Graphikoberflaeche fuer OS-9) bereits released ist und CD/I (Compact-Disk
  58.    Interactive) unmittelbar bevorsteht, waere es wohl fuer alle Graphik-
  59.    Programmierer empfehlenswert, sich die entsprechende Dok mal anzuschauen.
  60.    LZ >>
  61. Gibt es ausserhalb der Vorgaben von Microware eine verbreitete
  62. Konvention von Funktionenummern und Uebergabeparametern? Koennte man sich
  63. nicht EFFO-weit auf einen Satz elementarer Funktionen fuer Treiber graphik-
  64. faehiger Terminals einigen? Oder, wenn das zu schwierig ist: Wie waere es mit
  65. einer Einigung bezueglich der Syntax elementarer Graphikfuntkionen fuer
  66. C-Programme.  Auf diese Weise wuerde der Austausch von Graphiksoftware sehr
  67. erleichtert.  Unterschiedliche Aufloesungen und Faehigkeiten von Treibern und
  68. Terminals koennten durch Descriptor-Tabellen, die die Treiber ausfuellen,
  69. beruecksichtigt werden.  Warum sollte denn jeder sein eigenes Funktionen-
  70. sueppchen kochen?
  71. << Nur das nicht !! :-) :-) LZ >>
  72.  
  73. Wie waer's mit einem regen Gedankenaustausch?
  74.  
  75. Hubert
  76.  
  77.  
  78. p.s. In diesem post scriptum will ich - trotz aller Probleme - versuchen mit
  79.     Hilfe des ASCII-Zeichensatzes meinen Schaltungstrick zu beschreiben.
  80.     
  81.     Der im mc68000 verwendete CRTC 6845 kann bei entsprechender Programmierung
  82.     prinzipiell auch Zeichen mit mehr als 8 Rasterzeilen darstellen.  Beim
  83.     mc68000 wird allerdings die dazu noetige Leitung RA3 (Pin 35) nur dazu
  84.     verwendet, das Videosignal dunkel zu schalten und damit die dunklen
  85.     Rasterzeilen im Textmodus zu erzeugen.  Wenn man also diese Leitung dazu
  86.     nutzt, das Video-RAM anzusprechen (so wie es eigentlich gedacht ist), ist
  87.     man schon am Ziel.  Eben das macht meine kleine Schaltung: mit Hilfe eines
  88.     Multiplexers (74LS157) kann zwischen dem Originalmodus (ist wichtig beim
  89.     Booten und beim Arbeiten mit dem System Debuger) und dem neuen Modus hin-
  90.     und hergeschaltet werden.  Der CRTC 6845 muss natuerlich auch um-
  91.     programmiert werden.  Zur Umschaltung des Multiplexers verwende ich die
  92.     Leitung fuer den Ausgang zum Kassettenrecorder - wer braucht die
  93.     eigentlich noch?
  94.  
  95.                                   +      -
  96.                                   ^      ^
  97.                                   |      |
  98.                                   |16    |8
  99.        --------+                +-----------+
  100.                |                |           |           
  101.          6845  |                |  74LS157  |               6845-Sockel
  102.                |                |           |
  103.                |                |           |
  104.                | 35           3 |           |
  105.           RA 3 |-------o--------| B1        | 4
  106.                |       |      2 |        Y1 |----------> RA 3 (Pin 35)
  107.                |       |    +---| A1        |
  108.                |       |    |   |           |
  109.                |       |    -   |           |
  110.                |       |        |           |
  111.                | 16    |     12 |           |
  112.           MA12 |-------+--------| B2        | 13
  113.                |       |     14 |        Y2 |----------> MA 12 (Pin 16)
  114.                |       +--------| A2        |
  115.                |                |           |
  116.                |                | Sel       |
  117.         -------+                +-----------+
  118.                                   |1      |15
  119.                                   |       |
  120.                                   |       -
  121.                                   |
  122.                                   V
  123.                                   
  124.                                  VIA PA1-L (IC 55, Pin 3)
  125.  
  126.     Nach einem Reset ist die VIA-Leitung PA1-L auf H, die Ansteuerung des
  127.     Video-Teils ist dann im Originalmodus.
  128.  
  129.     Der Multiplexer muss also zwischen den 6845 und seinem Sockel geschaltet
  130.     werden. Dazu biegt man am bessten die Beinchen 35 und 16 nach oben und
  131.     fuehrt die Ausgaenge des 74LS157 in die nun freien Loecher des Sockels. Es
  132.     ist also ein fliegender Aufbau angesagt. Wichtig ist noch, dass das VIA- 
  133.     Beinchen unbedungt aus dem Sockel gezogen wird - sonst stoert Spannungs- 
  134.     teiler am Kasettenrecorderteil.
  135.  
  136.     Zu beachten ist beim neuen Modus noch, dass jetzt pro Bildschirmseite 32
  137.     KByte (statt bisher 16) beansprucht werden, so dass die Standard-
  138.     Bildschirmseite nicht benutzt werden kann.  Man muss also auf die Seiten
  139.     28/29 ausweichen (Basisadresse von Seite 28).  Ausserdem sollte man dafuer
  140.     sorgen, dass dieser Speicherbereich nicht als RAM-Disk verwendet wird
  141.     (gegebenenfalls r0.a aendern). 
  142.  
  143.