<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=OWBasic</id>
	<title>OWBasic - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=OWBasic"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=OWBasic&amp;action=history"/>
	<updated>2026-05-20T15:14:18Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=OWBasic&amp;diff=631159&amp;oldid=prev</id>
		<title>2.247.247.18: Rechtschreibung („Compiler“ (Fremdwort aus dem Englischen), aber „kompilieren“): https://www.duden.de/rechtschreibung/kompilieren</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=OWBasic&amp;diff=631159&amp;oldid=prev"/>
		<updated>2019-12-06T11:58:12Z</updated>

		<summary type="html">&lt;p&gt;Rechtschreibung („Compiler“ (Fremdwort aus dem Englischen), aber „kompilieren“): https://www.duden.de/rechtschreibung/kompilieren&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Owbasic520 main.gif|mini|300px|OWBasic v5.20 im Simulator]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;OWBasic&amp;#039;&amp;#039;&amp;#039; ist ein [[Compiler]]/[[Interpreter]] für die [[PocketViewer]] von [[CASIO]].&lt;br /&gt;
&lt;br /&gt;
Ursprünglich wurde OWBasic als einfacher [[BASIC]]-Dialekt entwickelt, wurde aber schnell umfangreicher. Mittlerweile stellt OWBasic eine vollwertige Alternative zur Programmierung des PV mit dem [[Software Development Kit|SDK]] und der [[Programmiersprache]]&amp;amp;nbsp;[[C (Programmiersprache)|C]] dar; in der aktuellen Version sind auch viele Funktionalitäten aus höheren Programmiersprachen wie z.&amp;amp;nbsp;B. Zeiger, und systemnahe Programmierung möglich. Die aktuelle Version ist v5.25.&lt;br /&gt;
&lt;br /&gt;
OWBasic wurde von Wolfgang Ortmann ab 2000 entwickelt. Nachdem Wolfgang Ortmann die Weiterentwicklung 2004 eingestellt hatte, setzte AUDACIA Software die Arbeit an OWBasic fort.&lt;br /&gt;
&lt;br /&gt;
OWBasic ist ein Open-Source-Projekt unter der [[GNU General Public License|GPL]].&lt;br /&gt;
&lt;br /&gt;
== Vor- und Nachteile ==&lt;br /&gt;
Wenn man ein OWBasic-[[Computerprogramm|Programm]] schreibt und ausführt, so wird nicht direkt vom [[Prozessor]] ausführbarer Code erzeugt. Vielmehr erzeugt der OWBasic-[[Compiler]] einen Zwischencode, der vom [[Interpreter]] ausgeführt wird. Daraus ergeben sich verschiedene Vor- und Nachteile:&lt;br /&gt;
&lt;br /&gt;
=== Nachteile ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Performance.&amp;#039;&amp;#039;&amp;#039; OWBasic-Programme laufen etwas langsamer als direkt vom [[Prozessor]] ausführbare Programme. Im Normalfall stellt das allerdings kein Problem dar, da der PV für die normalen Aufgaben einer Anwendung mehr als genug Performance bietet. Nur für rechenintensive Anwendungen wie etwa 3D-Spiele eignet sich OWBasic deshalb nicht.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Eingeschränkte Kontrolle.&amp;#039;&amp;#039;&amp;#039; In einem Add-In können sämtliche PV-systemspezifische Funktionen verwendet werden, die das SDK bietet. In OWBasic hingegen können nur solche Funktionen verwendet werden, die als OWBasic-Funktionen implementiert sind. Auch können Eingriffe ins System, wie z.&amp;amp;nbsp;B. das Abfangen von Interrupten oder das Hooken von Systemprozeduren, nur in Add-Ins vorgenommen werden. Jedoch sind die meisten Systembefehle sowie die durch diverse Systemeingriffe entstandenen Möglichkeiten (Timer, asynchrone Touch-Abfrage, gepackte Add-Ins etc.) mittlerweile auch in OWBasic verfügbar.&lt;br /&gt;
&lt;br /&gt;
=== Vorteile ===&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Mobilität.&amp;#039;&amp;#039;&amp;#039; Während Add-Ins für den [[PocketViewer|PV]] am PC entwickelt, debuggt und kompiliert werden müssen, lässt sich das für OWBasic-Programme auch direkt auf dem [[PocketViewer|PV]] erledigen.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Geringe Größe.&amp;#039;&amp;#039;&amp;#039; Ein Add-In belegt wegen der Speicherstruktur des PV mindestens 64 KB (diese Grenze lässt sich mittels PVAddInManager auf 16 KB heruntersetzen), außerdem kann der [[PocketViewer|PV]] nur eine begrenzte Anzahl von Add-Ins speichern. Da OWBasic-Programme als Memo-Einträge gespeichert sind, belegen sie nicht den knappen Add-In-, sondern den Datenspeicher des [[PocketViewer|PV]]. Normalerweise benötigt ein OWBasic-Programm wesentlich weniger Speicherplatz als ein entsprechendes Add-In, überdies fällt auch die 64 KB- bzw. 16 KB-Grenze weg, so dass man sehr viele OWBasic-Programme auf dem [[PocketViewer|PV]] speichern kann. Die Anzahl wird nur durch den Datenspeicher begrenzt.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Sicherheit.&amp;#039;&amp;#039;&amp;#039; Wenn in einem Add-In ein [[Laufzeitfehler]], wie etwa eine Division durch Null, auftritt, stürzt unter Umständen der PV ab und muss durch Herausnehmen der Batterien oder durch Betätigen des Reset-Knopfes aufwendig neugestartet werden. Tritt in einem OWBasic-Programm ein solcher Fehler auf, so zeigt OWBasic eine Fehlermeldung und kehrt ins PV-Menu zurück. Auch Fehler wie der Zugriff auf ein Arrayelement mit einem falschen Index, Dateioperationen mit falschen Dateizeigern etc. werden bei OWBasic nicht mit undefiniertem Verhalten und ggf. Programmabsturz, sondern mit einer Fehlermeldung quittiert.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Portabilität.&amp;#039;&amp;#039;&amp;#039; Seit 2003 gibt es mit dem PV-S1600 einen [[PocketViewer|PV]] mit einem völlig neuen Innenleben; im Gegensatz zu den vorhergehenden Modellen besitzt er einen Hitachi SH-3 32-Bit-Prozessor (alte Modelle: NEC V30MZ, 16-Bit, 80186-kompatibel). Der SH-3-Prozessor hat eine andere Architektur als der NEC V30MZ, weshalb Add-Ins für die alten Modelle nicht auf dem PV-S1600 ausführbar sind. Will man ein Programm für beide PV-Serien schreiben, so muss man schon bei der Programmierung sämtliche Unterschiede im Speichermodell, der Bit-Anordnung etc. beachten, außerdem muss das Programm zweimal kompiliert und ggf. auch für beide PVs einzeln debuggt werden. Da OWBasic-Programme zu [[Bytecode]] kompiliert werden und somit nicht auf einen speziellen Prozessortyp zugeschnitten sind, können sie auf beiden PV-Serien ohne eine Abänderung des [[Quellcode]]s ausgeführt werden.&lt;br /&gt;
&lt;br /&gt;
== Dokumentation ==&lt;br /&gt;
Das Erlernen von OWBasic ist wie bei den meisten [[BASIC]]-Dialekten recht einfach. Auf www.audacia-software.de gibt es eine deutsch- und englischsprachige Befehlsreferenz im [[Hypertext Markup Language|HTML]]-Format sowie im PocketReferencer-Format zur Übertragung auf den PV.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.audacia-software.de/ Seite von AUDACIA Software und der aktuellen OWBasic-Version]&lt;br /&gt;
* [http://www.pocketviewer.de/ Die PocketViewer-Seite schlechthin] mit einem großen Forum, Workshops, Programmen etc.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:BASIC]]&lt;/div&gt;</summary>
		<author><name>2.247.247.18</name></author>
	</entry>
</feed>