Programming Tricks

Aus HERMESwiki
Version vom 29. Juni 2009, 21:55 Uhr von Rlamb (Diskussion _ Beiträge) (→‎Language independent)
(Unterschied) ← Nächstältere Version _ Aktuelle Version (Unterschied) _ Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Introduction

This page compiles programming tips and tricks. If you have some, please add them. On the bottom of the page you find useful links to external references.

Language independent

  • If you get the following error message in your Hanna / HBOOK / frame code:
!!!!! ZFATAL called from MZPUSH

!!!!! ZFATAL reached from MZPUSH    for Case=  3

         IQUEST(11) =      8618             21AA
         IQUEST(12) = 538991186         20205A52   RZ
         IQUEST(13) =         9                9
         IQUEST(14) =        10                A
         IQUEST(15) =      1024              400
         IQUEST(16) =         0                0
         IQUEST(17) =         0                0
         IQUEST(18) =     16384             4000

then a CERNLIB package was initialized without enough memory.

It could be CERNLB("PAW")

#define PAWSZ 10000000
#define PAWC COMMON_BLOCK(PAWC,pawc)
typedef struct { int hmemor[PAWSZ]; } PAW_DEF;
COMMON_BLOCK_DEF(PAW_DEF,PAWC);
PAW_DEF PAWC;

Or it could be HBOOK

#define PAWSZ 10000000
HLIMIT(-PAWSZ)                               // Initialize HBOOK  

Or it could be ADAMO

#define MEMSZ 10000000                       // memory for INITAP, called in hanna: OPETAP (MEMSZ)

And you need to increase the appropriate buffer size (PAWSZ or MEMSZ)

Fortran

C

C++

Useful Links

Don't find your topic?