Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Demoprogramm: Smilies im Terminalprogramm Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Dietmar, Homepage - 8.10.2020 19:50)
Dietmar nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, Open-Maxi, Open-Mini Station
' ===========================================================================
' Demoprogramm: Smilies im Terminalprogramm - Mit TERMINAL32.EXE betrachten!
' In OCBASIC 1.11a für Open-Maxi von Dietmar Harlos am 08. Oktober 2020
' ===========================================================================

' Im ZIP-Archiv des OCBASIC-Compilers befindet sich im Verzeichnis OM das
' entsprechende Beispielprogramm namens SMILEY.BAS für Open-Micro, Open-Mini
' und Open-Midi.

' --- Definitionen ----------------------------------------------------------

INCLUDE "omax.def"        'Definitionen für die Open-Maxi

DIM bytenr  BYTE          'Variablen
DIM daten   BYTE
DIM msb     BIT [8] OF daten
DIM bitnr   BYTE
DIM zeile   BYTE
DIM tablenr BYTE

' --- Hauptprogramm ---------------------------------------------------------

PUT 12                    'CLS im Terminal

WHILE TRUE

  FOR tablenr=0 TO 3
    PUT 11                'HOME im Terminal
    FOR zeile=0 TO 17
      FOR bytenr=0 TO 1
        IF tablenr=0 THEN
          outbyte LOOKTABBYTE(tab1,zeile*2+bytenr)
        ELSEIF tablenr=1 THEN
          outbyte LOOKTABBYTE(tab3,zeile*2+bytenr)
        ELSEIF tablenr=2 THEN
          outbyte LOOKTABBYTE(tab1,zeile*2+bytenr)
        ELSEIF tablenr=3 THEN
          outbyte LOOKTABBYTE(tab2,zeile*2+bytenr)
        END IF
      NEXT bytenr
      PRINT
    NEXT zeile
  NEXT tablenr

WEND

End2Host=ON               'Bei Programmende gleich in den Host-Modus wechseln
END                       'Programmende, Neustart per Enter-Taste

' --- Subroutinen und Funktionen --------------------------------------------

PROC outbyte(daten)
  FOR bitnr=0 TO 7
    IF msb THEN           'Most Significant Bit gesetzt?
      PRINT "**";
    ELSE
      PRINT "  ";
    END IF
    daten=daten SHL 1     'den Rest eine Stelle nach links schieben
  NEXT bitnr
  RETURN
END PROC

' --- Tabellen --------------------------------------------------------------

TABLE tab1 BYTE
  &b00000111 &b11100000
  &b00011111 &b11111000
  &b00110011 &b11001100
  &b01100101 &b10010110
  &b01100101 &b10010110
  &b11100101 &b10010111
  &b11110011 &b11001111
  &b11111111 &b11111111
  &b11111110 &b01111111
  &b11111110 &b01111111
  &b11111110 &b01111111
  &b11101110 &b01110111
  &b11100111 &b11100111
  &b01110011 &b11001110
  &b01111000 &b00011110
  &b00111111 &b11111100
  &b00011111 &b11111000
  &b00000111 &b11100000
  &b00000000 &b00000000
END TABLE

TABLE tab2 BYTE
  &b00000111 &b11100000
  &b00011111 &b11111000
  &b00110011 &b11111100
  &b01100101 &b11111110
  &b01100101 &b11111110
  &b11100101 &b10110111
  &b11110011 &b11001111
  &b11111111 &b11111111
  &b11111110 &b01111111
  &b11111110 &b01111111
  &b11111110 &b01111111
  &b11101110 &b01110111
  &b11100111 &b11100111
  &b01110011 &b11001110
  &b01111000 &b00011110
  &b00111111 &b11111100
  &b00011111 &b11111000
  &b00000111 &b11100000
  &b00000000 &b00000000
END TABLE

TABLE tab3 BYTE
  &b00000111 &b11100000
  &b00011111 &b11111000
  &b00110011 &b11001100
  &b01101001 &b10100110
  &b01101001 &b10100110
  &b11101001 &b10100111
  &b11110011 &b11001111
  &b11111111 &b11111111
  &b11111110 &b01111111
  &b11111110 &b01111111
  &b11111110 &b01111111
  &b11101110 &b01110111
  &b11100111 &b11100111
  &b01110011 &b11001110
  &b01111000 &b00011110
  &b00111111 &b11111100
  &b00011111 &b11111000
  &b00000111 &b11100000
  &b00000000 &b00000000
END TABLE

' --- Programmende ---------------------------------------------------------


Passender Link: Smilies vom C-Control-1-Forum

Meine Homepage: http://ccintern.dharlos.de

 Antwort schreiben

Bisherige Antworten:

Re: Demoprogramm: Smilies im Terminalprogramm (von Joachim - 8.10.2020 20:15)