home *** CD-ROM | disk | FTP | other *** search
/ CBM Funet Archive / cbm-funet-archive-2003.iso / cbm / c128 / utilities / ramdosii.sfx / ramdos.bas (.txt) < prev    next >
Commodore BASIC  |  1990-02-12  |  2KB  |  70 lines

  1. 5 d=peek(186)
  2. 6 poke53280,6:poke53281,6
  3. 10 rem f$="ramdos.bas":open1,d,15,"s0:"+f$:close1:savef$,d
  4. 15 if p then 320
  5. 20 print"[147]";
  6. 30 print"[176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  7. 40 print"[221] [158]ramdisk ][ [159]installation - [153]version 1[221]"
  8. 50 print"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]":print
  9. 60 :
  10. 100 gosub9000:if a=0 then 350
  11. 110 u=9:print"install ram disk as unit     10[157][157][157][157]";:inputu
  12. 120 : u=int(u): if u<4 or u>30 then 110
  13. 125 if f=0 then p=207: l=6: ml=25344: re=780: f$="ramdos64.bin*"
  14. 126 if f=1 then p=14:  l=5: ml=8960:  re=6:   f$="ramdos128.bin*"
  15. 130 print "ram disk interface page is  ";p;left$("[157][157][157][157][157][157]",l);:input p
  16. 140 : if f=0 and (p<2 or p>207) then 125
  17. 145 : if f=1 and (p<2 or p>32)  then 125
  18. 150 a$="n": input "initialize ram disk          n[157][157][157]";a$
  19. 160 : m=3: if left$(a$,1)="y" then m=0
  20. 170 :
  21. 180 if (f=0 and p=207) or (f=1 and p=14) then 280
  22. 190 : a$="n": input "check interface page: are you sure  n[157][157][157]";a$
  23. 200 : if left$(a$,1)<>"y" then 20
  24. 210 :
  25. 215 rem  c128  c64      what it do
  26. 220 rem $2300 $6300 --> install    ram disk
  27. 230 rem     3     3 --> re-install ram disk
  28. 240 rem     6     6 --> install    ram disk w/ arg: unit=.a page=.x
  29. 250 rem     9     9 --> re-install ram disk w/ arg: unit=.a page=.x
  30. 260 rem     c     c --> display copyright notice
  31. 270 :
  32. 280 a$="y":input"restore i/o vectors          y[157][157][157]";a$
  33. 281 ifa$="n"then285
  34. 282 print " * restoring system vectors": sys 65418
  35. 285 : if f=0 then 300
  36. 290 print " * allocating graphic area for ram disk": (NULL)1,1
  37. 295 : if peek((NULL)("d7"))=0 then (NULL)0
  38. 300 print " * loading ramdisk driver"
  39. 305 : if f=0 then load f$,d,1
  40. 306 : if f=1 then (NULL) (f$)
  41. 310 :
  42. 320 sys ml+12              :rem  print embedded copyright notice
  43. 325 poke re,u: poke re+1,p :rem  lda unit: ldx page
  44. 330 sys ml+6+m             :rem  (re)install ramdisk, using unit# & page
  45. 340 :
  46. 350 print: end
  47. 360 end
  48. 370 end
  49. 380 end                   :rem  goodbye
  50. 390 :
  51. 9000 rem verify presence of ram card
  52. 9005 :
  53. 9010 r=57088: a=1
  54. 9020 fori=2to5:poker+i,i:next
  55. 9030 fori=2to5:ifpeek(r+i)<>ithen9050
  56. 9040 next: goto9080
  57. 9050 a=0: print " ram expander not present ": return
  58. 9060 :
  59. 9070 rem determine if c64 or c128
  60. 9075 :
  61. 9080 f=abs(peek(65533)=255) :rem f=0 if c64, f=1 if c128
  62. 9090 if f then (NULL) 15      :rem select 128 system bank
  63. 9100 return
  64. 9110 :
  65. 9995 rem f.bowen 08/07/87 copyright 1987 commodore business machines, inc.
  66. 9996 :
  67. 9997 rem   2mb patches 01/03/91
  68. 9998 rem   by andrew e. mileski
  69. 9999 rem     alias 'recursion'
  70.