|
Site in German / Seite auf deutsch
EMUZ80 RPI is a CP/M emulator for the Z80 processor the Raspberry PI (2). Here is the emulator without an operating system "bare metal" operated on the Raspberry PI. This particular application will start in about 5 Seconds. This project shows, what is possible with the Lazaus/Free Pascal-Cross-Compiler from Ultibo. |
Content1. Raspberry PI, Bare Metal and Ultibo Core a new kind of software developement2. Installation of the CP/M Emulator on the Raspberry PI(2) 3. Source code of the CP/M-Emulator 4. Lizense |
The idea to operate the Raspberry PI without a operating systemis, probably as old as the Raspberry PI itself.
In the recent years, many creative programmers have dedicated this theme.
In the appropriate forums, wikis and websites established the name "bare metal".
Here some examples:
All projects have shown that the Raspberry PI basically Bare Metal can program. But no project was a real alternative to the facility to offer the Arduino IDE provides for the Arduino microcontroller.
This has now changed.
The australian company:
developed a Lazarus / Free Pascal development environment for "Bare Metal" which offers the possibility for the first time, that even can devote application programmers to the topic of "Bare Metal".
The installation of Bare Metal programs on the Raspberry PI (2) is quite easy.
All you need is a blank SD card (or Micro-SD card for newer versions).
The SD card must formatted with the File System FAT or FAT32.
After then all files from the folder "boot" written directly to the SD card (inclusive the subfolders "CPM_LW_A" and "CPM_LW_B").
see also "Making a bootable SD card" and "Getting Started" on Ultibo.org
Note: WordStar 3 is optimized for the CP/M resolution of 80x24 characters with inverted character representation.
CP/M Sample programs for RPI: 10_BOOT_RPI_EN_WS.ZIP
CP/M Sample programs for RPI2: 12_BOOT_RPI2_EN_WS.ZIP
CP/M Sample programs for RPI3: 14_BOOT_RPI3_EN_WS.ZIP
Note: The Turbo Pascal Editor is optimized for the CP/M resolution of 80x24 characters without inverted character representation.
CP/M Sample programs for RPI: 20_BOOT_RPI_EN_TP_DB.ZIP
CP/M Sample programs for RPI2: 22_BOOT_RPI2_EN_TP_DB.ZIP
CP/M Sample programs for RPI3: 24_BOOT_RPI3_EN_TP_DB.ZIP
CP/M Sample programs for RPI: 30_BOOT_RPI_EN_BAS_ASM_M2.ZIP
CP/M Sample programs for RPI2: 32_BOOT_RPI2_EN_BAS_ASM_M2.ZIP
CP/M Sample programs for RPI3: 34_BOOT_RPI3_EN_BAS_ASM_M2.ZIP
This source code use the Ultibo core Version 1.3.077 (Dec 28, 2016).
CP/M Emulator EMUZ80 for Raspberry PI : EMUZ80_RPI.ZIP
Testet on RaspberryPi B and RaspberryPi A+.
CP/M Emulator EMUZ80 for Raspberry PI 2: EMUZ80_RPI2.ZIP
Testet on RaspberryPi 2B.
CP/M Emulator EMUZ80 for Raspberry PI 3: EMUZ80_RPI3.ZIP
Testet on RaspberryPi 3B.
This
Project of Ronald Daleske are lizensed under
Creative Commons Attribution-NonCommercial 3.0
Unported.
keine Mängelgewähr
DIESE SOFTWARE WIRD VOM URHEBERRECHTSINHABER "OHNE MÄNGELGEWÄHR" BEREITGESTELLT. ALLE AUSDRÜCKLICHEN ODER STILLSCHWEIGENDEN GEWÄHRLEISTUNGEN, EINSCHLIESSLICH DER STILLSCHWEIGENDEN GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT UND EIGNUNG FÜR EINEN BESTIMMTEN ZWECK (JEDOCH NICHT DARAUF BESCHRÄNKT), WERDEN AUSGESCHLOSSEN. DER URHEBERRECHTSINHABER IST IN KEINEM FALL UND NACH KEINER HAFTUNGSTHEORIE (SEI ES AUF VERTRAGSBASIS, AUF DER BASIS STRENGER HAFTUNG ODER UNERLAUBTER HANDLUNGEN, EINSCHLIESSLICH FAHRLÄSSIGKEIT) FÜR BELIEBIGE VERURSACHTE DIREKTE, INDIREKTE, ZUFÄLLIGE, BESONDERE, EXEMPLARISCHE SCHÄDEN ODER FOLGESCHÄDEN (EINSCHLIESSLICH, JEDOCH NICHT BESCHRÄNKT AUF BESCHAFFUNG VON ERSATZPRODUKTEN ODER -LEISTUNGEN, NUTZUNGSAUSFALL, DATEN- UND GEWINNVERLUST ODER GESCHÄFTSAUSFALL) HAFTBAR, DIE AUFGRUND DER VERWENDUNG DIESER SOFTWARE ENTSTEHEN KÖNNEN. DIES GILT AUCH, WENN AUF DIE MÖGLICHKEIT SOLCHER SCHÄDEN HINGEWIESEN WURDE.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.