Die Suche ergab 233 Treffer

von bbock
27.12.2021, 19:31
Forum: Programmierung
Thema: Formulareingabe mit Turbo Pascal
Antworten: 7
Zugriffe: 8504

Re: Formulareingabe mit Turbo Pascal

Version 2.3 unterstützt Pflichtfelder, Buttons werden nach Funktion unterschieden (Ok, Cancel, Other), es gibt weitere Hilfsfunktionen, darunter eine Funktion zur Prüfung, ob das Formular mit einem Cancel Button abgebrochen wurde.
Die Bedienung der Eingabefelder wurde um eine Taste erweitert: ein Druck auf CAN (bzw. Bild^ im Emulator CP/M Box) leert das aktuelle Feld komplett.

Der Funktionsumfang ist für meine Wünsche nun komplett. Nützliche Ergänzungen wären vielleicht noch Auswahl- und Optionsfelder - mal sehen, wann ich Zeit dafür habe. :)

FORMS23.zip
Die Include-Dateien von FORMS v2.3
(6.73 KiB) 491-mal heruntergeladen
FORMS23_Doku.zip
Dokumentation zu FORMS v2.3
(116.14 KiB) 485-mal heruntergeladen
von bbock
25.12.2021, 14:41
Forum: Programmierung
Thema: Formulareingabe mit Turbo Pascal
Antworten: 7
Zugriffe: 8504

Re: Formulareingabe mit Turbo Pascal

Version 2.2 unterstützt auch Laufwerksangaben im Dateinamen (Feldtyp FTFileName); die Datumseingabe wurde ebenfalls etwas verbessert: man kann jetzt nicht mehr den 43.12.2021 eingeben. ;)
Die wichtigste Neuerung ist aber die Änderung im Aufruf von InitFormElements und InitForm: die beiden Prozeduren haben jetzt einen Formulaindex-Parameter, wodurch in einem Programm mehrere Formulare verwendet werden können. Das Beispielprogramm test3 in der Dokumentation wurde entsprechend erweitert, um die neue Funktion zu demonstrieren.

FORMS22.zip
Die Includedateien von FORMS v2.2
(6.01 KiB) 439-mal heruntergeladen
FORMS22_Doku.zip
Dokumentation zu FORMS v2.2
(108.22 KiB) 418-mal heruntergeladen
von bbock
23.12.2021, 16:09
Forum: Programmierung
Thema: Formulareingabe mit Turbo Pascal
Antworten: 7
Zugriffe: 8504

Formulareingabe mit Turbo Pascal

Für eine komfortable Eingabe sind die Standardprozeduren von Turbo Pascal zu rudimentär. Ich habe mir die Mühe gemacht, eine Formular-Erweiterung zu schreiben, die ohne viel Aufwand per Include-Dateien in eigene Programme eingebunden werden kann. Eine Herausforderung war dabei, das Ganze möglichst als "black box" zu realisieren, obwohl Pascal keine gute Unterstützung für Modularisierung bietet.

Um Formulare zu verwenden, muss man nur
  1. die Include-Dateien einbinden
  2. das Formular per InitFormElements-Prozedur definieren
  3. InitForm und ProcessForm aufrufen
  4. die Benutzereingaben auslesen und ggf. konvertieren
Näheres - u.a. ein Beispielprogramm - ist der Dokumentation zu entnehmen.

FORM21.zip
Die Include-Dateien
(5.94 KiB) 502-mal heruntergeladen
FORMS2_Doku.zip
Dokumentation als PDF-Datei
(106.07 KiB) 448-mal heruntergeladen

Es stehen bereits weitere Ergänzungen auf der TODO-Liste:
  • Dateinameneingabe mit Laufwerksbuchstaben (bisher geht z.B. nur HELLO.TXT, aber nicht B:HELLO.TXT)
  • Unterstützung der ESC-Taste um Änderungen in einem Feld zu verwerfen
  • Pflichtfelder
von bbock
22.12.2021, 20:00
Forum: Programmierung
Thema: Wann habt ihr zuletzt ein Apfelmännchen programmiert?
Antworten: 21
Zugriffe: 84589

Re: Wann habt ihr zuletzt ein Apfelmännchen programmiert?

Version 2.0 vereinfacht die Eingabe benutzerdefinierter Ausschnitte durch den Einsatz eines neu entwickelten Formular-Moduls. Man kann nun zwischen den Eingabefeldern hin- und herwechseln und es werden nur zulässige Tastendrücke akzeptiert. Zur Bestätigung drückt man Return, wenn der Cursor sich auf der OK-Schaltfläche befindet, zum Stornieren drückt man Return auf der Abbrechen-Schaltfläche. Details zum neuen Formular-Modul kommen demnächst hier im "Programmierung"-Forum.

APFELM20_src.zip
Quellcode von V2.0
(10.41 KiB) 471-mal heruntergeladen
APFELM20_com.zip
Ausführbares COM-Programm V2.0
(10.37 KiB) 467-mal heruntergeladen
von bbock
13.11.2021, 15:33
Forum: Programmierung
Thema: Wann habt ihr zuletzt ein Apfelmännchen programmiert?
Antworten: 21
Zugriffe: 84589

Apfelmännchen mit TurboPascal

Das Berechnen von Apfelmännchen-Grafiken benötigt auf 8-Bit-Rechnern viel Zeit und Geduld. So kann es nicht schaden, wenn man eine Compiler-Programmiersprache verwendet, mit der man schneller zum Ziel kommt als mit einem BASIC-Interpreter. Daher habe ich ein Apfelmännchen-Programm in TurboPascal entwickelt.

APFELM10 ist die Version 1.0 des Programms; es bietet folgende Features:
  • Zeichnen des Standard-Apfelmännchens (x: -2.05 bis 0.75, y: -0.9625 bis 0.9625) mit geschwindigkeitsoptimierter Iteration.
  • Zeichnen eines benutzerdefinierten Ausschnitts. Hierbei werden die x- und y-Bereiche und die maximale Iterationstiefe angegeben.
  • Umschalten zwischen normalem und Vorschau-Modus. Im Vorschau-Modus sind die Punkte 4x4 Pixel groß, d.h. das Bild hat eine wesentlich niedrigere Auflösung, wird dafür aber auch wesentlich schneller berechnet.
Als Dezimalzeichen ist das Komma einzugeben.

x: 0,435396403 bis 0,451687191<br />y: 0,367981352 0,380210061<br />max. It.: 150
x: 0,435396403 bis 0,451687191
y: 0,367981352 0,380210061
max. It.: 150
apfelm_2.png (134.38 KiB) 10869 mal betrachtet
APFELM10_com.zip
Ausführbares COM-Programm V1.0
(9.02 KiB) 476-mal heruntergeladen
Standard-Apfelmännchen
Standard-Apfelmännchen
apfelm_1.png (58.53 KiB) 10869 mal betrachtet
APFELM10_src.zip
Quellcode von V1.0
(6.14 KiB) 499-mal heruntergeladen
von bbock
04.11.2021, 18:14
Forum: Programmierung
Thema: 3D-Funktionenplot
Antworten: 3
Zugriffe: 5560

Re: 3D-Funktionenplot

Das geht natürlich auch schneller, und zwar ohne GSX und mit TurboPascal statt Mallard Basic. Ich habe das Basic-Programm portiert; hier ist das Ergebnis:

3DPLOT10_src.zip
Quellcode von 3DPLOT V1.0
(5.66 KiB) 482-mal heruntergeladen
3DPLOT10_com.zip
Ausführbares Programm 3DPLOT V1.0
(8.88 KiB) 520-mal heruntergeladen
von bbock
04.11.2021, 18:08
Forum: Programmierung
Thema: 3D-Funktionenplot
Antworten: 3
Zugriffe: 5560

Re: 3D-Funktionenplot

Funktion 2: z=sin(u*u+v*v)

x-min: -3
x-max: 3
y-min: -3
y-max: 3
Anzahl Schritte: 40
z-Streckung: 3000
Vergrößerung: 1

z=sin(u*u+v*v)
z=sin(u*u+v*v)
function2.png (65.48 KiB) 5555 mal betrachtet
von bbock
04.11.2021, 18:06
Forum: Programmierung
Thema: 3D-Funktionenplot
Antworten: 3
Zugriffe: 5560

Re: 3D-Funktionenplot

Funktion 1: z=sin(sqr(u*u+v*v))

x-min: -5
x-max: 5
y-min: -5
y-max: 5
Anzahl Schritte: 30
z-Streckung: 3000
Vergrößerung: 1

z=sin(sqr(u*u+v*v))
z=sin(sqr(u*u+v*v))
function1.png (25.33 KiB) 5556 mal betrachtet
von bbock
04.11.2021, 17:53
Forum: Programmierung
Thema: 3D-Funktionenplot
Antworten: 3
Zugriffe: 5560

3D-Funktionenplot

Angeregt durch einen Artikel im Joyce-Sonderheft 2'87 habe ich mich mal wieder mit dem Thema 3D-Funktionen befasst - und wie man damit schöne Grafiken auf den Bildschirm unseres Lieblingscomputers zaubern können.

Das Originalprogramm von Christoph Reimann aus Aachen ist in Mallard Basic geschrieben und nutzt die GSX-Bibliothek. Damit diese unter Mallard Basic zur Verfügung steht, muss eine Diskette entsprechend vorbereitet werden, d.h. BASIC.COM muss mit GENGRAF.COM erweitert werden und man benötigt weitere Systemdateien (ASSIGN.SYS, DDFXHR8.PRL, DDFXLR8.PRL, DDSCREEN.PRL und GSX.SYS).

Hier ist die Basic-Datei, einmal im Mallard-Basic-Format (3DPLOT.BAS) und einmal im ASCII-Format (3DPLOTA.BAS):

3DPLOT_BASIC.zip
3DPLOT.BAS und 3DPLOTA.BAS
(3.01 KiB) 432-mal heruntergeladen

Nach dem Booten der Diskette A startet man Mallard Basic durch Eingabe von basic. Dann lädt man das Programm mit LOAD "3DPLOT" und startet mit RUN. Das Hauptmenü erscheint und man kann die Funktion editieren, plotten und das Programm beenden. Das Editieren öffnet die Zeile 170 mit der Funktion im Basic-Editor; wenn man sie angepasst hat, muss man das Programm mit RUN neu starten, dann kann man die geänderte Funktion mit dem Menüpunkt 2 plotten. Dazu muss man einige Parameter eingeben; es folgen zwei Beispiel-Funktionen mit den dazu passenden Parametern.

Anm.: Als Variablen der Funktion sind u, v, z zu verwenden (nicht x, y, z).
von bbock
23.09.2021, 07:38
Forum: Hardware
Thema: TCP/IP - Ethernet - Internet
Antworten: 30
Zugriffe: 52068

Re: TCP/IP - Ethernet - Internet

Ich hätte auch Interesse mit der Joyce online zu gehen. Allerdings bräuchte ich ein fertiges Gerät - meine Hardware-Bastelfähigkeiten sind etwas unterentwickelt... :D Vielleicht findet sich ja jemand, der mir das zusammenbaut.

Viele Grüße
Bernd