Schneider / Amstrad CPC Forum

Amstrad / Schneider CPC => FutureOS => Topic started by: cpcman on 10. January 2024, 10:48:57

Title: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 10. January 2024, 10:48:57
Hallo, guten Tag.

Ich habe ein Bild Mode 2 erstellt mit JavaCPC-Paint als test.scr
80x200 (16000 ohne den Header). Header wird von JavaCPC mit 512 Byte dazu erstellt.
Wie kann ich dieses test.scr jetzt bitte einlesen in &c000 mit FutureOS ?

Danke.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 10. January 2024, 12:41:51
Folgendermaßen (also ich gehe mal davon auf, dass das Bild einen Header hat):

- Disc unter FutureOS einlegen,
- DIRectory einlesen, DIR icon oder Taste 'd'
- Bild-Datei anklicken
- Nun auf das TYPE Icon klicken oder Taste 'v' für view
- Im Type Menu die 1 drücken (Datei anzeigen)
- Der Header wird angezeigt, Space drücken

- Und nun kann mit den Cursor-Tasten sowohl der Bildschirm Modus (0-3) als auch das Bild-Format eingestellt werden.  :winke0002:
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 10. January 2024, 22:48:49
Danke für die Info.

Ich wollte bitte das Bild laden in einem Spiel auf Tastendruck , also nicht vorher.

Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 11. January 2024, 11:34:17
Ah, alles klar. Dazu hänge ich Dir mal den Source von 'Lade Hintergrund Bild' an.
Das Programm läd ein Bild ins Erweiterungs-RAM. Von dort aus kann es dann später angezeigt werden.

Falls Du einen anderen Source Code brauchst, lasse es mich wissen.  :smiley027:
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 11. January 2024, 14:42:39
Hallo , danke für deine Unterlagen.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 11. January 2024, 15:31:07
Habe noch schnell einen spezifische Source gemacht, um ein Bild ins Video-RAM zu laden. Wie geht das?

- Programm assemblieren
- FutureOS starten und auf Laufwerk A klicken, um DIR einzulesen
- Nach &9000 springen (z.B. im Monitor)

Bild wird gezeigt, dann Taste, Rückkehr zum OS

Funktioniert was nicht? Dann bitte melden  :)
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 12. January 2024, 11:27:29
Es funktioniert nicht so.

Bei ASM heisst das Bild : LBI DB &00,"TEST-PICSCR"
Auf der DSK heisst das Bild : "TEST-PIC.SCR"

Ich habe es umbenannt.
Funtioniert trotzdem nicht.
Auch nicht im MONITOR.

Es wäre schön wenn du mal das ganze Bild in &c000 laden könntest
damit ich es einmal dort sehe.
Und dann mit Tastendruck zurück gehe nach FutureOS :
-------------------------
LD  HL,WATA ;Warte auf Tastendruck
CALL ROM_C

LD  HL,S64X32 ;Setze Bildschirm auf 64 Zeichen und 32 Zeilen
CALL ROM_A

LD HL,TUR_E ;-> Ruecksprung zum OS
JP ROM_D
----------------------------------

Danke.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 12. January 2024, 13:21:24
Das Programm tut ganz genau was Du willst, und es funktioniert auch. Bitte den Anweisungen in meinem vorigen Post folgen.

Wenn Du das Bild umbenennst, dann kann es natürlich vom Programm nicht gefunden werden.

Unter FutureOS gibt es keinen Punkt zwischen Dateinamen und Extension, auf diese Weise kann man Dateien freier und schöner benennen.

Also, ich hänge Dir die DSK nochmals an, und zwar mit dem Programm fertig assembliert.

Bitte einfach '-Test' starten. (Der Source Code ist 'LadeBild.MAX'
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 12. January 2024, 14:53:56
Danke für die Hilfe.  :smiley027:  :smiley027:  :smiley027:
Es funktioniert jetzt super, habe es mit pasmo.exe compiliert.
Wusste nicht das der Name 8 Buchstaben sein muss.

Kann jetzt mehrere SCR mit Tastendruck durchschalten.
Man kann schon eine kleine Geschichte machen mit Bildern(Screens)

--------------------------------
ORG &9000  ; 97 Zeilen

;In diesem Beispiel wird ein Bild von Laufwerk A geladen
;Das Inhaltsverzeichnis von LW A muss bereits eingelesen sein!

;Lade ein Beispiel-Bild --> Warte auf Tastendruck --> Zurueck zum OS!

LADE_BILD
LD HL,S80X25
CALL ROM_A ;Setze Bildschirm auf 80 Zeichen & 25 Zeilen

LD A,(REG_PC+1) ;A = Quell-Medium von dem das Hauptprogramm gestartet wurde

ld a,0 ;In diesem Beispiel wird das Medium = Laufwerk A gesetzt #########
        ;Im fertigen Programm muss diese Zeile ^ entfernt werden #########

LD (MEDIUM),A  ;Sichere Quell-Medium A..O (0-14) des zu ladenden Bildes

LD  DE,LBI1 ;Zeiger auf Namen des Bildes
CALL LABI  ;Bild laden
LD  HL,WATA ;Warte auf Tastendruck
CALL ROM_C

LD  DE,LBI2 ;Zeiger auf Namen des Bildes
CALL LABI  ;Bild laden
LD  HL,WATA ;Warte auf Tastendruck
CALL ROM_C

LD  DE,LBI3 ;Zeiger auf Namen des Bildes
CALL LABI  ;Bild laden
LD  HL,WATA ;Warte auf Tastendruck
CALL ROM_C

LD  HL,S64X32 ;Setze Bildschirm auf 64 Zeichen und 32 Zeilen
CALL ROM_A

LD HL,TUR_E ;-> Ruecksprung zum OS
JP ROM_D

;Name des zu ladenden Bildes
;
LBI1
  DB &00,"BILD0001SCR" ;User-Nummer + Name + Extension
LBI2
  DB &00,"BILD0002SCR" ;User-Nummer + Name + Extension 
LBI3
  DB &00,"BILD0003SCR" ;User-Nummer + Name + Extension

;Name des Quell-Mediums des Bildes
;
MEDIUM
  DB &00

;Bild nach &C000 laden!
;
;Einsprung
;---------
;      DE = Zeiger auf User + Name + Extent des Bildes
;(MEDIUM) = Quell-Medium des Bildes 0-14 (A-O)
;
;Aussprung
;---------
;A  = &FF --> Bild wurde korrekt geladen
;A <> &FF --> Beim Laden ist ein Fehler aufgetreten

LABI
LD A,&02
LD (REG08_4),A ;Laden in Hauptspeicher

LD HL,&C000
LD (REG16_3),HL ;Ziel-Adresse &C000 = Video RAM

LD A,(MEDIUM) ;Quell-Medium

LD IX,LADE_N
CALL ROM_A2C ;Lade Bild

INC A
JR NZ,LB_ERR ;A<>&FF --> Fehler beim Laden!

LD BC,&FA7E
LD A,(MO_ST)
OUT (C),A ;Laufwerks-Motoren ausschalten

LD A,&FF
RET ;A = &FF --> Bild wurde erfolgreich geladen!

;Fehler beim Laden

LB_ERR
  LD BC,&FA7E
  LD A,(MO_ST)
  OUT (C),A
  XOR A
  RET

;EQUates

REG_PC  EQU &B8DA ;RAM
REG08_4 EQU &B8E0
REG16_3 EQU &B8EA
MO_ST  EQU &B97F

ROM_A  EQU &FF00 ;ROMs A-M
ROM_C  EQU &FF0C
ROM_D  EQU &FF12
ROM_A2C EQU &FF2A

S64X32 EQU &D5A8 ;ROM A
S80X25 EQU &D60E

WATA  EQU &FD38 ;ROM C
LADE_N EQU &FD5C

TUR_E EQU &FE9D ;ROM D
------------------------------------

Danke.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 12. January 2024, 16:39:54
Hallo guten Tag.

Gibt es bitte zwei Bereiche für 16kb die man mit Grafik-SCR bearbeiten/füllen kann und umschalten kann? Beide sichtbar schalten nach Wahl?

Oder von den einen Bereich  kopieren zum anderen Bereich  &c000?

Danke
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 13. January 2024, 09:46:03
Hallo , guten  Tag.

Ich kann mit deinem Programm auch Mode 1 einstellen und ein Farbiges Bild SCR anzeigen.
Ist der Kopf bitte richtig dafür? Es funktioniert aber.

Wie kann ich jetzt bitte dieses INK und Border dafür einstellen in FutureOs?
Ich habe die 26 Farben von hier mit RGB für mein Malprogramm zusammengestellt:
https://www.cpcwiki.eu/index.php/CPC_Palette

Wenn ich ein SCR herstelle wird dafür eine PAL-Datei hergestellt.
Wie kann man die bitte in FutureOs nutzen?

Danke.

---------------------------
LD A,&81      ;Dieser Wert symbolisiert MODE 1 (siehe Bits 1 und 0)
                ;Beide ROMs sind eingeschalten (Bits 3 und 2)
LD (RAMCHAR),A ;Wert aus Register A in OS RAM-Variable RAMCHAR schreiben

LD B,&7F      ;Via Port &7Fxx ist das Gate-Array erreichbar

OUT (C),A      ;Wert aus Register A an Port in BC (=&7Fxx) schicken
                ;Damit auf MODE 1 und ROM Zeichensatz schalten
----------------------------
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 13. January 2024, 16:59:36
Quote from: cpcman on 12. January 2024, 16:39:54Hallo guten Tag.

Gibt es bitte zwei Bereiche für 16kb die man mit Grafik-SCR bearbeiten/füllen kann und umschalten kann? Beide sichtbar schalten nach Wahl?

Oder von den einen Bereich  kopieren zum anderen Bereich  &c000?

Danke

Das ist gar kein Problem, man läßt sich vom OS einfach einen 16 KB Block im E-RAM suchen und reservieren. Und dort kann man dann ein Bild reinladen.

Bei einer 512 KB Erweiterung ist so für ca. 30 Bilder Platz

Will man die Bilder d&4000 nach &C000 (also LD HL,&4000:LD DE,&4000:LD BC,&4000:LDIR)

Dazu kann ich ja mal einen Beispiel-Code machen.
Hat jemand gerade ein DSK da mit ein paar Beispielbildern?
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 13. January 2024, 17:10:46
Quote from: cpcman on 13. January 2024, 09:46:03Ich habe die 26 Farben von hier mit RGB für mein Malprogramm zusammengestellt:
https://www.cpcwiki.eu/index.php/CPC_Palette
Wenn ich ein SCR herstelle wird dafür eine PAL-Datei hergestellt.
Wie kann man die bitte in FutureOs nutzen?

Ja, genau das ist die Farbtabelle. Wie man Farben einstellt, dafür gibt's Beispiele in der OS-LIB. Die hänge ich hier mal an.

Relevante Beispiele:

;---=== Set Screen Colors of Border, Paper and Pens // CLear Screen ===---;

NN = any 8 Bit value &00-&FF /// Enter correct value for NN in Source!

;For selecting a COLOR please use hardware numbers, see table HWFW

;set BORDER color
;
;changes AF, BC

 LD  BC,&7F10 ;border
 OUT (C),C
 LD  A,NN      ;new hardware border color &40-&5F
 OUT (C),A      ;see table
 LD  (BORDER),A ;write color in RAM


;set PAPER color
;
;changes AF, BC

 LD  BC,&7F00 ;INK 0
 OUT (C),C
 LD  A,NN     
 OUT (C),A
 LD  (INK_0),A ;new hardware paper color &40-&5F


;set PEN 1 color
;
;changes AF, BC

 LD  BC,&7F01 ;INK 1
 OUT (C),C
 LD  A,NN     
 OUT (C),A
 LD  (INK_1),A ;new INK 1 color &40-&5F


;set PEN 2 color
;
;changes AF, BC

 LD  BC,&7F02 ;INK 2
 OUT (C),C
 LD  A,NN     
 OUT (C),A
 LD  (INK_2),A ;new INK 2 color &40-&5F


;set PEN 3 color
;
;changes AF, BC

 LD  BC,&7F03 ;INK 3
 OUT (C),C
 LD  A,NN     
 OUT (C),A
 LD  (INK_3),A ;new INK 3 color &40-&5F

;hardware color values, equivalent to
;BASIC colors from 0 to 26(31) ordered.
;
;Hardware-Farbwerte, entsprechend den
;OS Farben von 0 bis 26(31) geordnet.

HWFW

  ;  0  1  2  3  4  5  6  7
 DB &54,&44,&55,&5C,&58,&5D,&4C,&45

  ;  8  9  10  11  12  13  14  15
 DB &4D,&56,&46,&57,&5E,&40,&5F,&4E

  ; 16  17  18  19  20  21  22  23
 DB &47,&4F,&52,&42,&53,&5A,&59,&5B

  ; 24  25  26 *27 *28 *29 *30 *31
 DB &4A,&43,&4B,&44,&4D,&59,&47,&4F


;BASIC color values from 0 to 26, ordered
;through hardware color values &40-&5F
;
;OS Farbwerte von 0 bis 26, nach den
;Hardware-Farbwerten &40-&5F geordnet

OSSW DB 13 ;&40

 DB 27 ;&41 ***
 DB 19 ;&42
 DB 25 ;&43
 DB 01 ;&44
 DB 07 ;&45
 DB 10 ;&46
 DB 16 ;&47
 DB 28 ;&48 ***
 DB 29 ;&49 ***
 DB 24 ;&4A
 DB 26 ;&4B
 DB 06 ;&4C
 DB 08 ;&4D
 DB 15 ;&4E
 DB 17 ;&4F
 DB 30 ;&50 ***
 DB 31 ;&51 ***
 DB 18 ;&52
 DB 20 ;&53
 DB 00 ;&54
 DB 02 ;&55
 DB 09 ;&56
 DB 11 ;&57
 DB 04 ;&58
 DB 22 ;&59
 DB 21 ;&5A
 DB 23 ;&5B
 DB 03 ;&5C
 DB 05 ;&5D
 DB 12 ;&5E
 DB 14 ;&5F


Also ganz einfach:
LD BC,&7F00 + 0...15 ;Pen auswählen 0-15 (16 = Border)
OUT (C),C
LD BC,&7F00 + &40...&5F ;Farbert auswählen 64-95 (Farbwert, siehe Tabelle oben)

Eine PAL Datei zu laden und zu analysieren, das ist sicher auch möglich. Sag mir bitte welches Programm diese .PAL Datei erzeugt hat. Ist es die vom OCP ART Studio? Könntest Du bitte mal ein Beispiel davon anhängen? Dann kann ich die analysieren.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 14. January 2024, 08:39:57
Hier sind bitte 3 Bilder für Mode 2 in der Zip.

Wie funkioniert das bitte bei 512kb und bei 4MB?

Das ist meine Idee die 3 Bilder zuladen in die 512kb:
Umsetzen kann ich es leider nicht.
-------------------------------------------
LD  BC,&7FC4 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Bild1 in &4000-&7000 laden

LD  BC,&7FC0 ;new RAM (between &c000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

LD  BC,&7FC5 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Bild2 in &4000-&7000 laden

LD  BC,&7FC0 ;new RAM (between &c000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

LD  BC,&7FC6 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Bild3 in &4000-&7000 laden

LD  BC,&7FC0 ;new RAM (between &c000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C
--------------------------------

Bilder zurück:
--------------------------------
LD  BC,&7FC4 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Bild1 von &4000 nach &C000 kopieren

LD  BC,&7FC5 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Bild2 von &4000 nach &C000 kopieren

LD  BC,&7FC6 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Bild3 von &4000 nach &C000 kopieren
-------------------------------------




Danke.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 14. January 2024, 14:38:08
Ja, so würde man es unter anderen Betriebssystemen machen.  :smiley027:
Unter FutureOS kann man aber auch die Speicherverwaltung das mit der Erweiterungs-RAMs (E-RAMs) erledigen lassen.

Anbei ein DSK, der neue Source ist in 'PIC4ERAM.MAX'. Das Programm 'PIC4ERAM.64K' kann direkt gestartet werden. Zuerst lädt es ein Bild in ein freies E-RAM und nach Tastendruck wird das Bild angezeigt.

(Anmerkung: In diesem Fall werden Bilder mit 16 KB - also ohne Header-Record - verwendet. Das spaart Platz auf Disketten und mach vieles einfacher. Ein Beispiel für klassische 17 KB Bilder - also mit Header - würde beim Laden in RAM Variable REG16_3 den Wert &3f80 anstatt &4000 schreiben. So würde der Header ab &3F80 ins RAM kommen und das Bild beginnt dann ab &4000 im E-RAM wie gewollt).

Der Source ist erst mal auf Englisch. Vielleicht schaffe ich das später den auf Deutsch zu übersetzen  ;)  :)
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 14. January 2024, 15:40:29
Danke für die Hilfe.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 14. January 2024, 16:03:10
Danke , habe es mit pasmo.exe compiliert und läuft wunderbar.

Kannst du es bitte einmal für das RAM 512KB um ändern damit ich
bitte 3 Bilder einladen kann :

LD  BC,&7FC4/C5/C6 ;new RAM (between &4000)
LD  (AKT_RAM),BC  ;switch it on
OUT (C),C

Vielen Dank.
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 14. January 2024, 18:33:47
So hier wie versprochen die Deutsche Version:

BILDERAM.MAX ist der Quellcode
BILDERAM.64K ist das ausführbare Programm

Das Programm ist von Haus aus kompatibel zu 512 KB Erweiterungs-RAM, es nutzt frei Blöcke.

Um mehr als ein Bild zu laden, bzw. anzuzeigen kann man ja Teile des Programms vervielfachen. Das wäre:
- Freien 16 KB E-RAM Block reservieren
- Bild in E-RAM laden
- Bild anzeigen
- Pro Bild einige Variablen: Dateinamen und E-RAM Auswahl + Zeiger auf XRAM Variable

Probier mal aus ob Du das für drei Bilder hinbekommst, ich schaue es mir gerne die kommenden Tage mal an.  :)
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 14. January 2024, 19:15:28
Danke für deine Hilfe.

Es Funktioniert mit dem einen SCR, habe es mit pasmo.exe compiliert.
Wie kann man es bitte machen ohne alles zu vervielfachen ?


Danke.

Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 15. January 2024, 12:09:02
Indem Du eine Schleife programmierst. Wobei sich das bei drei Bilden nicht lohnt. Ohne Schleife würdest Du das Programm für drei Bilder etwa folgendermaßen abändern:

Freies RAM reservieren x3:

LD  HL,EFER ;Search free 16 KB E-RAM block
CALL ROM_A
JR  Z,END_P    ;No free E-RAM left --> End Program
LD  (E_RAM),A  ;Store newly found target E-RAM select
LD  (XR_ERM),HL ;Store pointer to XRAM_? variable. Enables to free E-RAM later
;
LD  HL,EFER
CALL ROM_A
JR  Z,END_P
LD  (E_RAM2),A  ;eigene Variable!!!
LD  (XR_ERM2),HL ;eigene Variable!!!
;
LD  HL,EFER
CALL ROM_A
JR  Z,END_P
LD  (E_RAM3),A  ;eigene Variable!!!
LD  (XR_ERM3),HL ;eigene Variable!!!

;...


Bilder Laden x3:

LD  HL,(E_RAM)  ;Get previously found target E-RAM select
LD  (AKT_RAM),HL ;and prepare OS variable for 'Load Picture into E-RAM'
LD  DE,P_N      ;Pointer to name of picture
CALL LABIER      ;Load the picture
;
LD  HL,(E_RAM2)  ;eigene Variable!!!
LD  (AKT_RAM),HL
LD  DE,P_N2      ;eigener Dateiname!!!
CALL LABIER
;
LD  HL,(E_RAM3)  ;eigene Variable!!!
LD  (AKT_RAM),HL
LD  DE,P_N3      ;eigener Dateiname!!!
CALL LABIER

;...


Bilder anzeigen x3:

LD  BC,(E_RAM) ;Select E-RAM which contains picture and bank it in at &4000
OUT  (C),C
CALL SHOW_PIC ;Neues Unterprogramm 'Bild anzeigen'
;
LD  BC,(E_RAM2) ;eigene Variable!
OUT  (C),C
CALL SHOW_PIC
;
LD  BC,(E_RAM3) ;eigene Variable!
OUT  (C),C
CALL SHOW_PIC

;...

;Bild aus E-RAM anzeigen
;
SHOW_PIC LD HL,&4000  ;Source address = Begin of E-RAM
;
LD  DE,&C000  ;Target address = Begin of V-RAM
LD  BC,&4000  ;Length = 16 KB
LD  IX,F_MOVE ;Quick Copy OS function in ROM C
CALL ROM_A2C  ;Copy 16 KB picture from &4000 to &C000 quicker than 'LDIR'
LD  BC,&7FC0  ;Bank in Main RAM
OUT  (C),C
RET


Am Ende E-RAM wieder freigeben x3:

LD A,&01
LD HL,(XR_ERM) ;Read pointer to E-RAM XRAM_? variable
LD (HL),A      ;Free 16 KB E-RAM of the temporary stored picture
;
LD HL,(XR_ERM2) ;eigene Variable!!!
LD (HL),A
;
LD HL,(XR_ERM3) ;eigene Variable!!!
LD (HL),A
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: cpcman on 15. January 2024, 15:08:22
Danke für deine Hilfe.

Kann jetzt 3 Bilder laden und anzeigen mit Tastendruck aus dem E-RAM.

Hatte mir diese beiden Programme angeschaut wo du 43 Bilder in den E-RAM packst und wieder anzeigst. Da war ich nicht durchgestiegen.
Aber große Leistung...

P4M.MAX
LPR00.MAX
Title: Re: Bild Mode 2 mit JavaCPC Paint erstellt als test.scr
Post by: TFM on 15. January 2024, 16:52:33
Danke, Danke, bin immer gerne da um zu helfen. Hauptsache Du hast Spaß am Erschaffen von CPC Produktionen.  :jubelaola: