home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128Toolkit / MADS-TO-LADS-CONVERTER (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  1.9 KB  |  74 lines

  1. 10 REM MTL
  2. 11 REM* THIS PROGRAM CAN BE USED TO
  3. 12 REM* CONVERT A SEQUENTIAL ASSEMBLER
  4. 13 REM* FILE WITHOUT LINE NUMBERS
  5. 14 REM* (MADS/MERLIN FORMAT) TO A
  6. 15 REM* NUMBERED, BASIC-TYPE PROGRAM
  7. 16 REM* FILE, SUCH AS LADS.  FOLLOW
  8. 17 REM* THE FOLLOWING PROCEDURES:
  9. 18 REM*
  10. 19 REM*  1. DELETE ALL LINES BEFORE
  11. 20 REM*     60000.  ONLY LINES FROM
  12. 21 REM*     60000 ON ARE PART OF THE
  13. 22 REM*     RUN-TIME PROGRAM.
  14. 23 REM*
  15. 24 REM*  2. RUN THIS PROGRAM.  ENTER
  16. 25 REM*     THE NAME OF THE SEQUENTIAL
  17. 26 REM*     FILE TO CONVERT.  THE TEXT
  18. 27 REM*     OF THE FILE WILL BE READ
  19. 28 REM*     FROM DISK, DISPLAYED ON
  20. 29 REM*     THE SCREEN (WITH LINE
  21. 30 REM*     NUMBERS ADDED), AND STORED
  22. 31 REM*     IN MEMORY.  WHEN THE ENTIRE
  23. 32 REM*     FILE HAS BEEN READ IN, THE
  24. 33 REM*     SOURCE CODE WILL BE CREATED
  25. 34 REM*     IN MEMORY USING THE DYNAMIC
  26. 35 REM*     KEYBOARD TECHNIQUE.
  27. 36 REM*  3. WHEN THE PROGRAM IS
  28. 37 REM*     COMPLETED, DELETE LINES
  29. 38 REM*     FROM 60000 ON.  YOU SHOULD
  30. 39 REM*     BE LEFT WITH JUST THE
  31. 40 REM*     CONVERTED SOURCE CODE.
  32. 41 REM*     YOU WILL NEED TO ALTER THE
  33. 42 REM*     CODE TO SUIT YOUR
  34. 43 REM*     PARTICULAR ASSEMBLER; E.G.
  35. 44 REM*    
  36. 45 REM*     CODES, EQUATES, ADDRESS
  37. 46 REM*     DEFINTIONS, ETC.  THE
  38. 47 REM*     RESULTING CODE CAN BE SAVED
  39. 48 REM*     LIKE ANY OTHER PROGRAM
  40. 49 REM*     FILE.
  41. 50 REM*
  42. 60000 REM MTL
  43. 60010 POKE55,0:POKE56,100:CLR
  44. 60020 PRINT"ôCONVERT MADS TO LADS"
  45. 60030 INPUT"SEQ FILENAME";F$
  46. 60040 OPEN2,8,2,F$
  47. 60050 M=25600:REM MEMORY ADDRESS
  48. 60060 L=L+10:L$=MID$(STR$(L),2)
  49. 60070 FORI=1TOLEN(L$)
  50. 60080 A=ASC(MID$(L$,I,1)+CHR$(0))
  51. 60090 POKEM+P,A:P=P+1
  52. 60100 NEXT:PRINTL$;
  53. 60110 GET#2,A$
  54. 60120 IFSAND64THEN60200
  55. 60130 S=ST
  56. 60140 A=ASC(A$+CHR$(0))AND127
  57. 60150 POKEM+P,A
  58. 60160 P=P+1:A$=CHR$(A)
  59. 60170 PRINTA$;
  60. 60180 IFA    
  61. 60190 GOTO60110
  62. 60200 CLOSE2
  63. 60210 X=P:P=0
  64. 60220 PRINT"ô"
  65. 60230 IFP>XTHEN60310
  66. 60240 A=PEEK(M+P)
  67. 60250 PRINTCHR$(A);
  68. 60260 IFA<>13THENP=P+1:GOTO60230
  69. 60270 PRINT"P="P+1":X="X":M="M""
  70. 60280 PRINT"GOTO60220";
  71. 60290 POKE631,13:POKE632,13:POKE633,13
  72. 60300 POKE198,3:END
  73. 60310 END
  74.