Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.sys.apple2.programmer > #4280 > unrolled thread

Both BASICs under ProDOS

Started byJames Davis <JPD.Enterprises@outlook.com>
First post2018-03-04 12:21 -0800
Last post2018-03-10 16:20 -0800
Articles 13 — 5 participants

Back to article view | Back to comp.sys.apple2.programmer


Contents

  Both BASICs under ProDOS James Davis <JPD.Enterprises@outlook.com> - 2018-03-04 12:21 -0800
    Re: Both BASICs under ProDOS gids.rs@sasktel.net - 2018-03-04 15:09 -0800
      Re: Both BASICs under ProDOS James Davis <JPD.Enterprises@outlook.com> - 2018-03-05 08:41 -0800
        Re: Both BASICs under ProDOS gids.rs@sasktel.net - 2018-03-05 10:50 -0800
          Re: Both BASICs under ProDOS James Davis <JPD.Enterprises@outlook.com> - 2018-03-08 00:58 -0800
            Re: Both BASICs under ProDOS gids.rs@sasktel.net - 2018-03-08 10:35 -0800
              Re: Both BASICs under ProDOS James Davis <JPD.Enterprises@outlook.com> - 2018-03-08 14:44 -0800
                Re: Both BASICs under ProDOS gids.rs@sasktel.net - 2018-03-08 17:53 -0800
                  Re: Both BASICs under ProDOS Brian Patrie <bpatrie@bellsouth.spamisicky.net> - 2018-03-10 03:29 -0600
                    Re: Both BASICs under ProDOS Steve Nickolas <usotsuki@buric.co> - 2018-03-10 05:15 -0500
                      Re: Both BASICs under ProDOS Anthony Ortiz <anthonypaulo@gmail.com> - 2018-03-10 06:30 -0800
                        Re: Both BASICs under ProDOS James Davis <JPD.Enterprises@outlook.com> - 2018-03-10 16:35 -0800
    Re: Both BASICs under ProDOS gids.rs@sasktel.net - 2018-03-10 16:20 -0800

#4280 — Both BASICs under ProDOS

FromJames Davis <JPD.Enterprises@outlook.com>
Date2018-03-04 12:21 -0800
SubjectBoth BASICs under ProDOS
Message-ID<a2c6b596-e5b7-456f-a274-6e004b1bd9f7@googlegroups.com>
To all Apple II programmers:

Is there a BASIC.SYSTEM that will load both Applesoft and Integer BASIC under ProDOS?  I would like to be able to switch back and forth from Applesoft to Integer BASIC under ProDOS by typing the commands "INT" and "FP" just like under DOS 3.3, without crashing into the Monitor!  And, I would like to be able to LOAD, RUN, and SAVE Integer BASIC programs under ProDOS to floppy/hard disks (or to disk images in emulators, like AppleWin).  

If there is not such a BASIC.SYSTEM, would someone please create one!

Thanks in advance,

James Davis

[toc] | [next] | [standalone]


#4281

Fromgids.rs@sasktel.net
Date2018-03-04 15:09 -0800
Message-ID<fa8fc22f-45a8-4821-8735-75794bca0705@googlegroups.com>
In reply to#4280
On Sunday, March 4, 2018 at 2:21:38 PM UTC-6, James Davis wrote:
> To all Apple II programmers:
> 
> Is there a BASIC.SYSTEM that will load both Applesoft and Integer BASIC under ProDOS?  I would like to be able to switch back and forth from Applesoft to Integer BASIC under ProDOS by typing the commands "INT" and "FP" just like under DOS 3.3, without crashing into the Monitor!  And, I would like to be able to LOAD, RUN, and SAVE Integer BASIC programs under ProDOS to floppy/hard disks (or to disk images in emulators, like AppleWin).  
> 
> If there is not such a BASIC.SYSTEM, would someone please create one!
> 
> Thanks in advance,
> 
> James Davis

http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/collections/Int.Basic.Pdos8.2mg.zip

[toc] | [prev] | [next] | [standalone]


#4282

FromJames Davis <JPD.Enterprises@outlook.com>
Date2018-03-05 08:41 -0800
Message-ID<0051814b-aa99-48eb-bf85-ccce8cfe9b72@googlegroups.com>
In reply to#4281
On Sunday, March 4, 2018 at 3:09:43 PM UTC-8, gid...@sasktel.net wrote:
> On Sunday, March 4, 2018 at 2:21:38 PM UTC-6, James Davis wrote:
> > To all Apple II programmers:
> > 
> > Is there a BASIC.SYSTEM that will load both Applesoft and Integer BASIC under ProDOS?  I would like to be able to switch back and forth from Applesoft to Integer BASIC under ProDOS by typing the commands "INT" and "FP" just like under DOS 3.3, without crashing into the Monitor!  And, I would like to be able to LOAD, RUN, and SAVE Integer BASIC programs under ProDOS to floppy/hard disks (or to disk images in emulators, like AppleWin).  
> > 
> > If there is not such a BASIC.SYSTEM, would someone please create one!
> > 
> > Thanks in advance,
> > 
> > James Davis
> 
> http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/collections/Int.Basic.Pdos8.2mg.zip

That is the one that crashes into the monitor when trying to switch back to FP (Applesoft)!

[toc] | [prev] | [next] | [standalone]


#4283

Fromgids.rs@sasktel.net
Date2018-03-05 10:50 -0800
Message-ID<d9c392d8-cdbb-405f-b18b-e9a8fcfdfdaa@googlegroups.com>
In reply to#4282
On Monday, March 5, 2018 at 10:41:33 AM UTC-6, James Davis wrote:
> On Sunday, March 4, 2018 at 3:09:43 PM UTC-8, gid...@sasktel.net wrote:
> > On Sunday, March 4, 2018 at 2:21:38 PM UTC-6, James Davis wrote:
> > > To all Apple II programmers:
> > > 
> > > Is there a BASIC.SYSTEM that will load both Applesoft and Integer BASIC under ProDOS?  I would like to be able to switch back and forth from Applesoft to Integer BASIC under ProDOS by typing the commands "INT" and "FP" just like under DOS 3.3, without crashing into the Monitor!  And, I would like to be able to LOAD, RUN, and SAVE Integer BASIC programs under ProDOS to floppy/hard disks (or to disk images in emulators, like AppleWin).  
> > > 
> > > If there is not such a BASIC.SYSTEM, would someone please create one!
> > > 
> > > Thanks in advance,
> > > 
> > > James Davis
> > 
> > http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/collections/Int.Basic.Pdos8.2mg.zip
> 
> That is the one that crashes into the monitor when trying to switch back to FP (Applesoft)!


I just downloaded it and it works fine.

I didn't plan for IB to be used at the same time as applesoft due to IB being in lower memory.

If you load and run an applesoft program while IB is in memory, the strings will overwrite IB.

If you know how to use Basic.system's call to $BEF5 to reserve memory between Basic.system and its buffers, then you will have to program it that way and IB will have to be moved into place. 

You can also try setting Himem to $7C00 (31744), to use both basics.

Just type this at the prompt after loading IB and before CALLing 32768 ($8000)

HIMEM: 31744

Also make sure your applesoft programs don't reset Himem.

[toc] | [prev] | [next] | [standalone]


#4300

FromJames Davis <JPD.Enterprises@outlook.com>
Date2018-03-08 00:58 -0800
Message-ID<6b2507b7-dc04-4733-8312-2f7920680c7a@googlegroups.com>
In reply to#4283
On Monday, March 5, 2018 at 10:50:31 AM UTC-8, gid...@sasktel.net wrote:
> On Monday, March 5, 2018 at 10:41:33 AM UTC-6, James Davis wrote:
> > On Sunday, March 4, 2018 at 3:09:43 PM UTC-8, gid...@sasktel.net wrote:
> > > On Sunday, March 4, 2018 at 2:21:38 PM UTC-6, James Davis wrote:
> > > > To all Apple II programmers:
> > > > 
> > > > Is there a BASIC.SYSTEM that will load both Applesoft and Integer BASIC under ProDOS?  I would like to be able to switch back and forth from Applesoft to Integer BASIC under ProDOS by typing the commands "INT" and "FP" just like under DOS 3.3, without crashing into the Monitor!  And, I would like to be able to LOAD, RUN, and SAVE Integer BASIC programs under ProDOS to floppy/hard disks (or to disk images in emulators, like AppleWin).  
> > > > 
> > > > If there is not such a BASIC.SYSTEM, would someone please create one!
> > > > 
> > > > Thanks in advance,
> > > > 
> > > > James Davis
> > > 
> > > http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/games/collections/Int.Basic.Pdos8.2mg.zip
> > 
> > That is the one that crashes into the monitor when trying to switch back to FP (Applesoft)!
> 
> 
> I just downloaded it and it works fine.
> 
> I didn't plan for IB to be used at the same time as applesoft due to IB being in lower memory.
> 
> If you load and run an applesoft program while IB is in memory, the strings will overwrite IB.
> 
> If you know how to use Basic.system's call to $BEF5 to reserve memory between Basic.system and its buffers, then you will have to program it that way and IB will have to be moved into place. 
> 
> You can also try setting Himem to $7C00 (31744), to use both basics.
> 
> Just type this at the prompt after loading IB and before CALLing 32768 ($8000)
> 
> HIMEM: 31744
> 
> Also make sure your applesoft programs don't reset Himem.

I rewrote the STARTUP.BAS program, trying to incorporate the NOTES.TXT into it.  That probably made it big enough to overwrite INTBASIC.BIN in memory, causing it to crash into the monitor when called. 

I don't know how to use Basic.system's call to $BEF5.  I don't know anything about Basic.system other than it is for, or part of ProDOS.  Is it discussed in detail in any Apple technical manuals/notes?

I did incorporate "HIMEM: 31744" as you said in my latest/reduced rewrite.  Thanks for that.

I know that this was discussed in a thread of posts late last year, but I have not been able to find it.  Do you remember what it was called/entitled?  Do you have a link/address for that discussion?  It might help me to not rehash here what was discussed there.  Like, "BLOADing text screens instead of using print statements, to shorten the STARTUP program" was something that was mentioned there, IIRC.

I do not understand why Integer BASIC and Applesoft cannot coexist under ProDOS as they did under DOS, with Applesoft in ROM and Integer BASIC in the L.C. RAM space [on an Enhanced Apple IIe, or in AppleWin, with boo-koo banks (A2>128K) of auxiliary memory].  Could your INTBASIC.BIN do it?--Be moved into aux.mem. parallel to Applesoft?--With "&" instead of "INT" and "FP" switching between the two?  Integer BASIC could occupy another 64k bank if ProDOS is using the first one (bank zero) and a modified BASIC.SYSTEM could do the all the necessary bank switching, if that is what it already does for ProDOS.  Like I said, I don't really know what BASIC.SYSTEM really does.  I think/thought that it switches between Applesoft (or the top 16k of ROM) and ProDOS (or the top 16k of RAM) in aux.mem.  But I'm not sure.

Anyway, here is my version/latest-rewrite of the INTBASIC STARTUP (Applesoft) program:

REM MY.START.TXT
NEW
100 TEXT : HOME : PRINT CHR$(17) : REM SET TO 40 COLS
110 REM ** FROM THE KEYBOARD ONLY: ESC + CTRL-Q
120 REM ** TURNS OFF THE 80-COL/AUX-MEMORY CARD!
200 Q$=CHR$(34) : GOSUB 1000 : REM EXPLAIN ABOUT INTBASIC.
300 IF A$<>"I" AND A$<>"i" THEN TEXT : HOME : CLEAR : END
400 PRINT CHR$(4);"BLOAD INTBASIC"
500 PRINT CHR$(4);"PREFIX IB.PROGRAMS"
600 TEXT : HOME : CLEAR : HIMEM: 31744
700 CALL 32768 : REM * COLD START INTBASIC *
710 REM * Q: IS THERE A WARM START ADDRESS?
999 END
1000 HOME : REM * ABOUT (HOW-TO-USE) INTBASIC *
1010 PRINT
1020 PRINT "PRODOS VERSION OF INTEGER BASIC"
1030 PRINT
1040 PRINT "New commands for Integer BASIC:"
1050 PRINT
1060 PRINT "Type ";Q$;"FP";Q$;" at the Integer BASIC prompt to";
1070 PRINT "return to Applesoft (BASIC.SYSTEM)."
1080 PRINT "Type ";Q$;"&";Q$;" (not ";Q$;"INT";Q$;") at the Applesoft"
1090 PRINT "prompt to return to Integer BASIC."
1100 PRINT "Type ";Q$;"LOAD";Q$;" at the Integer BASIC prompt"
1110 PRINT "and, when prompted, enter an INT program";
1120 PRINT "filename to load; then, ";Q$;"LIST";Q$;" and fix"
1130 PRINT "it (see next page below), or ";Q$;"RUN";Q$;" it!"
1140 PRINT "Type ";Q$;"&";Q$;" at the Integer BASIC prompt to"
1150 PRINT "CATALOG a ProDOS directory.  You can"
1160 PRINT "also type ";Q$;"PR#3";Q$;" to enter 80-col mode"
1170 PRINT "and ";Q$;"PR#0";Q$;" to enter 40-col mode before"
1180 PRINT "entering ";Q$;"&";Q$;" to CATALOG a directory."
1190 PRINT "Type ";Q$;"Ctrl-C";Q$;" to end a running program"
1200 PRINT "and return to the Interger BASIC prompt.";
1210 PRINT
1220 VTAB 23
1225 REM PRINT CHR$(4);"BSAVE IB.PROGRAMS/MY.SCRN1.BIN,A$400,L$3F8 
1230 PRINT "Press any key to continue."; : GET A$
2000 HOME 
2010 PRINT
2020 PRINT "Some programs that will not work are:"
2030 PRINT
2040 PRINT "Progams with DOS commands will not work!";
2050 PRINT
2060 PRINT "There are no work arounds for programs"
2070 PRINT "that access text files via DOS commands.";
2085 PRINT
2090 PRINT "For programs that load binary files:"
2100 PRINT "Type ";Q$;"FP";Q$;" then ";Q$;"BLOAD";Q$;" in Applesoft."
2110 PRINT "Type ";Q$;"&";Q$;" then ";Q$;"LOAD";Q$;" in Integer BASIC."
2120 PRINT "Type ";Q$;"LIST";Q$;" then locate and remove any"
2130 PRINT "D$=";Q$;"<Ctrl-D>";Q$;" DOS-Cmds from the listing.";
2140 PRINT "Type ";Q$;"RUN";Q$;" and the program should work."
2150 PRINT
2160 PRINT "Menu programs that read the DOS CATALOG"
2170 PRINT "format will not work."
2180 PRINT
2190 PRINT "To Stop and Quit programs without Exits:";
2200 PRINT "Press ";Q$;"Ctrl-C";Q$;" then Type ";Q$;"PR#0";Q$;" or ";Q$;"CALL";
2210 PRINT "32768";Q$;" to return to the ";Q$;">";Q$;" IB prompt.";
2220 PRINT
9220 VTAB 23
2225 REM PRINT CHR$(4);"BSAVE IB.PROGRAMS/MY.SCRN2.BIN,A$400,L$3F8 
9230 PRINT "Press <I> Integer BASIC or <A> Applesoft"; : GET A$
9250 RETURN
9999 END 
REM :::::: "123456789.123456789.123456789.123456789.";
REM 40-COLUMN PRINT LINE LENGTH TEMPLATE (WITHOUT QUOTE STRINGS).
SAVE INTBASIC.START

[toc] | [prev] | [next] | [standalone]


#4306

Fromgids.rs@sasktel.net
Date2018-03-08 10:35 -0800
Message-ID<94088644-1936-49fa-932e-50df105d0d04@googlegroups.com>
In reply to#4300
> I don't know how to use Basic.system's call to $BEF5.  I don't know anything about Basic.system other than it is for, or part of ProDOS.  Is it discussed in detail in any Apple technical manuals/notes?

BASIC.system incorporates all the disk commands you use at prompt or in a program, such as CATALOG, OPEN, READ, WRITE, CLOSE, STORE, RESTORE, PREFIX and a way faster built in garbage collector.  It basically handles anything to do with files.

Prodos just has low level code for accessing block devices, but knows nothing of file structure.



> I know that this was discussed in a thread of posts late last year, but I have not been able to find it.  Do you remember what it was called/entitled?  Do you have a link/address for that discussion?  It might help me to not rehash here what was discussed there.  Like, "BLOADing text screens instead of using print statements, to shorten the STARTUP program" was something that was mentioned there, IIRC.

There are many ways to do this.  One of the better ways is to install a command between Basic.system and its buffers for added functionality.  The disadvantage is installing too many commands can use up a lot of memory and may take up as much memory as the PRINT statements.  Their advantages is that the size of the basic program is reduced substantially and they can be used with multiple programs.  The command will reduce a lot of PRINT statements down to just one command statement like PRINT CHR$(4)"TYPE INSTRUCTIONS".  Download PROPOWER from Asimov, there are a lot of useful commands there.

It is not recommended to BLOAD a text file straight to the text screen, as it will overwrite screenholes that some peripheral cards use, like the 80-col card.

Text files though, can be viewed with a couple of simple basic statements.

10 ? CHR$(4)"OPEN textfile": ? CHR$(4)"READ textfile" : ONERR GOTO 30
20 HOME : FOR I=1 TO 24: INPUT A$: ?A$: NEXT
30 ? CHR$(4) "CLOSE"

The trick here though is to find a text file creator that puts a <RETURN> mark at the end of each line.  You can get my 80-col note taker program that does just that here. It saves the text that is on an 80-col screen to a text file.  It can easily be converted to 40-col if needed but left to the reader.

http://s000.tinyupload.com/index.php?file_id=64388120138098437929

 
> I do not understand why Integer BASIC and Applesoft cannot coexist under ProDOS as they did under DOS, with Applesoft in ROM and Integer BASIC in the L.C. RAM space [on an Enhanced Apple IIe, or in AppleWin, with boo-koo banks (A2>128K) of auxiliary memory].  Could your INTBASIC.BIN do it?--Be moved into aux.mem. parallel to Applesoft?--With "&" instead of "INT" and "FP" switching between the two?  Integer BASIC could occupy another 64k bank if ProDOS is using the first one (bank zero) and a modified BASIC.SYSTEM could do the all the necessary bank switching, if that is what it already does for ProDOS.  Like I said, I don't really know what BASIC.SYSTEM really does.  I think/thought that it switches between Applesoft (or the top 16k of ROM) and ProDOS (or the top 16k of RAM) in aux.mem.  But I'm not sure.


IB and Applesoft can co-exist under Prodos but requires an installer to put IB into the Aux memory language card since Prodos resides in Main memory language card.  Basic.system would just need a driver to let IB use its commands and to enable the Main LC when Prodos needs to be accessed.  Some of that is already included in this Prodos version of IB.

Due mostly to lack of interest in IB, I only played with it enough to see where Woz's head was at, or walk in his shoes (as the saying goes), but didn't want to spend a lot of time on it.

There are a lot of good utilities to transfer files from Dos3.3 disks to Prodos disks, and IB programs can be converted to applesoft somewhat easily, albeit some conversions will be time consuming.

All this adds up to a lack of interest by anyone to spend a lot of time to make Basic.system compatible with IB.  But maybe you can pick up where everyone else left off? or failed?

[toc] | [prev] | [next] | [standalone]


#4307

FromJames Davis <JPD.Enterprises@outlook.com>
Date2018-03-08 14:44 -0800
Message-ID<08ff32c6-7cf5-4daf-87af-0d7272d8b9f5@googlegroups.com>
In reply to#4306
On Thursday, March 8, 2018 at 10:35:07 AM UTC-8, gid...@sasktel.net wrote:
> > I don't know how to use Basic.system's call to $BEF5.  I don't know anything about Basic.system other than it is for, or part of ProDOS.  Is it discussed in detail in any Apple technical manuals/notes?
> 
> BASIC.system incorporates all the disk commands you use at prompt or in a program, such as CATALOG, OPEN, READ, WRITE, CLOSE, STORE, RESTORE, PREFIX and a way faster built in garbage collector.  It basically handles anything to do with files.
> 
> Prodos just has low level code for accessing block devices, but knows nothing of file structure.
> 
> 
> 
> > I know that this was discussed in a thread of posts late last year, but I have not been able to find it.  Do you remember what it was called/entitled?  Do you have a link/address for that discussion?  It might help me to not rehash here what was discussed there.  Like, "BLOADing text screens instead of using print statements, to shorten the STARTUP program" was something that was mentioned there, IIRC.
> 
> There are many ways to do this.  One of the better ways is to install a command between Basic.system and its buffers for added functionality.  The disadvantage is installing too many commands can use up a lot of memory and may take up as much memory as the PRINT statements.  Their advantages is that the size of the basic program is reduced substantially and they can be used with multiple programs.  The command will reduce a lot of PRINT statements down to just one command statement like PRINT CHR$(4)"TYPE INSTRUCTIONS".  Download PROPOWER from Asimov, there are a lot of useful commands there.
> 
> It is not recommended to BLOAD a text file straight to the text screen, as it will overwrite screenholes that some peripheral cards use, like the 80-col card.
> 
> Text files though, can be viewed with a couple of simple basic statements.
> 
> 10 ? CHR$(4)"OPEN textfile": ? CHR$(4)"READ textfile" : ONERR GOTO 30
> 20 HOME : FOR I=1 TO 24: INPUT A$: ?A$: NEXT
> 30 ? CHR$(4) "CLOSE"
> 
> The trick here though is to find a text file creator that puts a <RETURN> mark at the end of each line.  You can get my 80-col note taker program that does just that here. It saves the text that is on an 80-col screen to a text file.  It can easily be converted to 40-col if needed but left to the reader.
> 
> http://s000.tinyupload.com/index.php?file_id=64388120138098437929
> 
>  
> > I do not understand why Integer BASIC and Applesoft cannot coexist under ProDOS as they did under DOS, with Applesoft in ROM and Integer BASIC in the L.C. RAM space [on an Enhanced Apple IIe, or in AppleWin, with boo-koo banks (A2>128K) of auxiliary memory].  Could your INTBASIC.BIN do it?--Be moved into aux.mem. parallel to Applesoft?--With "&" instead of "INT" and "FP" switching between the two?  Integer BASIC could occupy another 64k bank if ProDOS is using the first one (bank zero) and a modified BASIC.SYSTEM could do the all the necessary bank switching, if that is what it already does for ProDOS.  Like I said, I don't really know what BASIC.SYSTEM really does.  I think/thought that it switches between Applesoft (or the top 16k of ROM) and ProDOS (or the top 16k of RAM) in aux.mem.  But I'm not sure.
> 
> 
> IB and Applesoft can co-exist under Prodos but requires an installer to put IB into the Aux memory language card since Prodos resides in Main memory language card.  Basic.system would just need a driver to let IB use its commands and to enable the Main LC when Prodos needs to be accessed.  Some of that is already included in this Prodos version of IB.
> 
> Due mostly to lack of interest in IB, I only played with it enough to see where Woz's head was at, or walk in his shoes (as the saying goes), but didn't want to spend a lot of time on it.
> 
> There are a lot of good utilities to transfer files from Dos3.3 disks to Prodos disks, and IB programs can be converted to applesoft somewhat easily, albeit some conversions will be time consuming.
> 
> All this adds up to a lack of interest by anyone to spend a lot of time to make Basic.system compatible with IB.  But maybe you can pick up where everyone else left off? or failed?

It seems that 'I am Rob' may have something that will work for implementing Integer BASIC in parallel with Applesoft.  See: "A daft idea (yeah, again) Desktop FPBASIC?" <https://groups.google.com/forum/#!topic/comp.sys.apple2/peIQKNRyWbk>.  But, I'm not sure yet.

Since you didn't comment on my rewrite, I take it that you didn't like it.  I just did it to help me understand in my own words what you were saying in your original STARTUP program.  Your NOTES explain it better, I think.  Also, that last thing, about getting back to the Integer BASIC prompt, does not work, but you fixed that, so the info needs to be amended.  PR#0 does nothing now, and Call 32768 gets a 'number too big' error message.

[toc] | [prev] | [next] | [standalone]


#4308

Fromgids.rs@sasktel.net
Date2018-03-08 17:53 -0800
Message-ID<e64b79b2-711c-47df-9aee-8688174f7c8f@googlegroups.com>
In reply to#4307
On Thursday, March 8, 2018 at 4:44:32 PM UTC-6, James Davis wrote:
> On Thursday, March 8, 2018 at 10:35:07 AM UTC-8, gid...@sasktel.net wrote:
> > > I don't know how to use Basic.system's call to $BEF5.  I don't know anything about Basic.system other than it is for, or part of ProDOS.  Is it discussed in detail in any Apple technical manuals/notes?
> > 
> > BASIC.system incorporates all the disk commands you use at prompt or in a program, such as CATALOG, OPEN, READ, WRITE, CLOSE, STORE, RESTORE, PREFIX and a way faster built in garbage collector.  It basically handles anything to do with files.
> > 
> > Prodos just has low level code for accessing block devices, but knows nothing of file structure.
> > 
> > 
> > 
> > > I know that this was discussed in a thread of posts late last year, but I have not been able to find it.  Do you remember what it was called/entitled?  Do you have a link/address for that discussion?  It might help me to not rehash here what was discussed there.  Like, "BLOADing text screens instead of using print statements, to shorten the STARTUP program" was something that was mentioned there, IIRC.
> > 
> > There are many ways to do this.  One of the better ways is to install a command between Basic.system and its buffers for added functionality.  The disadvantage is installing too many commands can use up a lot of memory and may take up as much memory as the PRINT statements.  Their advantages is that the size of the basic program is reduced substantially and they can be used with multiple programs.  The command will reduce a lot of PRINT statements down to just one command statement like PRINT CHR$(4)"TYPE INSTRUCTIONS".  Download PROPOWER from Asimov, there are a lot of useful commands there.
> > 
> > It is not recommended to BLOAD a text file straight to the text screen, as it will overwrite screenholes that some peripheral cards use, like the 80-col card.
> > 
> > Text files though, can be viewed with a couple of simple basic statements.
> > 
> > 10 ? CHR$(4)"OPEN textfile": ? CHR$(4)"READ textfile" : ONERR GOTO 30
> > 20 HOME : FOR I=1 TO 24: INPUT A$: ?A$: NEXT
> > 30 ? CHR$(4) "CLOSE"
> > 
> > The trick here though is to find a text file creator that puts a <RETURN> mark at the end of each line.  You can get my 80-col note taker program that does just that here. It saves the text that is on an 80-col screen to a text file.  It can easily be converted to 40-col if needed but left to the reader.
> > 
> > http://s000.tinyupload.com/index.php?file_id=64388120138098437929
> > 
> >  
> > > I do not understand why Integer BASIC and Applesoft cannot coexist under ProDOS as they did under DOS, with Applesoft in ROM and Integer BASIC in the L.C. RAM space [on an Enhanced Apple IIe, or in AppleWin, with boo-koo banks (A2>128K) of auxiliary memory].  Could your INTBASIC.BIN do it?--Be moved into aux.mem. parallel to Applesoft?--With "&" instead of "INT" and "FP" switching between the two?  Integer BASIC could occupy another 64k bank if ProDOS is using the first one (bank zero) and a modified BASIC.SYSTEM could do the all the necessary bank switching, if that is what it already does for ProDOS.  Like I said, I don't really know what BASIC.SYSTEM really does.  I think/thought that it switches between Applesoft (or the top 16k of ROM) and ProDOS (or the top 16k of RAM) in aux.mem.  But I'm not sure.
> > 
> > 
> > IB and Applesoft can co-exist under Prodos but requires an installer to put IB into the Aux memory language card since Prodos resides in Main memory language card.  Basic.system would just need a driver to let IB use its commands and to enable the Main LC when Prodos needs to be accessed.  Some of that is already included in this Prodos version of IB.
> > 
> > Due mostly to lack of interest in IB, I only played with it enough to see where Woz's head was at, or walk in his shoes (as the saying goes), but didn't want to spend a lot of time on it.
> > 
> > There are a lot of good utilities to transfer files from Dos3.3 disks to Prodos disks, and IB programs can be converted to applesoft somewhat easily, albeit some conversions will be time consuming.
> > 
> > All this adds up to a lack of interest by anyone to spend a lot of time to make Basic.system compatible with IB.  But maybe you can pick up where everyone else left off? or failed?
> 
> It seems that 'I am Rob' may have something that will work for implementing Integer BASIC in parallel with Applesoft.  See: "A daft idea (yeah, again) Desktop FPBASIC?" <https://groups.google.com/forum/#!topic/comp.sys.apple2/peIQKNRyWbk>.  But, I'm not sure yet.
> 
> Since you didn't comment on my rewrite, I take it that you didn't like it.  I just did it to help me understand in my own words what you were saying in your original STARTUP program.  Your NOTES explain it better, I think.  Also, that last thing, about getting back to the Integer BASIC prompt, does not work, but you fixed that, so the info needs to be amended.  PR#0 does nothing now, and Call 32768 gets a 'number too big' error message.


I haven't had time to compare your listing to the original, so not sure what changes you made yet.  Not too sure why PR#0 doesn't work, and you can't CALL 32768 from integer Basic nor should you be as that is the IB cold start address, but shouldn't be getting an error when calling from applesoft.  Just use the ampersand to re-enter IB from applesoft.

I wrote the differences between IB and applesoft programs in the the other groups thread.

[toc] | [prev] | [next] | [standalone]


#4310

FromBrian Patrie <bpatrie@bellsouth.spamisicky.net>
Date2018-03-10 03:29 -0600
Message-ID<p808i4$19gc$1@gioia.aioe.org>
In reply to#4308
Why all this effort to make IntBASIC coexist with FPBASIC?  Under DOS, 
programmes don't survive an INT or FP command anyway; so why not just do 
things the ProDOS way, and launch their respective SYS files to change 
between them, so FPBASIC programmes don't have to tiptoe around 
IntBASIC's memory?

[toc] | [prev] | [next] | [standalone]


#4311

FromSteve Nickolas <usotsuki@buric.co>
Date2018-03-10 05:15 -0500
Message-ID<alpine.BSF.2.02.1803100512490.8009@frieza.hoshinet.org>
In reply to#4310
On Sat, 10 Mar 2018, Brian Patrie wrote:

> Why all this effort to make IntBASIC coexist with FPBASIC?  Under DOS, 
> programmes don't survive an INT or FP command anyway; so why not just do 
> things the ProDOS way, and launch their respective SYS files to change 
> between them, so FPBASIC programmes don't have to tiptoe around IntBASIC's 
> memory?

I'd somewhat agree; the proper answer, imo, is to create an 
INTBASIC.SYSTEM that carries Integer Basic as a payload.

Of course if somehow my idea of an alternate BASIC.SYSTEM (differently 
named of course) designed to behave more similarly to DOS 3.3 were to be 
implemented, one could simply use the 48K INTBASIC ("BRUN INT") in lieu of 
this method. ;)

-uso.

[toc] | [prev] | [next] | [standalone]


#4312

FromAnthony Ortiz <anthonypaulo@gmail.com>
Date2018-03-10 06:30 -0800
Message-ID<21270d00-9a6a-40d0-99f5-64c460a5fee2@googlegroups.com>
In reply to#4311
I was scratching my head as well, as the point of having two basics gobbling up precious memory and leaving precious little for actual code eludes me. Is this just to see if it can be done, or is there a practical reason?

[toc] | [prev] | [next] | [standalone]


#4315

FromJames Davis <JPD.Enterprises@outlook.com>
Date2018-03-10 16:35 -0800
Message-ID<3a6ba47f-953d-49d5-9414-4075953ef61a@googlegroups.com>
In reply to#4312
On Saturday, March 10, 2018 at 6:30:21 AM UTC-8, Anthony Ortiz wrote:
> I was scratching my head as well, as the point of having two basics gobbling up precious memory and leaving precious little for actual code eludes me. Is this just to see if it can be done, or is there a practical reason?

More of a challenge to programmers still active in the Apple II world.  But, it is withdrawn.

I have come to the conclusion that it IS NOT worth the effort.  It is much easier to stick with DOS 3.2/3.3 to run Integer BASIC programs.  

And, with CiderPress, AppleWin, WASP (or any good text editor), etc., it wouldn't be hard to translate any personally important Integer BASIC programs into Applesoft BASIC programs.  [Sorry WOZ!]

Also, in my experimentation with running the various Apple II models in AppleWin, the original Apple II and the Apple II Plus, do not seem to work when I try to boot them using my (ProDOS-8 J.B.version 2.4.2) 32MB HDV image (in slot 7, drive 1), [they hang up booting from slot 7], but do work when booting from the "APPLE DOS 3.3 SYSTEM MASTER.dsk" or the (John Brooks) "ProDOS-8 2.4.2.dsk" (in slot 6, drive 1, and with slot 7 disabled).  So, since most Integer BASIC programs were written to work from cassette tapes or with DOS 3.1, 3.2 or 3.3 on 5.25" floppy disks, I have decided that it is better just to run them by their original means, from floppies on real hardware [Who uses tape anymore? ;-)], or from DOS 3.3 floppy images with AppleWin.

[toc] | [prev] | [next] | [standalone]


#4314

Fromgids.rs@sasktel.net
Date2018-03-10 16:20 -0800
Message-ID<24cad472-40ee-4db1-8a70-d902cb46fd79@googlegroups.com>
In reply to#4280
On Sunday, March 4, 2018 at 2:21:38 PM UTC-6, James Davis wrote:
> To all Apple II programmers:
> 
> Is there a BASIC.SYSTEM that will load both Applesoft and Integer BASIC under ProDOS?  I would like to be able to switch back and forth from Applesoft to Integer BASIC under ProDOS by typing the commands "INT" and "FP" just like under DOS 3.3, without crashing into the Monitor!  And, I would like to be able to LOAD, RUN, and SAVE Integer BASIC programs under ProDOS to floppy/hard disks (or to disk images in emulators, like AppleWin).  
> 
> If there is not such a BASIC.SYSTEM, would someone please create one!
> 
> Thanks in advance,
> 
> James Davis


There really is no reason to have Int Basic in memory when trying to run Applesoft programs, as each basic has to be initialized before you can use it, which leaves the other Basic redundant to be in memory.  I am not sure if the idea is to load a program under one basic, switch to the other basic and list and save it.  The program structure as when as each Basic's LIST function are totally different and cannot be done.

But a program under one basic can be saved to a text file and EXEC'd under the other Basic to get a program listing, if that is the case.

But, please don't let my words discourage anyone.  If they want to spend hours at a lost cause for their entertainment, who am I to interfere.  :)

[toc] | [prev] | [standalone]


Back to top | Article view | comp.sys.apple2.programmer


csiph-web