Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| z9001:software:paintbox [2020/12/14 12:35] – [Tabelle] volkerp | z9001:software:paintbox [2021/02/12 08:10] (aktuell) – volkerp | ||
|---|---|---|---|
| Zeile 7: | Zeile 7: | ||
| die tollen Grafiken für [[z9001: | die tollen Grafiken für [[z9001: | ||
| - | ====== Loader ====== | + | | Dateiname | PAINTBOX.COM | |
| + | | Laden in | OS | | ||
| + | | Programmstandort | 4000h-5FFFh | | ||
| + | | | 206h-21Dh Arbeitszellen | | ||
| + | | | 2000h-3FFFh, | ||
| + | | OS-Kommandos | BOXNEW, BOX, TEST | | ||
| + | |||
| + | ===== Download | ||
| + | |||
| + | * {{ : | ||
| + | |||
| + | PAINTBOX_COM.TAP ist das Original. Es kann im Emulator nur per Audio/ | ||
| + | |||
| + | paintboxu.kcc ist quasi die originale Version am Stück, aber ohne Loader-Prozess. Laden, dann Abbruch mit Reset oder aber gleich mit CLOAD laden. Danach mit BOXNEW starten. Laden/ | ||
| + | |||
| + | paintbox.kcc ist meine **gepatchte Version**. Laden, Enter, fertig. | ||
| + | Es wurden die Kassettenfunktionen auf CALL5-Standard gepatcht. Damit ist das Laden/ | ||
| + | * einen Farb-Pinsel, | ||
| + | * einen Farb-Picker: | ||
| + | |||
| + | ===== Loader | ||
| Die originale Version hat einen Loader-Screen (Bild o.l.) und lädt das eigentliche Zeichenprogramm nach. | Die originale Version hat einen Loader-Screen (Bild o.l.) und lädt das eigentliche Zeichenprogramm nach. | ||
| - | Meine gepatchte Version | + | Meine gepatchte Version |
| - | ====== Bedienung | + | ===== Bedienung ===== |
| - | Mit Paintbox ist das Zeichnen von 8 verschiedenen Bildern möglich. Nach erfolgreichem Einladen ist nun das Menue zu sehen. | + | Mit Paintbox ist das Zeichnen von 8 verschiedenen Bildern möglich. Nach erfolgreichem Einladen ist nun das Menü zu sehen. |
| - | Mit den Tasten rauf, runter,STOP & ENTER wird der Menübalken bewegt und die gewünschte Routine aufgerufen. | + | Mit den Tasten rauf, runter, STOP & ENTER wird der Menübalken bewegt und die gewünschte Routine aufgerufen. |
| + | |||
| + | Die gewünschte Bildnummer 1..8 ist danach zu tippen. | ||
| Die in der Routine 'PAINT PICTURE' | Die in der Routine 'PAINT PICTURE' | ||
| Zeile 48: | Zeile 70: | ||
| Tasten: | Tasten: | ||
| - | ^ Hexadezimal | + | ^ Hexadezimal |
| - | | 01 | + | | 01 |
| - | | 02 | CL LN | CONTR-B | + | | 02 | CL LN | CONTR-B |
| - | | 03 | STOP | CONTR-C | + | | 03 | STOP | CONTR-C |
| - | | 04 | + | | 04 |
| - | | 05 | + | | 05 |
| - | | 06 | + | | 06 |
| - | | 07 | + | | 07 |
| - | | 08 | cu left | CONTR-H | + | | 08 | cu left | CONTR-H |
| - | | 09 | cu right | CONTR-I | + | | 09 | cu right | CONTR-I |
| - | | 0A | cu down | CONTR-J | + | | 0A | cu down | CONTR-J |
| - | | 0B | cu up | CONTR-K | + | | 0B | cu up | CONTR-K |
| - | | 0C | + | | 0C |
| - | | 0D | ENTER | CONTR-M | + | | 0D | ENTER | CONTR-M |
| - | | 0E | + | | 0E |
| - | | 0F | + | | 0F |
| - | | 10 | + | | 10 |
| - | | 11 | + | | 11 |
| - | | 12 | + | | 12 |
| - | | 13 | PAUSE | CONTR-S | + | | 13 | PAUSE | CONTR-S |
| - | | 14 | COLOR | CONTR-T | + | | 14 | COLOR | CONTR-T |
| - | | 15 | COLOR+SHIFT | + | | 15 | COLOR+SHIFT |
| - | | 16 | + | | 16 |
| - | | 17 | + | | 17 |
| - | | 18 | tab right | CONTR-X | + | | 18 | tab right | CONTR-X |
| - | | 19 | tab left | CONTR-Y | + | | 19 | tab left | CONTR-Y |
| - | | 1A | INS | CONTR-Z | + | | 1A | INS | CONTR-Z |
| - | | 1B | ESC | | ' | + | | 1B | ESC | | ' |
| - | | 1C | LIST | + | | 1C | LIST |
| - | | 1D | RUN | | Wechsel zum Menü | + | | 1D | RUN | | Wechsel zum Menü | |
| - | | 1E | CONT | + | | 1E | CONT |
| - | | 1F | DEL | | del | | + | | 1F | DEL | | del |
| - | ====== | + | ===== Bilder importieren |
| + | |||
| + | Im JKCEMU kann man einfach einen Bildschirm als Speicherbereich abspeichern, | ||
| + | Es muss **Farbspeicher bis Ende Bildspeicher** gespeichert werden (FBWS+BWS): | ||
| + | |||
| + | * Bereich E800-EFBF | ||
| + | * Dateiname sinnvollerweise PICTUREx.COM, | ||
| + | * Anfangs-, End- und Startadresse können beliebig gefüllt sein, sinnvolle Werte wären E800, | ||
| + | |||
| + | Die Datei wird mit "load picture" | ||
| + | ausgegeben. Das Bild erhält die Nummer 8. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== Interna | ||
| Bilddatei (COM): | Bilddatei (COM): | ||
| fcb name8 = bildnr 1..8 | fcb name8 = bildnr 1..8 | ||
| - | compressed - Kennung in FCB 67h = " | + | compressed - Kennung in FCB 67h = " |
| - | | + | FCB 68h = " |
| + | | ||
| + | EADR = 0FFFFh | ||
| + | SADR = decomp | ||
| + | |||
| + | Beim Speichern wird der Name PICTURE1.COM .. PICTURE8.COM je nach Bildnummer genommen. | ||
| + | Das komprimierte Bild wird nach 1000h geladen. Es endet mit einem 01-Byte. Nach dem Bild folgt die Decompress-Routine. Die Startadresse dieser Routine steht im FCB als SADR. | ||
| einfache RLE-Compression | einfache RLE-Compression | ||
| Zeile 94: | Zeile 136: | ||
| 00 char anzahl | 00 char anzahl | ||
| Abgespeichert wird FBWS und BWS (E800-EFBF) ! | Abgespeichert wird FBWS und BWS (E800-EFBF) ! | ||
| + | |||
| + | < | ||
| + | ; | ||
| + | ; decompact-routine | ||
| + | ; | ||
| + | |||
| + | decomp0: | ||
| + | ld (210h), | ||
| + | ld hl, 0E800h | ||
| + | ld (212h), | ||
| + | | ||
| + | ld de, (212h) ; Ziel | ||
| + | decomp1: | ||
| + | cp 1 ; 1 - Ende | ||
| + | ret z | ||
| + | or a ; 0 - RLE | ||
| + | jr z, decomp3 | ||
| + | ld (de), a ; sonst Zeichen übernehmen | ||
| + | inc de | ||
| + | decomp2: | ||
| + | jr decomp1 | ||
| + | decomp3: | ||
| + | ld a, (hl) ; Zeichen | ||
| + | inc hl | ||
| + | ld b, (hl) ; anzahl | ||
| + | decomp4: | ||
| + | inc de | ||
| + | djnz decomp4 | ||
| + | jr decomp2 | ||
| + | </ | ||
| + | |||
| + | BASIC wird als " | ||
| + | |||