Saltrød Horror Show nr. 40

av Odd de Presno.


Publisert i Datatid, Norge nr. 2/1990, side 107.


Vi har fått en Hewlett Packard LaserJet IIP i huset. Det er en flott liten maskin, selv om alle innstillingsmulighetene kan forvirre. Nå spruter brev og rapporter ut med innebygget font nr. 0, PC-8DN, A-4, 66 linjer med tekst.

Den neste anvendelsen var komprimert utskrift av store tekstfiler. Fra CompuServe hentet jeg DOCSMASH (i filen DOCSMASH.COM på SHS, 54KB stor, bidragsønske USD10.00).

Programmet reduserer størrelsen på utskrifter med en faktor på fire på vanlig listepapir. På en skriver med grafikkegenskaper kan det f.eks. skrive ut et 200-siders dokument på 50 sider eller mindre (f.eks. programdokumentasjon).

Etter litt eksperimentering fant jeg frem til et oppsett som virker bra på HP IIP, også når det gjelder æ,ø og å. Alle kodene mine ligger i den utgaven av DOCSMASH.COM, som ligger på SHS.

Hvordan jeg liker laserskriveren? Bra. Bortsett fra at jeg ønsker mer internhukommelse. I dag må jeg f.eks. skrive inngående telefakser (jeg bruker PC-fax kort) ut med en oppløsning på 150 punkter pr. tomme. Jeg ønsker 300 punkter.

Tips for LOOKFOR-brukere

I desember omtalte jeg siste versjon av LOOKFOR, programmet som kan søke etter kombinerte begreper i tekstfiler. Som du vet, kan det kjøres fra DOS kommandolinje. Jeg har nå laget et CED-synonym for bruk ved hjelp av batch-filen LOO.BAT. Her er den:

echo off
rem Kontroll av om du søker etter ett eller flere ord samtidig
if x%1==x goto ins
if x%5==x goto en
if x%7==x goto to
goto tre
:en
c:\util\lookfor %4 in %1:\%2\%3
goto slutt
:to
c:\util\lookfor %4 %5 %6 in %1:\%2\%3
goto slutt
:tre
c:\util\lookfor %4 %5 %6 %7 %8 %9 %0 in %1:\%2\%3
goto slutt
:ins
echo Rutinen brukes som i følgende eksempel:
echo lo c glink *.doc host and mode
echo Du kan bruke OR i stedet for AND i kommandoene.
goto slutt
:slutt
echo on

Tricket med "if x%1==x goto ins" er en snedig måte å undersøke om en DOS-variabel finnes eller ei. Taster du kun LOO og trykker ENTER, blir DOS-variablen %1 tom. Siden x=x hopper batchfilen ned til etiketten ":ins" og gjør det som står der. Det skriver en kort bruksanvisning på skjermen og stopper.

LOOKFOR og CED

Jeg bruker LOOKFOR ved hjelp av et CED synonym (CED10D.COM er omtalt flere ganger tidligere), da det gir meg enklere bruk av batchfilen. Synonymet ser slik ut:

syn lo d:\loo %1 %2 %3 %4 %5 %6 %7 %8 %9

La meg vise med et eksempel hvorfor jeg synes det er lettere med et CED synonym.

Jobb: Søking etter LOOKFOR og CED i tidligere artikler skrevet for Datatid. De ligger i katalogen E:\DATATID. Jeg taster inn:

lo e datatid *.* ced and lookfor

"LO" påkaller batchfilen LOO.BAT og føder den med mine variabler. DOS-variablen %1 får "e", %2 får "datatid", %3 får "*.*" osv. og dermed begynner søkingen.

Jeg finner en artikkel. Vil jeg søke en gang til i de samme filene ved bruk av andre søkeord (hender ofte), kan det nå gjøres med

  1. et trykk på PilOpp og den tidligere kommandoen står på skjermen med markøren helt til venstre,
  2. redigering av kommandolinjen.

Trykk f.eks. SlettBakover-tasten en gang, føy til "38" og ENTER, og LOOKFOR søker etter "CED and LOOKFO38".

Flytte filer

Vi har tidligere omtalt tre programmer for flytting av filer: PMOVE (i PCOPY785.EXE, 75KB), MOVE21.COM og MV.COM.

Så kom MOVE!.COM (3KB, gratis). Dermed falt MOVE21 og MV ut. PMOVE beholdes for bruk i spesielle situasjoner.

MOVE! kan flytte flere filer samtidig mellom underkataloger og logiske diskstasjoner (MOVE21 greier ikke alltid dette). Kommandoen:

MOVE \NEW \DOS

flytter alle filer fra underkatalogen NEW til underkatalogen DOS. Er ingen mottakeradresse angitt, blir filen(e) flyttet til nåværende disk/katalog.

Filnavn kan endres i prosessen. "MOVE E:*.DIR *.BAK" flytter alle filer med filnavnendelse DIR og døper dem om til *.BAK. Du kan "flytte" filer til et nytt navn i samme diskkatalog (virker som DOS-kommandoen REName).

MOVE flytter IKKE filer som eksisterer på mottaksstedet med mindre dette er spesielt angitt (MV.COM flytter alltid!).

Hvis vi i eksemplet over angir flytting av fire filer, hvorav en finnes på mottaksstedet, flytter MOVE tre filer og varsler om at den fjerde finnes.

Finn og fjern

Jeg har laget rutiner for automatisk fjernvedlikehold (pr. modem) av "Saltrød Horror Show". Arbeidet "utføres" nå av en kommandofil for kommunikasjonsprogrammet ProYam. Når jeg er online påkaller den bl.a. forskjellige batchfiler, som gjør jobben for meg.

En anvendelse er ajourføring av filbeskrivelser i biblioteket. Eksempel: Da LIST72A.EXE ble tilgjengelig, måtte den gamle versjonen (LIST71.EXE) slettes og referansen til denne fjernes fra fillistene, som leses av BBSens brukere. I en liste sto det:

LIST71.EXE 73000 11-01-89T deBuergs fantasic list program

Fillistene er vanlige tekstfiler. Jeg bruker derfor FGREP (i filen FGREP171.EXE, omtalt sist gang) til jobben, fordi det kan stilles inn på "negativt søk". Du kan få alle linjer UNTATT den som inneholder en gitt string ut i en rapport.

Batchfilen for fjerning av gamle referanser har følgende kommandoer (i originalen er filnavnet LIST71.EXE erstattet med DOS-variablen %1):

fgrep -svx LIST71.EXE c:\99\99.dir > 99.dir
move 99.dir c:\99 /d

Den første kommandoen lagres alle tekstlinjer fra C:\99\99.DIR unntatt de som inneholder strengen "LIST71.EXE" i resultatsfilen 99.DIR (ved hjelp av omdirigeringstegnet ">").

Den neste kommandoen ber programmet MOVE! (se over) om å flytte 99.DIR over til C:\99.

Finn og erstatt

Nye brukere av SHS bes om å taste inn en kort presentasjon av seg selv. De gjør det ved å svare på noen spørsmål. Det siste er "Are you satisfied with your replies? Type Y or N".

Disse Y-ene og N-ene blir lagret i en tekstfil sammen med de andre svarene. Jeg ønsker imidlertid å fjerne dem, for å spare plass og for å gjøre svarene lettere å lese.

FGREP kunne ikke brukes. Det insistere nemlig på å fjerne ALLE linjer som inneholder bokstavene "Y" eller "N". Løsningen var programmet BCHANGE (i filen BCHANG11.COM, 19KB. Bidragsønske US$15.00).

BCHANGE kan fjerne en streng med bytes i en tekst- eller binærfil. De dataene som skal endres kan angis som en streng eller med hexadesimale tegn. Du kan med andre ord angi at "CarriageReturnLinefeed-n-CarriageReturn-Linefeed" skal endres til "CarriageReturnLinefeed". Akkurat hva jeg trengte. Kommandoen:

BCHANGE REGISTER.TMP REGISTER.TMP 0D,0A,79,0D,0A 0D,0A /B

leser filen REGISTER.TMP, leter etter den første heksadesiale strengen (0D,0A,79,0D,0A) og bytter den ut med den andre (0d,0a). Hexstrengen 79 står for bokstaven "y".

Resultatet lagres i REGISTER.TMP, dvs. i filnavn nr. to. Du kan også be om at resultatet lagres i en annen fil - for sikkerhets skyld.

(Du har antakelig en liste over hexadesimale tegn i DOS-håndboken din. En slik oversikt ligger også i filen SHOKEY.COM på SHS.)

Ajourføringen av oppslagstavlens bulletin nr. 8 er en annen anvendelse. Alle forekomster av strengen "LIST71.EXE" endres til "LIST72A.EXE" med kommandoen:

BCHANGE BULLET8 BULLET8 "LIST71.EXE" "LIST72A.EXE"

Programmet kan brukes for kompliserte finn/erstatt-operasjoner, f.eks. for å fjerne escape og kontrollkoder fra tekstfiler. Det kan kjøres fra meny eller i batchfiler, med kommandoer som over.

BCHANGE er skrevet av John Deurbrouck, DMA, Box 390, Mountlake Terrace, WA 98043, USA.

Batteriskifte?

Formålet med de to programmene i filen CMOS.COM (2KB, gratis) er å lagre informasjon om en PC-ATs oppsett (ligger i CMOS-hukommelsen) i en fil. Etter at batteriet er byttet, kan oppsettsinformasjonene lese inn automatisk uten å måtte bruke konfigureringsprogrammet.

Regneark

Den nye regnearkfavoritten på SHS ligger i filen ASEASYAS.EXE (179KB). AsEasyAs versjon 4.0n har bl.a. følgende særpreg:

  • opptil 8192 linjer og 256 kolonner,
  • kraftig presentasjonsgrafikk for utskrift på Epson-kompatible skrivere,
  • over 100 makro-kommandoer,
  • over 80 funksjoner for matematikk, statistikk og økonomi, etc., samt brukerdefinerte funksjoner.
  • tredimensjonal simulering,
  • innebygde funksjoner for finn/erstatt tekst, registrering av makroer, målsøking og revisjon.
  • du kan relatere informasjon i ditt arbeidsark med ark, som ligger lagret på disk.

Programmet fungerte med en gang. Det har god innebygget hjelp og kan brukes med CGA, Mono, MGA, EGA (43 linjers), Olivetti M24, Herculesgrafikk. AsEasyAs er Lotus 1-2-3 kompatibelt. Leverandøren hevder at det er kraftigere enn Lotus ver. 2.2 ...

Registrering koster US$40.00 plus $10.00 for forsendelse og håndtering. Det er laget av TRIUS, Inc., 231 Sutton St., Suite 2D-3, North Andover, Mass. 01845, USA. Det kan også bestilles via Shareware Marketing i England (fax: 095-44-297-24091). Prisen er da GPD 48.00.

Månedens bok

"LaserJet Unlimited" (Peachpit Press, California. ISBN 0-938151-029) av Ted Nace og Michael Gardner. Boken inneholder et vell av nyttig informasjon for brukere av HPs laserjet-serie.

Julens store spill

Legendariske HACK kom i en ny versjon (i filen NETHACK.EXE, 391KB) og ble julens slager på laptopen nede ved peisen. Noen advarsler er imidlertid på sin plass:

  • Spillet er digert. Spillfilen NETHACK.EXE er på 778KB! Jeg har spilt det med 424KB ledig hukommelse og 500KB cache i PCen, men det går hurtigere med 640KB RAM og RAM-disk.
  • Ikke prøv å laste det ned om modemet ditt går senere enn 2400 bits/s.



Det er forbudt å distribuere denne artikkelen - eller deler av den - i elektronisk, trykt eller kopiert form mot betaling.