Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
z9001:software:paintbox [2020/12/15 07:57] – [Bedienung] volkerpz9001:software:paintbox [2021/02/12 08:10] (aktuell) volkerp
Zeile 18: Zeile 18:
   * {{ :z9001:software:paintbox.zip |}}    * {{ :z9001:software:paintbox.zip |}} 
  
-paintboxu.kcc ist restaurierte originale Version. Laden, Reset oder aber mit CLOAD ladenDanach mit BOXNEW starten. +PAINTBOX_COM.TAP ist das OriginalEs kann im Emulator nur per Audio/Kassetten-Emulation geladen werden. Dabei sieht man den Loader-Bildschirm und das Laden des HauptprogrammsNach Lade-Ende startet das Menü.
-Laden/Speichern geht nur mit Kassette!+
  
-paintbox.kcc ist meine gepatchte Version. Laden, Enter, fertig. Laden/Speichern geht auch mit Diskette/USB. Im Unterschied zum Original wird beim Laden der Filename abgefragt.+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/Speichern geht nur mit Kassette! 
 + 
 +paintbox.kcc ist meine **gepatchte Version**. Laden, Enter, fertig.  
 +Es wurden die Kassettenfunktionen auf CALL5-Standard gepatcht. Damit ist das Laden/Speichern auf USB/Diskette bei entsprechender OS-Erweiterung möglich. Laden/Speichern geht auch mit Diskette/USB. Im Unterschied zum Original wird beim Laden der Filename abgefragt. Diese Version bietet außerdem noch  
 +  * einen Farb-Pinsel, um vorhandene Bilder umzufärben: Grafik ein, dann wird beim Bewegen des Cursors mit den Cursortasten das aktuelle Farbattribut eingetragen. 
 +  * einen Farb-Picker: mit CTRL-P wird das aktuelle Farbattribut vom aktuellen Zeichens genommen (pick color)
  
 ===== Loader ===== ===== Loader =====
Zeile 27: Zeile 31:
 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 wird am Stück geladen, im Loader-Screen ist Enter zu drücken. Außerdem wurden die Kassettenfunktionen auf CALL5-Standard gepatcht. Damit ist das Laden/Speichern auf USB/Diskette bei entsprechender OS-Erweiterung möglich.+Meine gepatchte Version wird am Stück geladen, im Loader-Screen ist Enter zu drücken. 
  
  
Zeile 34: Zeile 38:
  
 Mit Paintbox ist das Zeichnen von 8 verschiedenen Bildern möglich. Nach erfolgreichem Einladen ist nun das Menü 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 gewünschte Bildnummer 1..8 ist danach zu tippen.
Zeile 66: Zeile 70:
 Tasten: Tasten:
  
-^ Hexadezimal  ^ Funktionstasten  ^ CONTR-Tasten  ^ Wirkung                            +^ Hexadezimal  ^ Funktionstasten  ^ CONTR-Tasten  ^ Wirkung                                       
-| 01                            | CONTR-A       | '\'                                +| 01                            | CONTR-A       | '\'                                           
-| 02           | CL LN            | CONTR-B       | '{'                                +| 02           | CL LN            | CONTR-B       | '{'                                           
-| 03           | STOP             | CONTR-C       | '~'                                +| 03           | STOP             | CONTR-C       | '~'                                           
-| 04                            | CONTR-D       | fülle vertikal                    +| 04                            | CONTR-D       | fülle vertikal                                
-| 05                            | CONTR-E 1..8  | Farbe Bildschirmrand einstellen  +| 05                            | CONTR-E 1..8  | Farbe Bildschirmrand einstellen               
-| 06                            | CONTR-F       | Umschaltung auf Blinken          +| 06                            | CONTR-F       | Umschaltung auf Blinken                       
-| 07                            | CONTR-G       | %%|%%                              +| 07                            | CONTR-G       | %%|%%                                         
-| 08           | cu left          | CONTR-H       | links                              +| 08           | cu left          | CONTR-H       | links                                         
-| 09           | cu right         | CONTR-I       | rechts                             +| 09           | cu right         | CONTR-I       | rechts                                        
-| 0A           | cu down          | CONTR-J       | runter                             +| 0A           | cu down          | CONTR-J       | runter                                        
-| 0B           | cu up            | CONTR-K       | hoch                               +| 0B           | cu up            | CONTR-K       | hoch                                          
-| 0C                            | CONTR-L       | Löschen des Bildschirmes           +| 0C                            | CONTR-L       | Löschen des Bildschirmes                      
-| 0D           | ENTER            | CONTR-M       | Wechsel in nächste Zeile           +| 0D           | ENTER            | CONTR-M       | Wechsel in nächste Zeile                      
-| 0E                            | CONTR-N                                          +| 0E                            | CONTR-N       Bildschirm drucken                            
-| 0F                            | CONTR-O       | 0BFh                               +| 0F                            | CONTR-O       | 0BFh                                          
-| 10                            | CONTR-P                                          +| 10                            | CONTR-P                                                     
-| 11                            | CONTR-Q                                          +| 11                            | CONTR-Q       Tastatur-Kontrollton ein/aus                  
-| 12                            | CONTR-R       | 8Eh                                +| 12                            | CONTR-R       | 8Eh                                           
-| 13           | PAUSE            | CONTR-S       | Bild nach oben verschieben         +| 13           | PAUSE            | CONTR-S       | Bild nach oben verschieben                    
-| 14           | COLOR            | CONTR-T 1..8 | Vordergrundfarbe                    +| 14           | COLOR            | CONTR-T 1..8  | Vordergrundfarbe                              
-| 15           | COLOR+SHIFT      | CONTR-U 1..8 | Hintergrundfarbe                    +| 15           | COLOR+SHIFT      | CONTR-U 1..8  | Hintergrundfarbe                              
-| 16                            | CONTR-V                                          +| 16                            | CONTR-V       Umschaltung auf Invers                        
-| 17                            | CONTR-W       | aktuelle Farbe für das ganze Bild übernehmen | +| 17                            | CONTR-W       | aktuelle Farbe für das ganze Bild übernehmen  
-| 18           | tab right        | CONTR-X       | '['                                +| 18           | tab right        | CONTR-X       | '['                                           
-| 19           | tab left         | CONTR-Y       | ']'                                +| 19           | tab left         | CONTR-Y       | ']'                                           
-| 1A           | INS              | CONTR-Z       | ins                                +| 1A           | INS              | CONTR-Z       | ins                                           
-| 1B           | ESC              |               | '}'                                +| 1B           | ESC              |               | '}'                                           
-| 1C           | LIST                           | '`'                                +| 1C           | LIST                           | '`'                                           
-| 1D           | RUN              |               | Wechsel zum Menü                   +| 1D           | RUN              |               | Wechsel zum Menü                              
-| 1E           | CONT                           | Bild nach unten verschieben        +| 1E           | CONT                           | Bild nach unten verschieben                   
-| 1F           | DEL              |               | del                                |+| 1F           | DEL              |               | del                                           |
  
 +
 +===== Bilder importieren =====
 +
 +Im JKCEMU kann man einfach einen Bildschirm als Speicherbereich abspeichern, der dann von PAINTBOX eingelesen und weiter verarbeitet werden kann.
 +Es muss **Farbspeicher bis Ende Bildspeicher** gespeichert werden (FBWS+BWS):
 +
 +  * Bereich E800-EFBF
 +  * Dateiname sinnvollerweise PICTUREx.COM, (x=1..8) es funktioniert aber auch mit beliebigem Namen
 +  * Anfangs-, End- und Startadresse können beliebig gefüllt sein, sinnvolle Werte wären E800,EFBF,FFFF
 +
 +Die Datei wird mit "load picture" geladen. Wird im letzten Byte des Namens keine Bildnummer geschrieben, so wird ein '?'
 +ausgegeben. Das Bild erhält die Nummer 8. 
 +
 +{{:z9001:software:jkcemu_save_screen.jpg?300|}}
  
 ===== Interna ===== ===== Interna =====
Zeile 105: Zeile 123:
  
   fcb name8 = bildnr 1..8   fcb name8 = bildnr 1..8
-  compressed - Kennung in FCB 67h = "C" +  compressed - Kennung in FCB 67h = "C"
   FCB 68h = "M"   FCB 68h = "M"
-  +  AADR = 1000h 
 +  EADR = 0FFFFh 
 +  SADR = decomp 
 +    
 Beim Speichern wird der Name PICTURE1.COM .. PICTURE8.COM je nach Bildnummer genommen. 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 115: Zeile 137:
 Abgespeichert wird FBWS und BWS (E800-EFBF) ! Abgespeichert wird FBWS und BWS (E800-EFBF) !
  
-BASIC wird als "BILD-BAS" gespeichert, keine Farbe, einfache PRINT-Antweisungen+<code> 
 +;------------------------------------------------------------------------------ 
 +; decompact-routine 
 +;------------------------------------------------------------------------------ 
 + 
 +decomp0: ld hl, 1000h 
 + ld (210h), hl 
 + ld hl, 0E800h 
 + ld (212h), hl 
 + decomp: ld hl, (210h) ; Quelle 
 + ld de, (212h) ; Ziel 
 +decomp1: ld a, (hl) 
 + cp 1 ; 1 - Ende 
 + ret z 
 + or a ; 0 - RLE 
 + jr z, decomp3 
 + ld (de), a ; sonst Zeichen übernehmen 
 + inc de 
 +decomp2: inc hl 
 + jr decomp1 
 +decomp3: inc hl 
 + ld a, (hl) ; Zeichen 
 + inc hl 
 + ld b, (hl) ; anzahl 
 +decomp4: ld (de),
 + inc de 
 + djnz decomp4 
 + jr decomp2 
 +</code> 
 + 
 +BASIC wird als "BILD-BAS" gespeichert, keine Farbe, einfache PRINT-Anweisungen
  
  
  • z9001/software/paintbox.1608019065.txt.gz
  • Zuletzt geändert: 2020/12/15 07:57
  • von volkerp