How to run BASIC without the ACI?

11 posts / 0 new
Last post
Offline
Last seen: 1 year 4 months ago
Joined: Jan 3 2015 - 23:52
Posts: 83
How to run BASIC without the ACI?

Is there a way to test/run the BASIC program if I don't have the Apple Cassette Interface?

Offline
Last seen: 1 week 14 hours ago
Joined: Oct 9 2011 - 12:54
Posts: 1352
Re: How to run BASIC without the ACI?

Yes, if you have a PS/2 Keyboard adapter from Mike Willegal. You can use it to "type" in the basic source since the PS/2 adapter also has a 9600 baud serial port. Just remember to put a delay between characters and new line. I use 100ms for character and 500ms for line.

This is also how I tend to load the Mike's memory testing program when I don't have the ACI up and running yet.

Cheers,
Corey

Offline
Last seen: 1 year 4 months ago
Joined: Jan 3 2015 - 23:52
Posts: 83
Re: How to run BASIC without the ACI?

thanks corey!

Im using an Arduino based PS2 keyboard that I assembled for testing. Typing from the monitor and sending from a terminal PC seems to work just fine. Programs that i have tested so far are the small test program from the Apple 1 manual, Dave Schmenk's Apple 30th, mmphosis' Hello World, and Mike Willegal's 6502 Memory Test. Everything's hunky-dory except for the BASIC. I couldn't get it to work.

I noticed that after loading the BASIC hex dumps from the PC terminal, some data are not correctly entered into memory or being changed. Im not sure.

For example when I enter:

E000: FB
- this should change the value of the E000 memory location to FB, right? But it's not. Instead the value is changed to F9. Why is that? Changing the value of some other memory locations to FB works just fine.

So just entering even just the first line of the BASIC hex dumps:
E000: 4C B0 E2 AD 11 D0 10 FB

results to:
E000: 4C B0 E2 AD 11 D0 10 F9 when verifying it using E000.E007.

So why am I getting wrong values even when i entered the correct data?

Offline
Last seen: 1 week 14 hours ago
Joined: Oct 9 2011 - 12:54
Posts: 1352
Re: How to run BASIC without the ACI?

Have you run the 6502 memory test against the E000 to EFFF? Try swapping W2 and see if you get a different result.

Offline
Last seen: 1 year 4 months ago
Joined: Jan 3 2015 - 23:52
Posts: 83
Re: How to run BASIC without the ACI?

Have you run the 6502 memory test against the E000 to EFFF? Try swapping W2 and see if you get a different result.

I swapped the DRAM at W2 and W1 and I get these:
- Entering FB value to the memory location at E007 works this time but entering other value like 4C results to 48. Im not sure what this means. Is this a problem with some of the DRAMs?

Using the monitor, enter the starting address and ending address+1 into locations 0-3 of memory.
Example: To test memory from E000 to EFFF on an Apple 1 enter the following into the monitor:
0: 00 E0 00 F0

I tried the above code to test memory from E000 to EFF and the results are:
R
00 E441 00 01
_\
.
.
R
00 E480 00 01
_\
.
.
R
00 E401 00 01
_\
.
.

Results sometimes changes everytime i run 280R.

How do i test each of the 16 DRAMs? What i want to know are the addresses assigned to these 8K DRAMs.

Offline
Last seen: 1 week 14 hours ago
Joined: Oct 9 2011 - 12:54
Posts: 1352
Re: How to run BASIC without the ACI?

Do you have any spare RAM chips? I'm assuming you passed a memory test of low memory up to 4K. Which might eliminate addressing and refresh problems. If so. The replace the ram chip that I mentioned to swap. It might have a problem.

If you didn't run a memory test on the lower memory, then you should. If it fails, then before we assume you have bad memory everywhere you need to eliminate addressing and refresh issues.

Cheers,
Corey

Offline
Last seen: 1 year 4 months ago
Joined: Jan 3 2015 - 23:52
Posts: 83
Re: How to run BASIC without the ACI?
Offline
Last seen: 1 year 4 months ago
Joined: Jan 3 2015 - 23:52
Posts: 83
Re: How to run BASIC without the ACI?

Do you have any spare RAM chips? I'm assuming you passed a memory test of low memory up to 4K. Which might eliminate addressing and refresh problems. If so. The replace the ram chip that I mentioned to swap. It might have a problem.

If you didn't run a memory test on the lower memory, then you should. If it fails, then before we assume you have bad memory everywhere you need to eliminate addressing and refresh issues.

Cheers,
Corey

It seems you're right about the bad ram at W2, though I have no spare. My mistake I should've considered a few spare when I bought the 16 DRAMs.

Is the address E000-EFFF mapped to the DRAMs at W0-W7?

Offline
Last seen: 1 week 14 hours ago
Joined: Oct 9 2011 - 12:54
Posts: 1352
Re: How to run BASIC without the ACI?

Well if you did the jumpers correctly for basic, then yes E000 is correct for bank W.

Offline
Last seen: 1 year 4 months ago
Joined: Jan 3 2015 - 23:52
Posts: 83
Re: How to run BASIC without the ACI?

Well if you did the jumpers correctly for basic, then yes E000 is correct for bank W.

Oh I see. Got it thanks.

pierpiero's picture
Offline
Last seen: 2 years 8 months ago
Joined: Jun 14 2014 - 17:57
Posts: 3
Re: How to run BASIC without the ACI?

I to I use Arduino with the SDlibrary (and SD card) to type any txt file to the A1 keyboard port. It's not very fast but it works as tape interface replacement.
I'm not familiar with 6502 assembler, but with a small loader, the data tranfer could be very fast.

Log in or register to post comments