DDump

File-név: DDUMP22.EXT
Program neve: DDUMP 2.2
HSoft - 1995
LPT HARDCOPY rendszerbővítő

A program EPSON-kompatibilis nyomtatóra készült, feladata: A képernyőn megjelenített tartalom kinyomtatása. A program képes mind a szöveges és mind a grafikus képernyőt, valamint ezek kombinációit is kezelni. A nyomtatás 8 féle szürkeárnyalattal történhet. A program DDUMP22.EXT néven található a lemezen. BASIC-ből

LOAD "DDUMP22.EXT"

paranccsal lehet betölteni. A program abszolút rambővítő, tehát 6-os fejrésszel rendelkezik. Betöltéskor beolvassa a DDUMP.STP setupfájt, melyben az utolsó alkalommal DDSTPWR paranccsal  kimentett  beállítási  adatok találhatóak. A 2.2-es programváltozatból hiányzik az előző verziókban használt DDUMP felhasználói  perifériakezelő,  mellyel  a  nyomtatást  CTR-P  billentyű nyomással is lehetett kezdeményezni. Elhagyását a  rendszerbelépésnél  történő időnkénti lefagyás, és az EPDOS  2.n  rendszer  alatti  rugalmasabb  használat indokolta. Az utóbbi rendszer alatt az alábbi billentyűparancsokat kódoltam:

SH-CTR-P CHPRN

Az aktuális editor tartalmának kinyomtatása az aktuális karakterkészlet alapján.

SH-CTR-D DDPRINT

A DDUMP program hívása, mely kinyomtatja az aktuális képernyőtartalmat.

A DDUMP program nyomtatási képét segédparancsokkal lehet módosítani. A kedvező beállítást célszerű DDSTPWR paranccsal elmenteni, s így a következő DDUMP-betöltéskor azonnal használhatjuk. Különböző feladatokra más és más beállítást kell használni, viszont a setupfájl neve fix (DDUMP.STP), ezért témakörönként más-más lemezt vagy alkönytárat célszerű alkalmazni.
A program ismeri az ENTERPRISE valamennyi videómódját. A képet az LPT (sorparaméter tábla) alapján rekonstruálja, melynek címe lehet rögzített, (:DDLPT #FFFF) ilyenkor az alapértelmezésű FF:B900 helyről olvas. :DDLPT paraméterének 10H-val osztható értéket adva, átirányítjuk az LPT kezdőcímét. Ilyenkor a kurzor segítségével (fel-le), 10H lépésekkel lehet  megkeresni az LPT valódi helyét a 64K-s videómemóriában. A bal-jobb iránnyal 1000H ugrásokat hajthatunk végre. A kép keresése alatt direkt módon történik a billentyű olvasás, és nincs ismétlés (RATE), mivel a NICK átállítása közben elveszíthetjük a billentyűfigyelést kezdeményező videómegszakítást. A megtalált képet (LPT-t) ENTER-rel lehet elküldeni, ezután történik a fájlba nyomtatás.

:DDPRINT fájlnév

 

Nyomtatási parancs, mely a beállított opciók alapján IBM vagy EPSON kompatibilis printer-vezérkódokat használva, fájlba küldi az aktuális képernyőtartalmat. Amikor nem adjuk meg a fájlnevet, akkor a PRINTER: alapértelmezésű fájlt nyitja meg. Aki nem rendelkezik nyomtatóval, de pl. a munkahelyén PC-n tudna nyomtatni, annak a következő módszert javaslom.
Fájlnév megadásával irányítsa lemezre a nyomtatást. Az elkészült nyomtatógrafikus fájl lemezét tegye be a PC meghajtójába. Adjon ki DOS alatt PRINT fájlnév +ENTER, vagy PRINT fájlnév/b +ENTER parancsot.

:DDPRN fájlnév

 

A DDPRINT paranccsal lemezre irányított fájl kinyomtatását eredményezi. A formátum megegyezik az eredeti beállítással.

:DDPRN2 fájlnév

 

A DDPRINT paranccsal lemezre irányított fájl kinyomtatását eredményezi. A fejléc, a monogram és az eredeti DDMODE, DDMARGIN beállítások elvesznek. A grafikus szekvenciát a pillanatnyi DDMODE generálja, viszont a sormagasságra az ESC,"3" szekvenciát használja. A függőleges felbontást megduplázza, ezért a grafika függőleges mérete a felére csökken. Az így kapott kép NLQ minőségű. Az arányok megtartásához célszerű a DDPRINT parancsot kétszeres DDVIDEOY mérettel végrehajtani.

:DDPRN3 fájlnév

 

A DDPRINT paranccsal lemezre irányított fájl kinyomtatását eredményezi. A fejléc, a monogram és az eredeti DDMODE, DDMARGIN beállítások elvesznek. A grafikus szekvenciát a pillanatnyi DDMODE generálja, viszont a sormagasságra az ESC,"3" szekvenciát használja. A vízszintes és függőleges felbontást megduplázza, ezért a grafika vízszintes és függőleges mérete a felére csökken. Az így kapott kép NLQ minőségű. Az arányok megtartásához célszerű a DDPRINT parancsot kétszeres DDVIDEOX és DDVIDEOY mérettel végrehajtani. A papír megpróbáltatását a palettaszínek világosításával csökkenteni lehet.

:DDSTPRD

 

DDUMP.STP nevű fájl beolvasása. Segítségével visszakapjuk a kimentés előtti   összes beállító paramétert. A program betöltésekor történő inicializálásnál automatikusan végrehajtja ezt a parancsot.

:DDSTPWR
 

A DDOPTIONS végrehajtását, írásra megnyitott DDUMP.STP nevű fájlba irányítja. Így tárolható el a kedvezőre sikerült beállítási mód.

:DDART fájlnév
 

A paranccsal az ARTSTUDIO program által kimentett screen-fájlt tudjuk betölteni. A kép részére megnyitja a 101-es csatornát attribut videó módban, és kirakja a képernyő első sorától kezdődően 22 sorban. Beállítja a program 8 paletta színét is.

:DDPBOX fájlnév
 

A paranccsal a PAINTBOX program által kimentett screen-fájlt tudjuk betölteni. A kép részére megnyitja a 101-es csatornát eredeti videó módban, és kirakja a képernyő első sorától kezdődően. Beállítja még a paletta első nyolc színét is, viszont a felső nyolc szín bizonytalan lesz, mivel e fájl nem tartalmaz bias információt. A visszatérés után, az EXOS változók olvasásával, az alábbi információkat lehet kiolvasni:
22 = videomód, 23 = színmód, 24 = videoX, 25 = videoY

:DDVLD fájlnév
 

A paranccsal a VLOAD bővítő által kimentett screen-fájlt tudjuk betölteni. A kép részére megnyitja a 101-es csatornát eredeti videó módban, és kirakja a képernyő első sorától kezdődően. Az eredeti színeket nem tudja visszaállítani, mivel a fájl nem hordozza a szükséges információkat! A visszatérés után, az EXOS változók olvasásával, az alábbi adatokat lehet kiolvasni:
22 = videomód, 23 = színmód, 24 = videoX, 25 = videoY

:DDOPTIONS
 

Az alábbi beállító opciókat listázza az alapértelmezésű csatornára.

:DDHEADER "sztring"
 

Itt adható meg a  kép felett nyomtatandó szöveg.

:DDPALETTE P0,P1,P2,P3,P4,P5,P6,P7,P8
 

A nyomtatás 8 féle fekete-fehér árnyalatot képes kezelni. A 0 a legvilágosabb, 7 a legsötétebb. A P0 a vízszintesen eltérő méretű sorok által keletkező keretszín definíciója. (E fogalom nem azonos a DDBORDER-rel) A P1-P8-cal a grafika palettaszíneit lehet tetszőlegesen megadni. E módszerrel a képernyőtől eltérő nyomtatási palettát érhetünk el. Kiemelhetjük a fontosabb területet, kontrasztosabbá tehetjük az írást, festékspórolás meggondolásból inverzbe fordíthatjuk a képet.

:DDCOLOR Pn,0-7
 

Egyetlen palettaszín megadása.

:DDMARGIN n
  A nyomtatás baloldali margóját lehet megadni.
:DDBORDER n
 

Nulla érték esetén kinyomtatja a monogramot, valamint a képet keretben küldi ki.

:DDVIDEOX n
 

A kép vízszintesen nyomtatott méretét egész számú többszörösére növelhetjük. Az értéket 1-16 között kell megadni.

:DDVIDEOY n
 

A kép függőlegesen nyomtatott méretét egész számú többszörösére növelhetjük. Az értéket 1-16 között kell megadni.

:DDUP n
:DDDOWN n
:DDLEFT n
:DDRIGHT n
 

A program lehetőséget ad a képernyő négy oldalának egymástól független, tetszőleges mélységű letakarására. Egy normál karakter mérete függőlegesen 9, vízszintesen 16 pixel, TEXT 80-nál persze csak 8.

:DDLPT £n
 

A 16 bites hexadecimális értékkel megadható a nyomtatás indításánál végrehajtott LPT keresés kezdőcíme. A keresésnél átírjuk ezt az értéket, így az ismételt nyomtatásnál már nem kell újra keresgetni. A DDSTPWR-rel ki is menthető az új érték. £FFFF ill. 10H-val nem osztható érték esetén az alapértelmezésű LPT-ről történik a nyomtatás, ilyenkor keresésre sincs lehetőség.

:DDROTATION n
 

Nulla érték esetén a képet 90 fokkal elfordítva nyomtatja. Arányosabb vízszintes méretet lehet elérni, ha a DDVIDEOY értéknek a DDVIDEO négyszeresét adjuk. Használata általában memóriabővítést igényel, ugyanis először a teljes méretű képet memóriába teszi, majd algoritmus segítségével 90 fokkal elfordítva nyomtatja.

:DDDECODE n
 

Az egyes pixelpontokból történő palettaszám képzés, DDDECODE=0 érték esetén úgy történik, hogy az ENTERPRISE 256 színét, monokrom színsötétség alapján 8 csoportra bontja. Ennek a csoportnak a száma  adja  a paletta számát, és a színét a DDPALETTE  beállításából olvassa. Amikor a DDDECODE nem nulla, akkor a pixelpont színétől függetlenül, csak a palettaszám határozza meg a 8 csoport egyikét. Használata a színes képernyőn eltérő, de monokromon hasonló tónusú palettánál, vagy írott képernyőnél célszerű.

:DDMODE n
 

A megadott érték a nyomtatási szekvenciákat vezérli. Az EPSON nyomtatóknál nem okoz látható változást, nyomtatófajtákra és a DDUMP-fájl PC-n való nyomtatására hatással lehet. A 0-3 közötti értékek értelmezése:

  Grafikus szekvencia: Sorköz szekvencia:
0 ESC,"L"    (IBM) ESC,"3"
1 ESC,"L"    (IBM) ESC,"A"
2 ESC,"*",1 (EPSON) ESC,"3"
3 ESC,"*",1 (EPSON) ESC,"A"

Hsoft
1995.05.11.