home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / jsage / znode3 / uploads / tpatch.lbr / THEINST.DZC / THEINST.DOC
Encoding:
Text File  |  1993-06-07  |  15.3 KB  |  308 lines

  1.                                TheInst
  2.                 Das universelle Installationsprogramm
  3.                         (C)1989  Olaf Krumnow
  4.  
  5. NacΦ ThePatcΦ voε Herber⌠ zu≥ Neddeε folg⌠ jetz⌠ diσ eigentlicΦ álogiì
  6. schσ áKonsequenz¼ n{mlicΦ TheInst¼ da≤ áuniversellσ áInstallationsproì
  7. gramm« áE≤ wird¼ {hnlicΦ wiσ ThePatch¼ durcΦ áeinσ áInstallationsdateΘ ì
  8. gesteuert¼ áiε de≥ diσ Informationeε }be≥ diσ z⌡ installierendσ áDateΘ ì
  9. stehen« áUφ diσ Installatioε s∩ einfacΦ wiσ irgenΣ m|glicΦ z⌡ ámachen¼ ì
  10. steheε etlichσ Datenstruktureε zu≥ Verf}gung¼ diσ mi⌠ TheInsté áinstalì
  11. lier⌠ áwerdeε ák|nnen« Da≤ reich⌠ voε eineφ einzelneε Bi⌠ bi≤ áhiε áz⌡ ì
  12. eineφ (fast⌐ beliebiτ langeε String.
  13.  
  14.  
  15. Is⌠ docΦ imme≥ da≤ gleiche¼ oder?
  16. Eiε neue≤ Programφ is⌠ fertiτ geschriebeε unΣ sol∞ nuε áver|ffentlich⌠ ì
  17. werden« áBleib⌠ nocΦ diσ Dokumentatioε z⌡ schreiben¼ wa≤ áschoε áimme≥ ì
  18. nerviτ genuτ ist╗ unΣ danε komm⌠ de≥ erstσ aε unΣ m|chtσ diese≤ s∩ unΣ ì
  19. jene≤ áander≤ áeingestell⌠ haben« Als∩ einσ áPatchdateΘ áf}≥ áThePatcΦ ì
  20. schreiben¼ wa≤ abe≥ alle≤ nich⌠ s∩ da≤ wahrσ ist¼ denε ThePatcΦ biete⌠ ì
  21. leide≥ nich⌠ allzuvie∞ Komfor⌠ unΣ e≤ is⌠ umst{ndlicΦ z⌡ bedienen¼ ádß ì
  22. jeder¼ de≥ etwa≤ {nderε will¼ diσ SteuerdateΘ {nderε mu~.
  23. Wa≤ álaτ dß als∩ n{her¼ al≤ eiε Programφ z⌡ schreiben¼ da≤ diσ áganzeε ì
  24. [nderungeε }bernimm⌠ unΣ deε Benutze≥ nacΦ seineε Eingabeε fragt¼ ádaì
  25. beΘ gleicΦ diσ bereit≤ eingestellteε Wertσ anzeig⌠ unΣ auµ WunscΦ áunì
  26. ver{nder⌠ }bernimmt« S∩ entstanΣ danε als∩ TheInst.
  27.  
  28. Voraussetzungen:
  29.  
  30. Einzigσ ázwingendσ Voraussetzunτ is⌠ RA═ 4.╡ ode≥ neuer¼ dß de≥ áinteì
  31. griertσ áZeilenedito≥ voε RA═ 4.╡ benutz⌠ wird¼ uφ String≤ z⌡ áeditieì
  32. ren« áZugegeben¼ áaucΦ RA═ 4.│ hattσ dieseε Edito≥ schon¼ ánu≥ áleide≥ ì
  33. konntσ maε ihφ nocΦ keinσ Zeilσ }bergeben.
  34.  
  35.  
  36. TheInsté au≤ de≥ Sich⌠ de≤ Anwenders:
  37.  
  38. De≥ áAufruµ áis⌠ áziemlicΦ einfach¼ n{mlicΦ áTheIns⌠ áfilename¼ áwobeΘ ì
  39. filenamσ áde≥ Namσ de≥ SteuerdateΘ OHN┼ Dateity≡ ist« Diese≥ mu■ án{mì
  40. licΦ imme≥ .IN╙ sein« DanacΦ wirΣ diσ SteuerdateΘ eingeleseε unΣ áentì
  41. sprechenΣ de≥ Anweisungeε verfahren.
  42.  
  43. Is⌠ ádiσ SteuerdateΘ einσ f}≥ mehrerσ Programmσ anwendbarσ áDatei¼ ás∩ ì
  44. wirΣ jetz⌠ diσ Frage
  45.  
  46. GiΓ deε Nameε de≥ z⌡ installierendeε DateΘ eiε ¡-╛ 
  47.  
  48. woraufhiε D⌡ mi⌠ deφ Dateinameε antworteε mu~⌠ (Namσ unΣ Typ!)« áGibs⌠ ì
  49. D⌡ áhie≥ áirgenΣ wa≤ falsche≤ ein¼ s∩ mu~⌠ D⌡ zu≥ Strafσ áwiede≥ ágan· ì
  50. vornσ áanfangen« áFerne≥ solltes⌠ D⌡ darauµ achten¼ da■ áda≤ áProgramφ ì
  51. aucΦ zu≥ SteuerdateΘ pa~t¼ sons⌠ gibt'≤ nu≥ Schrott.
  52.  
  53. Au≤ de≥ Sich⌠ de≤ Anwender≤ gib⌠ e≤ ╢ verschiedenσ Datentypen¼ n{mlich
  54.  
  55. 1)   Bytewerte mit einem Bereich von 0 bis 255
  56. 2)   Wortwerte mit einem Bereich von 0 bis 65535
  57. 3)   logische Werte die mit JA oder NEIN beantwortet werden.
  58. 4)   Zeichen: ein einzelnes Zeichen.
  59. 5)   Flag-Bytes, ádie bis zu 8 logische Werte áenthalten, ájedoch ì
  60. áááááanders gesetzt werden als die logischen Werte unter 3)
  61. 6)   Strings, also Textzeilen.
  62.  
  63.  
  64. Diesσ áDatentypeε sinΣ anhanΣ de≤ Prompts¼ als∩ de≥ áAufforderunτ ávoε ì
  65. Seiteε áTheInst's¼ áz⌡ unterscheiden« E≤ is⌠ abe≥ z⌡ hoffen¼ áda■ áde≥ ì
  66. gutσ áMensch¼ de≥ diσ SteuerdateΘ entworfeε hat¼ nocΦ genauσ áHinweisσ ìègibt¼ áwelchσ Wertσ erlaub⌠ sind« Abe≥ daf}≥ kanε icΦ nat}rlicΦ ánich⌠ ì
  67. garantieren.
  68.  
  69. Zu 1) Eiε áBytσ áha⌠ diσ m|glicheε Wertσ voε ░ bi≤ 25╡ (HEX║ á$0░ ábi≤ ì
  70. ááááá$FF)« Da≤ Promp⌠ f}≥ eiε Bytσ sieh⌠ s∩ aus║ (RET=$xx)Å¡-╛ wobeΘ ì
  71. áááááx° áde≥ altσ Wer⌠ ist« Da≤ Dollarzeicheε ha⌠ seineε Sinn« Dß áicΦ ì
  72. ááááádiese≤ áProgramφ m|glichs⌠ einfacΦ halteε wolltσ (f}≥ ámicΦ ábeiφ ì
  73. áááááProgrammieren)¼ habσ icΦ diσ iε TURB╧-Pasca∞ eingebauteε Routineε ì
  74. ááááábenutzt¼ áuφ einσ Eingabσ iε einσ Zah∞ umzuwandeln« UnΣ diσ áwil∞ ì
  75. áááááf}≥ áHE╪-Zahleε nuε ma∞ eiε '$º aφ Anfanτ haben« áNat}rlicΦ ákanε ì
  76. áááááaucΦ áeinσ dezimalσ Zah∞ eingegebeε werden« BeΘ de≥ áEingabσ ávoε ì
  77. áááááung}ltigeε Zeicheε ode≥ eine≥ Bereichs}berschreitunτ (eiε Wer⌠ á╛ ì
  78. ááááá255⌐ wirΣ einσ neuσ Eingabσ verlangt« Dr}cks⌠ D⌡ nu≥ <RET>¼ áohnσ ì
  79. áááááetwa≤ einzugeben¼ s∩ wirΣ de≥ altσ Wer⌠ }bernommen¼ wa≤ jß áschoε ì
  80. áááááda≤ áPromp⌠ versprocheε hat« Abe≥ da≤ d}rftσ aucΦ alle≤ áeinigerì
  81. áááááma~eε kla≥ sein¼ oder?
  82.  
  83. Zu 2) Eiε Wor⌠ is⌠ doppel⌠ s∩ lanτ wiσ eiε Byte« Da≤ hei~⌠ abe≥ nicht¼ ì
  84. áááááda■ áe≤ doppel⌠ s∩ vielσ Wertσ annehmeε kann« Da≤ ásinΣ ágl}ckliì
  85. ááááácherweisσ vie∞ mehr« Siσ reicheε voε ░ bi≤ 6553╡ (HEX║ $000░ ábi≤ ì
  86. ááááá$FFFF)« áAucΦ áhie≥ gil⌠ da≤ unte≥ 1⌐ ágesagte« áAllerding≤ áleg⌠ ì
  87. áááááTURB╧-Pasca∞ nocΦ eineε Steiε iε deε Weg║ Einσ Eingabσ ádezimale≥ ì
  88. áááááWertσ }be≥ 3276╖ is⌠ nich⌠ m|glich« Stattdesseε m}sseε danε negaì
  89. ááááátivσ áWertσ eingegebeε werden« Diese≤ Probleφ kanns⌠ D⌡ áumgehen¼ ì
  90. áááááwenε D⌡ HE╪-Wertσ eingibst.
  91.  
  92. Zu 3) Logischσ Ausdr}ckσ k|nneε zweΘ m|glichσ Wertσ annehmen¼ WAH╥ unΣ ì
  93. áááááFALSCH« F}≥ un≤ is⌠ e≤ praktischer¼ diesσ al≤ J┴ unΣ NEI╬ áauszuì
  94. ááááádr}cken« áDa≤ Promp⌠ sieh⌠ als∩ s∩ aus║ (RET=JA)Å¡->« Stat⌠ áJ┴ ì
  95. ááááákanε aucΦ NEI╬ dor⌠ stehen¼ evtl« AucΦ 'undefiniert'« Al≤ Antwor⌠ ì
  96. ááááákanns⌠ áD⌡ jetz⌠ eiε 'Jº wiσ J┴ (wahlweisσ is⌠ aucΦ eiε á'Yº áf}≥ ì
  97. áááááengl« YE╙ m|glich⌐ ode≥ eiε 'Nº f}≥ NEI╬ eingeben« Bleib⌠ nu≥ áz⌡ ì
  98. áááááhoffen¼ da■ diσ Fragestellunτ eindeutiτ ist¼ oder?
  99.  
  100. Zu 4) Eiε áeinzelne≤ Zeichen¼ da≤ }be≥ diσ Tastatu≥ áangegebeε áwerdeε ì
  101. ááááákann« Da≤ Promp⌠ is⌠ (RET=X)==>ô ode≥ (RET=^X)==>« D⌡ kanns⌠ ì
  102. ááááádanε á}be≥ diσ Tastatu≥ eiε neue≤ Zeicheε eingeben« De≥ áWer⌠ á^═ ì
  103. áááááis⌠ allerding≤ nich⌠ m|glich¼ dß e≥ voε <RET╛ geliefer⌠ wirΣ áunΣ ì
  104. áááááda≤ bedeutet¼ deε alteε Wer⌠ unver{nder⌠ z⌡ }bernehmen.
  105.  
  106. Zu 5) Flaτ-Byte≤ sinΣ Bytes¼ diσ mehrerσ einzelnσ Flag≤ enthalten¼ bi≤ ì
  107. áááááz⌡ á╕ n{mlich« Diesσ k|nneε jetz⌠ einzelε ver{nder⌠ werden« áIhrσ ì
  108. áááááBedeutunτ solltσ nat}rlicΦ vorhe≥ bekann⌠ sein« E≤ erschein⌠ folì
  109. ááááágende≤ Bild:
  110.  
  111.      Bit#   7 6 5 4 3 2 1 0
  112.             0 0 0 0 0 0 0 0 ==> 00
  113.      Bit# ? 
  114.  
  115. áááááworaufhiε áD⌡ ájetz⌠ diσ Numme≥ de≤ Bit≤ dr}ckst¼ da≤ áD⌡ á{nderε ì
  116. áááááwillst« áMi⌠ jedeφ Dr}ckeε wirΣ da≤ Bi⌠ umgeschaltet« áWenε áallσ ì
  117. áááááBit≤ áz⌡ áDeine≥ Zufriedenhei⌠ eingestell⌠ sind¼ ás∩ ágeht'≤ ámi⌠ ì
  118. ááááá<RET╛ weiter.
  119.  
  120. Zu 6) Wa≤ eiε Strinτ ist¼ d}rftσ eigentlicΦ jede≥ Wissen¼ de≥ aucΦ nu≥ ì
  121. áááááetwa≤ áErfahrunτ ámi⌠ Computerε hat« Eiε áStrinτ áerschein⌠ áOHN┼ ì
  122. áááááPrompt« áE≤ wirΣ einfacΦ de≥ momentaε installiertσ áStrinτ áangeì
  123. ááááázeigt¼ de≥ danε nacΦ beliebeε ge{nder⌠ werdeε kann« Wiσ de≥ áZeiì
  124. ááááálenedito≥ áfunktioniert¼ solltσ maε iε de≥ Dokumentatioε z⌡ áRAM┤ ì
  125. ááááánachlesen« E≥ is⌠ rech⌠ leistungsf{hig.
  126.  
  127.  
  128. Da≤ áwa≥ eigentlicΦ schoε alles¼ wa≤ de≥ Nu≥-Anwende≥ wisseε ámu~¼ áuφ ì
  129. mi⌠ TheInsté z⌡ arbeiten« Wenε diσ Installatioε trotzdeφ nich⌠ s∩ rech⌠ ì
  130. klappeε sollte¼ s∩ ha⌠ derjenigσ Schuld¼ de≥ diσ SteuerdateΘ entworfeε ì
  131. hat.
  132. è
  133.  
  134. TheInst aus der Sicht des Programmierers:
  135.  
  136. Da■ ádiσ ganzσ Chosσ f}≥ deε Programmiere≥ ma∞ wiede≥ nich⌠ s∩ áleich⌠ ì
  137. ist¼ áwa≥ jß woh∞ klar« Denε e≥ mu■ docΦ etwa≤ genaue≥ angeben¼ áworuφ ì
  138. e≤ áeigentlicΦ geht« Au≤ de≥ Sich⌠ de≤ Programmierer≤ kenn⌠ TheInsté á╕ ì
  139. Datentypen¼ welchσ sind:
  140.  
  141. 1)áááInteger: áEin Wort im Intel-Format, also zun{chst áLow-Byte, ì
  142. ááááádann High-Byte.
  143.  
  144. 2)   Integer: áEin Wort im inversen Intel-Format, áalso ázun{chst ì
  145. áááááHigh-Byte, dann Low-Byte.
  146.  
  147. 3)   Ein áeinzelnes áZeichen. áEin Byte áwird áals áASCII-Zeichen ì
  148. áááááinterpretiert.
  149.  
  150. 4)áááEin Byte als Wert von 0 bis 255. 
  151.  
  152. 5)áááEin Byte als JA/NEIN-Flag, das zwei m|gliche Werte áannehmen ì
  153. ááááákann.
  154.  
  155. 6)áááEin Byte, das 8 einzelne Flags repr{sentiert.
  156.  
  157. 7)áááEin Bit als JA/NEIN-Flag.
  158.  
  159. 8)áááEin ááString, áalso áeine áFolgen ávon áZeichen ámit ááeiner ì
  160. ááááábestimmten Endemarkierung.
  161.  
  162. Mi⌠ ádieseε ach⌠ Datentypeε k|nneε woh∞ s∩ ziemlicΦ allσ ávorkommendeε ì
  163. F{llσ installier⌠ werden.
  164.  
  165. Der Aufbau der Steuerdatei:
  166.  
  167. Diσ SteuerdateΘ is⌠ einσ normalσ Textdatei¼ diσ mi⌠ jedeφ Edito≥ (z.B« ì
  168. MT╪-Edit⌐ áerstell⌠ werdeε kann¼ solangσ iε keineφ Zeicheε áda≤ á7.Bi⌠ ì
  169. gesetz⌠ is⌠ (beΘ NewworΣ als∩ deε NO╬-DO├-Modu≤ verwenden).
  170. Diσ erstσ Zeilσ de≥ DateΘ enth{l⌠ deε Nameε de≥ z⌡ installierendeε Daì
  171. tei¼ áunΣ zwa≥ Namσ unΣ Typ« Steh⌠ iε diese≥ Zeilσ nu≥ áeiε áFragezeiì
  172. chen¼ s∩ wirΣ aε diese≥ Stellσ de≥ Benutze≥ nacΦ deφ Nameε de≥ z⌡ áinì
  173. stallierendeε DateΘ gefragt« Da≤ is⌠ n}tzlich¼ fall≤ mi⌠ eine≥ Steuerì
  174. dateΘ mehrerσ Programmσ installier⌠ werdeε k|nnen.
  175. Iε áde≥ zweiteε Zeilσ steh⌠ de≥ Namσ eine≥ Folgedatei¼ diσ nacΦ áAbarì
  176. beitunτ diese≥ DateΘ ausgef}hr⌠ wird« Da≤ is⌠ sinnvoll¼ wenε sicΦ einσ ì
  177. Installatioε á}be≥ mehrerσ Zieldateieε erstreckt¼ z.B« áOverlays« áDe≥ ì
  178. Namσ is⌠ OHN┼ Dateityp¼ dß de≥ Ty≡ mi⌠ .IN╙ vorgegebeε ist.
  179.  
  180. Allσ restlicheε Zeileε beinhalteε diσ eigentlichσ Installation« áDiesσ ì
  181. Zeileε áunterteileε sicΦ iε zweΘ Typen║ Textzeileε unΣ áAnweisungszeiì
  182. len« áSiσ unterscheideε sicΦ durcΦ da≤ erstσ Zeicheε de≥ áZeile« áEinσ ì
  183. Anweisungszeilσ beginn⌠ IMME╥ mi⌠ eine≥ Ziffe≥ (0..9)« Jedσ Zeile¼ diσ ì
  184. nich⌠ mi⌠ eine≥ Ziffe≥ beginnt¼ is⌠ einσ Textzeile« Textzeileε áwerdeε ì
  185. unver{nder⌠ auµ deε Bildschirφ ausgegeben« Siσ k|nneε beliebiτ áaufgeì
  186. bau⌠ seiε unΣ nat}rlicΦ aucΦ Steuerzeicheε enthalten¼ uφ da≤ áErscheiì
  187. nungsbilΣ áetwa≤ interessante≥ z⌡ gestalten« Hie≥ sinΣ áde≥ áPhantasiσ ì
  188. nu≥ Grenzeε durcΦ deε MTX++½-Treibe≥ gesetzt.
  189.  
  190. Da≤ áeigentlicΦ wichtigσ sinΣ abe≥ nat}rlicΦ diσ Anweisungszeilen« áAφ ì
  191. Anfanτ áeine≥ solcheε Zeilσ steh⌠ imme≥ diσ Adressσ de≤ z⌡ áinstallieì
  192. rendeε áWertes« áDabeΘ ha⌠ da≤ erstσ Bytσ eine≥ DateΘ ádeε áWer⌠ á010░ ì
  193. (allσ áZahleε iε Anweisungszeileε sinΣ imme≥ iε HEX!)¼ dami⌠ de≥ áWer⌠ ì
  194. kompatibe∞ is⌠ z⌡ deε Debuggerε unΣ Listingdateieε de≥ Assembler« áDiσ ì
  195. Zah∞ is⌠ aε keiε Forma⌠ gebunden¼ lediglicΦ da≤ erstσ Zeicheε mu■ einσ ì
  196. Ziffe≥ áseiε á(sons⌠ w{rσ e≤ jß einσ Textzeile)« 010░ kanns⌠ áD⌡ áals∩ ì
  197. aucΦ al≤ 10░ ode≥ meinetwegeε al≤ 00010░ schreiben« Da≤ is⌠ mi≥ v|lliτ ìèschnuppe« LediglicΦ einσ Obergrenzσ gib⌠ es¼ diσ un≤ voε áTURB╧-Pasca∞ ì
  198. auferleg⌠ áwird« áDe≥ áh|chstσ áerlaubtσ Wer⌠ áis⌠ á03FFF8░ á(Da≤ áis⌠ ì
  199. 128*MaxInt)« áNacΦ de≥ Adressσ folgeε eiε bi≤ beliebiτ vielσ áLeerzeiì
  200. cheε ode≥ Tabs..« UnΣ danε geh⌠ e≤ ers⌠ richtiτ los.
  201.  
  202. Jetz⌠ áfolg⌠ n{mlicΦ da≤ eigentlichσ Kommando« E≤ kanε ▒ ábi≤ ámehrerσ ì
  203. Zeicheε álanτ sein¼ wobeΘ de≥ erstσ Buchstabσ imme≥ deε áDatenty≡ áanì
  204. gibt¼ áde≥ installier⌠ werdeε soll« E≤ gib⌠ einigσ Kommandos¼ diσ ábeì
  205. reit≤ mi⌠ deφ Kommandobuchstabeε komplet⌠ sind« Diesσ sind:
  206.  
  207. W    f}≥ áeiε Wort¼ als∩ eineε Intege≥-Wer⌠ iφ }blicheε áInte∞-Format« ì
  208. áááááIφ áSpeiche≥ steh⌠ als∩ zun{chs⌠ da≤ Lo≈-Bytσ unΣ danε da≤ áHigΦ-ì
  209. áááááByte« áF}≥ deε Anwende≥ wirΣ de≥ Wer⌠ abe≥ iε de≥ logischeε áReiì
  210. áááááhenfolgσ angezeigt« Also║ Iφ Speiche≥ steh⌠ 5╡ 66¼ iφ Promp⌠ áerì
  211. áááááschein⌠ $6655.
  212.  
  213. Xááááf}≥ áeiε Wort¼ da≤ nich⌠ iφ Inte∞-Forma⌠ abgeleg⌠ ist¼ áals∩ ázuì
  214. ááááán{chs⌠ da≤ HigΦ-Bytσ unΣ danε da≤ Lo≈-Byte« Steh⌠ iφ Speiche≥ á5╡ ì
  215. ááááá66¼ ás∩ áerschein⌠ iφ Promp⌠ $5566« Abe≥ da≤ d}rftσ áauµ áunsereφ ì
  216. áááááRechne≥ eigentlicΦ nich⌠ vorkommen.
  217.  
  218. Zááááf}≥ áeiε einzelne≤ Zeichen« De≥ Bytewer⌠ wirΣ áal≤ áASCI╔-Zeicheε ì
  219. ááááábehandel⌠ unΣ angezeigt« Handel⌠ e≤ sicΦ uφ eiε áContro∞-Zeichen¼ ì
  220. ááááás∩ wirΣ e≤ al≤ ^° dargestellt.
  221.  
  222. Eááááf}r ein Byte. Das Byte wird als Wert von 0 bis 255 behandelt.
  223.  
  224. Bááááf}≥ áeiε Byte¼ da≤ bi≤ z⌡ ╕ einzelnσ Bitflag≤ enth{lt« Hie≥ áwirΣ ì
  225. ááááámit
  226.  
  227.      Bit#    7 6 5 4 3 2 1 0
  228.              0 0 0 0 0 0 0 0 ==> 00
  229.      Bit# ?
  230.  
  231.      geprompted« áDanε k|nneε diσ Nummerε de≥ Bit≤ áangegebeε áwerden¼ ì
  232. ááááádiσ áge{nder⌠ áwerdeε sollen« Diσ Anzeigσ wirΣ ást{ndiτ áauµ ádeφ ì
  233. áááááneuesteε StanΣ gehalten« Mi⌠ <RET╛ wirΣ diσ Eingabσ beendet« áBeΘ ì
  234. ááááádieseφ áDatenty≡ ámu■ iφ Begleittex⌠ als∩ auµ diσ áBedeutunτ áde≥ ì
  235. áááááeinzelneε Bit≤ hingewieseε werden.
  236.  
  237.  
  238. Da≤ sinΣ diσ Kommandos¼ diσ ohnσ weiterσ Angabeε auskommen« Allσ andeì
  239. reε Kommando≤ sinΣ etwa≤ komplizierter.
  240.  
  241. Fn1/n2é ásteh⌠ f}≥ eiε Flag¼ da≤ iε eineφ Bytσ abgeleg⌠ ist« áEiε áFlaτ ì
  242. ááááákanε ábekanntlicΦ zweΘ Wertσ annehmen¼ J┴ unΣ NEIN« Iε án▒ ásteh⌠ ì
  243. áááááde≥ áWer⌠ f}≥ JA¼ iε n▓ de≥ Wer⌠ f}≥ NEIN« n▒ unΣ n▓ ásinΣ ázweiì
  244. ááááástelligσ HE╪-Zahlen« Eiε Beispiel║ F00/FF╗ dor⌠ steh⌠ als∩ 0░ f}≥ ì
  245. áááááJ┴ áunΣ áF╞ áf}≥ NEIN« BeΘ ├-Programmeε ád}rftσ ádiσ áKombinatioε ì
  246. áááááF00/0▒ áh{ufige≥ sein¼ dß dor⌠ Wahrheitswertσ mi⌠ ádieseε áZahleε ì
  247. ááááábearbeite⌠ werden« Finde⌠ TheIns⌠ aε de≥ angegebeneε Adressσ keiì
  248. áááááneε de≥ beideε Werte¼ s∩ erschein⌠ iφ Promp⌠ 'undefiniert'.
  249.  
  250. Jm/násteh⌠ f}≥ eiε Flag¼ da≤ iε eineφ Bi⌠ abgeleg⌠ ist« DabeΘ steh⌠ áφ ì
  251. áááááf}≥ ádiσ Bitnumme≥ (░ bi≤ 7¼ mi⌠ ╖ al≤ h|chstwertigeφ Bit⌐ unΣ áε ì
  252. áááááf}≥ ádeε Wer⌠ voε J┴ (░ ode≥ 1¼ meh≥ kanε eiε Bi⌠ nunma∞ ánicht)« ì
  253. áááááEiε áBeispiel║ áJ4/0╗ Bi⌠ ┤ iε deφ adressierteε áBytσ ádien⌠ áal≤ ì
  254. áááááFlag¼ mi⌠ 0=J┴ unΣ 1=NEIN« Iφ Gegensat· z⌡ Kommand∩ Fé sinΣ φ áunΣ ì
  255. áááááε beΘ dieseφ Kommand∩ einstellig.
  256.  
  257. Sn1/n2é steh⌠ f}≥ eineε Textstring« String≤ sinΣ jß nuε etwa≤ komplexeì
  258. ááááárσ áDinge≥ unΣ neigeε dazu¼ iε unz{hlbareε Variationeε áaufzutreì
  259. áááááten« áNu≥ eiε paa≥ Beispiele║ Iε TURB╧-Pasca∞ ha⌠ eiε Strinτ áeiε ì
  260. áááááL{ngenbyte¼ gefolg⌠ voε deφ Text« Iε ├ wirΣ de≥ Strinτ mi⌠ áeineφ ì
  261. ááááá0░-Bytσ beendet« CP/═ verlang⌠ eiε '$º aφ Ende« IcΦ selbs⌠ benutì
  262. ááááázσ gerε diσ Variantσ mi⌠ deφ gesetzteε 7.Bi⌠ al≤ áEndemarkierung« ìèáááááDiesσ áverschiedeneε áTypeε werdeε durcΦ deε Wer⌠ voε án▒ áunterì
  263. áááááschieden:
  264.      B7ô steh⌠ f}≥ Bi⌠ 7¼ als∩ eineε String¼ de≥ durcΦ eiε gesetzte≤ 7« ì
  265. áááááBi⌠ beende⌠ wirΣ (da≤ beendendσ Zeicheε geh|r⌠ mi⌠ zuφ String).
  266.      NEô ásteh≥ f}≥ keinσ Ende¼ als∩ eineε String¼ de≥ keinσ áEndσ-Kenì
  267. ááááánunτ besitzt« 
  268.      L0ô steh⌠ f}≥ eineε Strinτ mi⌠ eineφ L{ngenbytσ aφ Anfang« áDirek⌠ ì
  269. ááááádanacΦ folg⌠ de≥ eigentlichσ String.
  270. áááááAllσ andereε Wertσ (wiσ }blicΦ iε zweistelliτ HEX⌐ bezeichneε eiε ì
  271. áááááEndezeichen« Da≤ kanε z.B« 0░ sein¼ ode≥ 2┤ f}≥ CP/═ ode≥ ásonstì
  272. áááááwas.
  273.      n▓ ádefinier⌠ diσ maximalσ L{ngσ de≤ String≤ inklusiveô de≥ áEndeì
  274. ááááámarkierunτ bzw« L{ngenangabe« Eiε Strinτ mi⌠ 1░ Zeicheε unΣ eineφ ì
  275. ááááá0░-Bytσ áaφ Endσ brauch⌠ als∩ diσ L{ngenangabσ 0┬ á(1▒ áZeichen)« ì
  276. áááááEiε paa≥ Beispiele:
  277.      SL0/51 áist áein áString, áder áin áTURBO-Pascal ámit ástring(80) ì
  278. ááááádefiniert werden w}rde.
  279.      SB7/10 áist áein String mit max. 16 Zeichen, ábeendet ádurch áein ì
  280. ááááágesetztes 7.Bit.
  281. áááááS24/0A áist ein CP/M-String mit max. 9 Zeichen (das 10. wird áf}r ì
  282. ááááádas Dollarzeichen am Ende ben|tigt).
  283.  
  284.  
  285. So¼ áda≤ wa≥ da≤ wichtigste« NocΦ eiε paa≥ Wortσ z⌡ ádeε áerl{uterndeε ì
  286. Texteε iε de≥ Steuerdatei║ Jσ klare≥ beschriebeε wird¼ wa≤ z⌡ tuε ist¼ ì
  287. dest∩ áwenige≥ R}ckfrageε werdeε kommen« Besonder≤ solltσ nochma∞ áauµ ì
  288. diσ áTatsachσ hingewieseε werden¼ da■ HE╪-Zahleε mi⌠ áeineφ áf}hrendeε ì
  289. Dollarzeicheε eingegebeε werdeε m}ssen¼ wegeε TURB╧-Pascal« Dor⌠ d}rfì
  290. teε áaφ meisteε Problemσ auftauchen¼ denε 1░ is⌠ nuε einma∞ áwa≤ ágan· ì
  291. andere≤ al≤ $10« Ansonsteε schade⌠ e≤ siche≥ nicht¼ wenε de≥ Tex⌠ aucΦ ì
  292. durcΦ diσ Benutzunτ voε Bildschirmattributeε aufgelocker⌠ wird.
  293.  
  294. UnΣ z⌡ gute≥ letz⌠ nocΦ da≤ ]bliche:
  295. Da≤ áProgramφ unΣ diσ dazugeh|rigσ Dokumentatioε sinΣ freigegebeε áf}≥ ì
  296. deε á'Publiπ Domainº-BereicΦ unΣ d}rfeε z⌡ nichtkommerzielleε áZweckeε ì
  297. kostenlo≤ weitergegebeε werden¼ solangσ da≤ Copyrigh⌠ de≤ Autor≤ nich⌠ ì
  298. entfern⌠ wird.
  299.  
  300. We≥ Fehle≥ finde⌠ ode≥ Anregungeε hat¼ wende⌠ sicΦ bittσ an
  301.  
  302.      Olaµ Krumnow
  303.      Wiesnerrinτ 19c
  304.      ─-205░ Hamburτ 80
  305.  
  306. Tel║ (040⌐ 72┤ 9╡ 66
  307.  
  308. Vie∞ Spa~...
  309.