AppleSoft Basic on PC?

17 posts / 0 new
Last post
Offline
Last seen: 2 years 2 months ago
Joined: Jan 30 2022 - 16:06
Posts: 2
AppleSoft Basic on PC?

Is there a prefered tool on PC for preping ApleSoft Basic rather than codeing directly on the Apple II?

 

Groove

 

Offline
Last seen: 1 day 3 hours ago
Joined: Jun 25 2020 - 17:00
Posts: 223
I use AppleWin, a very nice

I use AppleWin, a very nice Apple II emulator for Windows.

Offline
Last seen: 1 year 2 months ago
Joined: May 27 2009 - 01:37
Posts: 1002
2nd AppleWin. Between cut'n

2nd AppleWin. Between cut'n'paste, drag'n'drop, access through Ciderpress, and more, it's a pretty good solution.

mmphosis's picture
Offline
Last seen: 1 week 5 days ago
Joined: Aug 18 2005 - 16:26
Posts: 433
Copy and Paste

I code in a Text or Programming editor on the PC or on a Mac.

 

I use AppleWin and Shift+Insert (yuck!) to paste code that I've copied from the editor.

 

Or, I use KEGS and Paste to a Terminal window the code that I've copied from the editor.

    KEGS Configuration F4

    ↲ Serial Port Configuration

          Serial Ports = Only use sockets 6501-6502

          Serial Output = Mask off high bit

        √ Modem on port 0 (slot 1) = Simple socket emulation mode

    ]PR#1

    ]IN#1

   telnet> mode character 

 

 

Offline
Last seen: 1 year 1 month ago
Joined: Feb 25 2023 - 05:22
Posts: 1
AppleSoft Basic on PC?

Yes, there are several tools available for preparing AppleSoft Basic programs on a PC rather than coding directly on the Apple II. Some of the popular options include: AppleWin: AppleWin is an Apple II emulator for Windows that allows you to write and test AppleSoft Basic programs on your PC. It comes with a built-in BASIC editor and debugger, which makes it a popular choice among developers. Virtual II: Virtual II is another Apple II emulator that runs on Windows. It has a user-friendly interface and comes with several built-in tools for programming in AppleSoft Basic, including a BASIC editor and debugger. Notepad++: Notepad++ is a popular text editor that supports syntax highlighting for AppleSoft Basic. You can write your code in Notepad++ and then transfer it to your Apple II using a transfer tool like ADTPro. AppleCommander: AppleCommander is a command-line tool that allows you to manipulate Apple II disk images on your PC. You can use it to create, edit, and transfer AppleSoft Basic programs to your Apple II. 

 

CVT
CVT's picture
Offline
Last seen: 19 hours 52 min ago
Joined: Aug 9 2022 - 00:48
Posts: 990
I use AppleWin too, mainly

I use AppleWin too, mainly because of the convenience of <Shift><Insert>. The pasting gets a bit slow for Basic programs that are more than 100 lines, but then all you have to do it set the emulation speed to fastest and it's instant!

S.Elliott's picture
Offline
Last seen: 3 hours 18 min ago
Joined: Jun 23 2022 - 16:26
Posts: 207
Even simpler...just use your browser

If you just need to transfer data in or out of the Apple II environment, just use Apple //jse or Apple ][js which runs a well-equipped emulator in your browser.

 

For doing something simple, it's quicker than downloading or running AppleWin.

Apple //jse emulates Apple //e with your choice of configurations:

  • Enhanced Apple //e (default)
  • Apple //e
  • Enhanced Apple //e derived from ReactiveMicro's kit
  • Apple //e with debugging extensions

 

Apple ][js emulates an Apple ][ or Apple ][ Plus with your choice of:

  • Apple ][ Plus with Autostart (default)
  • Apple ][ with Autostart
  • Apple ][ with 13-sector disk controller
  • Apple ][
  • Apple ][ Plus with lowercase character set
  • Apple ][ Plus with Pig Font

 

You can choose from an assortment of 191 pre-loaded disks, or load a disk of your own.  After modifying a disk, save it by clicking the diskette icon and save it into your browser's storage or download it to a file.

 

For simple tasks, it really is faster than AppleWin.  For example...click either of those links to start the emulator, click the folder icon beside "Disk 1" to open the disk library, choose Interactive Fiction category, choose Zork I and click Open.

 

Just imagine, ten seconds after reading this sentence you will be playing the Apple ][ edition of Zork.  Or another game of your choice.  Just click above!

S.Elliott's picture
Offline
Last seen: 3 hours 18 min ago
Joined: Jun 23 2022 - 16:26
Posts: 207
GroovServer wrote:Is there a
GroovServer wrote:

Is there a prefered tool on PC for preping ApleSoft Basic rather than codeing directly on the Apple II?

 

Groove

Oopsie, so this was a really old question.

 

But my recommendation really does enable you to use a PC or any computer to promptly develop Applesoft so I stand by my recommendation.  Just last week I used Apple ][js to construct an Applesoft program that enables the user to LIST line 440044.

Ordinarily it's not possible to LIST line 440044 because:

  1. Applesoft doesn't ordinarily allow line numbers greater than 64000.
  2. Applesoft would ordinarily crash into the monitor if you enter the command  LIST 440044  when there isn't a line 440044.  Really!  Try it yourself!
CVT
CVT's picture
Offline
Last seen: 19 hours 52 min ago
Joined: Aug 9 2022 - 00:48
Posts: 990
Yes, but these don't seem to

Yes, but these don't seem to support direct paste of your Basic program (like <Shift><Insert> in AppleWin), allowing for instant run after edit, or instant compile after edit using Einstein.

 

Also I disagree that they are faster than AppleWin, since you only install it once, and then it's much faster to run. They do have potential, but they still fall short on many aspects, like being able to emulate a mouse, a mockingboard, a CP/M card or evan handlng 32 MB images like Total Replay.

 

Another issue I ran into with the in-browser emulators is that some programs check if their diskette is read-only. In AppleWin you simply make the disk image file read-only and that simulates the diskette being read-only. There doesn't seem to be a way to do this in the in-browser emulators.

Offline
Last seen: 1 day 3 hours ago
Joined: Jun 25 2020 - 17:00
Posts: 223
AppleWin...AppleWin...AppleWin

...hands down AppleWin is the winner for what you are wanting to do.  And as previously mentioned, coupled with CiderPress's features they make up a duo that is hard to beat.

Offline
Last seen: 1 day 13 hours ago
Joined: Jul 5 2018 - 09:44
Posts: 2562
I don't use Windows (don't

I don't use Windows (don't even have it), but the same things work with Linapple on Linux and utilities similar to Ciderpress for moving things in and out of disk images.  I would assume that you can do the same things on MacOS but I haven't tried it.

 

mmphosis's picture
Offline
Last seen: 1 week 5 days ago
Joined: Aug 18 2005 - 16:26
Posts: 433
online AppleSoft

S.Elliott, I appreciate the suggestion about JS based emulators and how to LIST line 440044. :D

 

There are a lot of choices depending on what you want to do and your preferences.

calormen.com is a "classic" for online Applesoft: https://www.calormen.com/jsbasic/

CyanIIde is pretty cool: https://paleotronic.com/applesoft/

We had a discussion a while ago about building our own toolkits. For example: a tokenizer / detokenizer written in Perl.

https://www.applefritter.com/content/toolkit-applesoft-basic

Offline
Last seen: 1 day 13 hours ago
Joined: Jul 5 2018 - 09:44
Posts: 2562
mmphosis wrote:S.Elliott, I
mmphosis wrote:

S.Elliott, I appreciate the suggestion about JS based emulators and how to LIST line 440044. :D

 

There are a lot of choices depending on what you want to do and your preferences.

calormen.com is a "classic" for online Applesoft: https://www.calormen.com/

 

The tokenizer/detokenizer is one of my projects.  I've been thinking about extending it and writing a full fledged interpreter.  I also did tokenizer/detokenizer for Woz's INTBASIC and I was thinking about doing one for the Apple /// Extended Business BASIC.  I've always thought that porting Extended Busines BASIC to the //e, //c, IIgs would be an interesting project.  It would take some serious shoehorning to do, but should be possible, especially with a machine with > 128k.

 

S.Elliott's picture
Offline
Last seen: 3 hours 18 min ago
Joined: Jun 23 2022 - 16:26
Posts: 207
Applesoft quirk tests
mmphosis wrote:

S.Elliott, I appreciate the suggestion about JS based emulators and how to LIST line 440044. :D

 

There are a lot of choices depending on what you want to do and your preferences.

calormen.com is a "classic" for online Applesoft: https://www.calormen.com/jsbasic/

CyanIIde is pretty cool: https://paleotronic.com/applesoft/

Ooo, fun!  Let's test some edge cases!

That tangent about line 440044 accidentally turns out to be useful for demonstrating that these platforms don't always match the behavior of a real Apple II:

  • Calormen's jsbasic implementation apparently extended Applesoft and fixed bugs in it.  So it can run programs that a real Apple II cannot run.  That's an advantage because it permits you to do more than Applesoft would ordinarily allow, but it poses a tiny incompatibility risk if you intend to port your program onto a real Apple II.
    • Conventional Applesoft has a bug that causes GET A$ to erroneously truncate the string A$ if the user enters CTRL+@, whereas jsbasic successfully stores the character in the string.  (On an Apple ][ Plus keyboard press CTRL+SHIFT+P to type CTRL+@.)
    • Conventional Applesoft cannot store a line numbered 440044, whereas jsbasic can successfully store and execute line 440044 in a program.
    • Conventional Applesoft will crash into the monitor it it executes a GOTO 440044 statement, whereas jsbasic can execute GOTO 440044 or return an error if the program does not define line 440044.
  • CyanIIde's implementation exhibits the same bugs and limitations of ordinary Applesoft, apparently by emulating the actual platform, but its keyboard implementation isn't capable of reading all the keystrokes that a real Apple II can.
    • Conventional Applesoft has a bug that causes GET A$ to erroneously truncate the string A$ if the user enters CTRL+@, whereas CyanIIde's runtime environment can't even read that keystroke so typing CTRL+@ just won't do anything at all.
    • Conventional Applesoft will crash into the monitor if you type LIST 440044, and so does CyanIIde.  So it's a more literal interpretation of Applesoft than jsbasic.
Offline
Last seen: 1 day 13 hours ago
Joined: Jul 5 2018 - 09:44
Posts: 2562
Some of those things are near

Some of those things are near, but I've thought that something that would be interesting would be to write a basic interpreter that would run an AppleSoft like dialect more native on a modern platform to allow people to develop new programs for the modern platform similar to the experience that they had writing BASIC programs on an Apple II back in the day.  It's a different angle.  It might also be useful for people who have existing BASIC programs that they wanted to port to a modern platform.  Some interesting things to port forward might be things like the old EAMON adventure games.

 

 

 

 

Offline
Last seen: 1 day 13 hours ago
Joined: Jul 5 2018 - 09:44
Posts: 2562
One of the closest things to

One of the closest things to what I'm talking about has been around a long time...  Chipmunk BASIC, which was originally for the Mac, but also has a port to Linux.

 

http://www.nicholson.com/rhn/basic/

 

 

Offline
Last seen: 1 day 13 hours ago
Joined: Jul 5 2018 - 09:44
Posts: 2562
Another thing I've thought

Another thing I've thought about is writing a cross compiler.  I played a little bit a while back with Tom Porter's Idiot BAISC compiler.  It's got a lot of cool ideas but is pretty limited.  A compiler that ran on a modern platform that could read tokenized (or text source) AppleSoft programs and generate 6502 assembler output that a cross assembler could assemble into native 6502 code would be pretty interesting.  The old school BASIC compilers didn't really work that way, and they always had some serious limitations because of having to run on the native platform.

 

 

Log in or register to post comments