KP wrote:
On May 28, 10:41 pm, "Michael J. Mahon" <mjma...@aol.com> wrote:KP wrote:On May 28, 5:11 pm, Toinet <antoine.vig...@laposte.net> wrote:On 26 mai, 07:53, KP <kjpm...@gmail.com> wrote:On May 26, 1:31 am, Toinet <antoine.vig...@laposte.net> wrote:On 26 mai, 04:25, KP <kjpm...@gmail.com> wrote:I am getting a "NO BUFFERS AVAILABLE" error message after moving a binary game from a DOS 3.3 floppy to a ProDOS hard disk, whenever I try to either "-" or BRUN the game. Any way to resolve this?Hi There, when you type in the CATALOG command under Basic system, what do you get below Endfile (or length)? avENDFILE for that program is 30704. Does that help at all?David also asked for the auxiliary address which I forgot to mention. With both info, we will be able to tell you what to do with the program. BTW, are you using a IIgs or another machine? The info may help, antoineI get the same message on both a IIe and a IIgs. ENDFILE is 30704 SUBTYPE is A=$07FD Does that help?One nicely brute-force way to run the game is: ]BLOAD <file>,a$800 ]mtr *7fd<800.7ff0m *7fdg -michael NadaNet 3.1 for Apple II parallel computing! Home page: http://home.comcast.net/~mjmahon/ "The wastebasket is our most important design tool--and it's seriously underused."I am in awe! How does that work? I have a simple little STARTUP program that runs when by hard disk boots up. I'd like to put that in there as a POKE/CALL routine. Could you tell me how that would be written in AppleSoft BASIC?
It could be done using the "Lam" method of invoking monitor routines from Applesoft, but it would be easier just to persuade ProDOS to let you BRUN the program at $7FD by POKEing the memory map byte as John suggests. (Of course, this also means using a short Applesoft "startup" program.) The brute-force method works by BLOADing the program at $800, which ProDOS is happy to do, then using the monitor to move it down 3 bytes, to $7FD, then giving it control. The first instruction is almost certainly a 3-byte JMP instruction to the program's actual entry point. So another way to proceed would be to look at the address of the initial JMP, then BSAVE the program (after moving it down) starting at $800: BSAVE <progx>,A$800,L30701. Then you can run it by just BLOADing it (no modifiers) and CALLing the address specified in the (now missing) JMP. -michael NadaNet 3.1 for Apple II parallel computing! Home page: http://home.comcast.net/~mjmahon/ "The wastebasket is our most important design tool--and it's seriously underused."