home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / 94xx / 9410a.d64 / autostart-ass (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  5KB  |  132 lines

  1. 100 ";     *******************
  2. 110 ";     *                 *
  3. 120 ";     * AUTOSTART FUER  *
  4. 130 ";     *                 *
  5. 140 ";     *                 *
  6. 150 ";     * BASICPROGRAMME  *
  7. 160 ";     *                 *
  8. 170 ";     * AUF C64,  V1.0  *
  9. 180 ";     *                 *
  10. 190 ";     *******************
  11. 200 ";
  12. 210 ";
  13. 220 ";
  14. 240 ";
  15. 250 ";
  16. 260 ";
  17. 270 ";
  18. 280 "           .BA $C900
  19. 290 "            ;
  20. 300 "            ;
  21. 310 "           ;RAMADRESSEN
  22. 320 "           ;***********
  23. 330 "            ;
  24. 340 "            ;
  25. 350 "BASBL  =$0308             ;ENTHALTEN EINSPRUNGADRESSE FUER BASICBEFEHLE
  26. 360 "BASBH  =$0309
  27. 370 "            ;
  28. 380 "MBASBL  =$C900            ;ZWISCHENSPEICHER FUER ALTEN BASICEINSPRUNG
  29. 390 "MBASBH  =$C901
  30. 400 "            ;
  31. 410 "NBASBL  =$29              ;NEUE EINSPRUNGADRESSE FUER BASICBEFEHLE
  32. 420 "NBASBH  =$C9              ;IST $C929
  33. 430 "            ;
  34. 440 "FILENR  =$02              ;LOGISCHE FILENUMMER
  35. 450 "SEKADR  =$02              ;SEKUNDAERADRESSE
  36. 460 "GERNR   =$08              ;ENTHAELT GERAETENUMMER
  37. 470 "            ;
  38. 480 "BASZEIL =$7A              ;ZEIGER AUF ZEICHEN IM BASICTEXT
  39. 490 "BASZEIH =$7B              ;WIRD BEI CHRGET ERHOEHT, BLEIBT BEI CHRGOT KONST
  40. 500 "            ;
  41. 510 "PRGENDL =$2D              ;PROGRAMMENDEZEIGER
  42. 520 "PRGENDH =$2E              ;WIRD NACH LOAD JEWEILS GESETZT
  43. 530 "            ;
  44. 540 "            ;
  45. 550 "           ;BETRIEBSSYSTEMADRESSEN
  46. 560 "           ;**********************
  47. 570 "            ;
  48. 580 "            ;
  49. 590 "CHRGET  =$0073            ;HOLT ZEICHEN AUS TEXT
  50. 600 "CHRGOT  =$0079            ;HOLT LETZTES ZEICHEN AUS TEXT
  51. 610 "GETNAME =$E257            ;HOLT FILENAMEN
  52. 620 "SYNTAX  =$AF08            ;SYNTAX ERROR
  53. 630 "INTSCHL =$A7AE            ;INTERPRETERSCHLEIFE
  54. 640 "            ;
  55. 650 "LOAD    =$FFD5            ;LOAD-ROUTINE
  56. 660 "RUN     =$A659            ;RUN-ROUTINE
  57. 670 "SETFIL  =$FFBA            ;SETZT FILEPARAMETER
  58. 680 "ERRAUS  =$E0F9            ;FEHLERAUSWERTUNG NACH LOAD-ROUTINE
  59. 690 "            ;
  60. 700 "            ;
  61. 710 "           ;INIT
  62. 720 "           ;****
  63. 730 "            ;
  64. 740 "            ;
  65. 750 "           .BY $E4        ;DEFAULTWERT BASICZEIGER $A7E4
  66. 760 "           .BY $A7
  67. 770 "           SEI
  68. 780 "           LDA BASBL      ;LOWZEIGER PRUEFEN
  69. 790 "           CMP #NBASBL
  70. 800 "           BNE INIT       ;UNGLEICH, DANN INIT
  71. 810 "           LDA BASBH      ;HIGHZEIGER VERGLEICHEN
  72. 820 "           CMP #NBASBH
  73. 830 "           BEQ RUECK
  74. 840 "INIT       LDA BASBL      ;ALTEN ZEIGER MERKEN, LOWBYTE
  75. 850 "           STA MBASBL     ;IN $C900 SPEICHERN
  76. 860 "           LDA BASBH      ;HIGH-BYTE
  77. 870 "           STA MBASBH     ;IN $C901 SPEICERN
  78. 880 "           LDA #NBASBL    ;NEUEN BASICZEIGER SETZEN
  79. 890 "           STA BASBL      ;LOWBYTE $29 IN $0308 SPEICHERN
  80. 900 "           LDA #NBASBH
  81. 910 "           STA BASBH      ;HIGHBYTE $C9 IN $0309 SPEICHERN
  82. 920 "RUECK      CLI
  83. 930 "           RTS
  84. 940 "            ;
  85. 950 "            ;
  86. 960 "           ;NEUER EINSPRUNG
  87. 970 "           ;***************
  88. 980 "            ;
  89. 990 "            ;
  90. 1000 "          JSR CHRGET
  91. 1010 "          CMP #'!        ;AUSRUFEZEICHEN ?
  92. 1020 "          BEQ FOUND      ;JA, DANN EIGENE ROUTINE
  93. 1030 "
  94. 1040 "          LDX BASZEIL    ;BASICZEIGER LOW
  95. 1050 "          BNE LAB1
  96. 1060 "          DEC BASZEIH    ;BASICZEIGER HIGH DEKREMENTIEREN, WENN LOW=0
  97. 1070 "LAB1      DEC BASZEIL    ;BASICZEIGER LOW DEKREMENTIEREN
  98. 1080 "          JMP (MBASBL)   ;INTERPRETERBEFEHL AUSFUEHREN
  99. 1090 "FOUND     JSR CHRGET     ;ZEIGER AUF ERSTES ZEICHEN SETZEN
  100. 1100 "          JSR GETNAME    ;HOLT FILENAMEN
  101. 1110 "          LDY #SEKADR    ;SEKUNDAERADRESSE 2
  102. 1120 "          LDA #FILENR    ;FILENUMMER 2
  103. 1130 "          LDX #GERNR     ;GERAETENUMMER 8 = FLOPPY
  104. 1140 "          JSR SETFIL     ;SETZT FILEPARAMETER
  105. 1150 "          LDA #$00       ;ZEIGT LOAD AN; $01 FUER VERIFY
  106. 1160 "          JSR LOAD       ;LOADROUTINE
  107. 1170 "          BCC OK         ;FEHLERAUSGABE
  108. 1180 "          JMP ERRAUS     ;FEHLERMELDUNG AUSGEBEN
  109. 1190 "OK        STX PRGENDL    ;ENDEZEIGER SPEICHERN
  110. 1200 "          STY PRGENDH
  111. 1210 "          JSR RUN        ;PROGRAMM STARTEN
  112. 1220 "          JMP INTSCHL    ;ZURUECK ZUR INTERPRETERSCHLEIFE
  113. 1230 "           ;
  114. 1240 "           ;
  115. 1250 "          ;OLD
  116. 1260 "          ;***
  117. 1270 "           ;
  118. 1280 "           ;
  119. 1290 "          LDA BASBL      ;BASICZEIGER PRUEFEN; LOW
  120. 1300 "          CMP #NBASBL    ;GLEICH NEUEM ZEIGER
  121. 1310 "          BNE BACK       ;UNGLEICH, DANN RUECKSPRUNG
  122. 1320 "          LDA BASBH      ;HIGHBYTE VERGLEICHEN
  123. 1330 "          CMP #NBASBH    ;GLEICH NEUEM ZEIGER ?
  124. 1340 "          BNE BACK
  125. 1350 "          SEI
  126. 1360 "          LDA MBASBL     ;ALTER ZEIGER, LOW
  127. 1370 "          STA BASBL
  128. 1380 "          LDA MBASBH     ;ZEIGER HIGH
  129. 1390 "          STA BASBH      ;ORIGINALZEIGER ZURUECKHOLEN
  130. 1400 "          CLI
  131. 1410 "BACK      RTS
  132.