home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1987 / 09 / turpar.asm < prev    next >
Encoding:
Assembly Source File  |  1987-08-09  |  2.1 KB  |  78 lines

  1. ; TURPAR.ASM  CP/M 2.2 + Turbo Pascal 2.0
  2. ; Version 2.0    U. Kornnagel
  3. ; PATCH  Kommandozeilen-Parameter auf 127
  4. ;        statt 32 Zeichen!
  5.  
  6. ;        Laenge des Parameters:
  7. STR.LEN        EQU    127
  8.  
  9. ;        Parameteruebergabe-Adresse nach Laden:
  10. BASEPAGE       EQU    80H
  11.  
  12. ;        Startadresse der Anwendung (TPA):
  13. TPA            EQU    0100H
  14.  
  15. ;        Zeiger-Adresse der Parameter-Kopie:
  16. ; Dieser Wert muss im Pascal-Programm als
  17. ; absolute Adresse der Zeigervariablen zuge-
  18. ; wiesen werden (s. Pascal-Listing)
  19. Pointer        EQU    1FC9H
  20.  
  21. ;        Startadresse des Programms incl. Patch:
  22. Prog.Start     EQU    Pointer+2+STR.LEN+1
  23.  
  24. ; Begin des Patches fuer das compilierte Programm:
  25.  
  26.                ORG    TPA
  27.                JP     Prog.Start
  28.  
  29.                ORG    Pointer
  30.                DEFW   Neu.Parameter
  31. Neu.Parameter: DEFS   STR.LEN+1
  32.  
  33. ;           Patch fuer das compilierte Programm:
  34.                ORG    Prog.Start
  35.  
  36. ; Parameter-Puffer loeschen:
  37.                LD     HL,Neu.Parameter
  38.                LD     DE,Neu.Parameter+1
  39.                LD     BC,STR.LEN
  40.                LD     (HL),0
  41.                LDIR
  42.  
  43. ; Uebergabeparameter in Puffer kopieren:
  44.                LD     HL,BASEPAGE
  45.                LD     DE,Neu.Parameter
  46.                LD     BC,STR.LEN+1
  47.                LDIR
  48.  
  49. TOP.OF.MEM:
  50. ; Hier beginnt des Pascal-Programm.
  51. ; Diese Adresse vor dem Compilieren mit der
  52. ; Option S vereinbaren!
  53.  
  54. PASCAL.START   EQU    TOP.OF.MEM
  55.                END
  56.  
  57. ; Der Patch im Intel-Hex-Format, der mittels DDT
  58. ; in das compilierte Programm eingebunden werden muss:
  59.  
  60. :03010000C34B20CE
  61. :021FC900CB1F2C
  62. :1820B0021CB1F11CC1F017F003600EDB021800011CB1F018000EDB069
  63. :0000000000
  64.  
  65. ; Einbindung:
  66. ;   Turbo-Pascal-Programm schreiben
  67. ;   Mit der Option C COM-File-Erzeugung einstellen
  68. ;   Mit der Option S Startadresse auf 2063 (Hex) setzen
  69. ;   Programm compilieren
  70. ;   Laden des Programmes ueber DDT oder ZSID
  71. ;     z.B. ZSID Myprog.COM
  72. ;   Festlegen des Patches TURPAR.HEX und ausfuehren:
  73. ;     Eingabe der Befehle
  74. ;          ITURPAR.HEX
  75. ;          R
  76. ;   ZSID oder DDT mit ^C verlassen
  77. ;   Programm mit SAVE speichern.
  78.