ADTpro Audio Transfer Issue

33 replies [Last post]
grandta13's picture
Offline
Joined: Jan 24 2010
Posts: 25

I have successfully loaded ADTpro into my Apple //e's RAM using the instructions provided here:
http://adtpro.sourceforge.net/bootstrapaudio.html

At this point I have tried to transfer an ADTpro disk and a Print Shop disk using the following steps:
1. Start ADTpro audio serving program on my host computer (Windows 7)
2. Press 'R' on my Apple to receive an image
3. Type the name of the image 'e.g. "PRINT.DSK" or "ADTPRO-1.2.9.DSK"'
4. Select the formatted disk on my DuoDisk drive (I've tried both drives)
5. Press Return on the Apple and wait.

At this point, I receive the following error on the host:
ADT.png
(When I try Print Shop, the first instance of the word 'image' is replaced by 'nibble')

On the Apple, I receive the message 'RECEIVING BLOCK 00001 OF 00280' and a 'V' enclosed by two horizontal lines.

Perhaps I've missed a step, or there is something wrong with my configuration. If anyone can provide advice on this, I would appreciate it.

AttachmentSize
ADT.png29.97 KB
__________________

Apple //e
333MHz Strawberry Apple iMac G3; 96MB RAM

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

You will find that Audio is pretty finicky about the sound level; you might have a look at this page:
http://adtpro.sourceforge.net/connectionsaudio.html
specifically pay attention to the Boosting section:
http://adtpro.sourceforge.net/connectionsaudio.html#Boosting

Also, could you update your install to the 2.0.0 version?
http://sourceforge.net/projects/adtpro/files/adtpro/ADTPro-2.0.0/

We can start debugging from there.

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

Loading the bootstrap via audio seemed rather easier than I expected, probably because the operation was entirely simplex.
Ive found that regular transfers with the audio which requires duplex operation is much more difficult.
Ive spent some time with the audio version for the purpose of testing, as I use a superserial card to to real transfers and found
that given a proper sound level, the transfer doesnt always work, and then 1 in 10 it does.

Serial cards for the unit are easy to come by, I suggest you pick one up on ebay if you are going to be doing some serious transfers

J

Offline
Joined: May 27 2013
Posts: 792
Re: ADTpro Audio Transfer Issue

jrubin wrote:

Serial cards for the unit are easy to come by, I suggest you pick one up on ebay if you are going to be doing some serious transfers.

You are right. Although I have not tried audio transfers, I have tried transfers with Ethernet and doing it that way is good if the host computer and the apple II are far away from each other and the only thing that connects them is an Ethernet cable.

Using serial is faster than Ethernet in my experience.

Since most have said that audio transfers are very slow, it is clear that using serial is the fastest and the most reliable way to do this.

When I did my first bootstrapping, I did it via serial and I followed the instructions precisely. I had absolutely no problems. This is how I got all my other disks. Pro-Dos and others.

I left the serial card arrow in the same place and I have done the same with the dip switches. I have not changed any setting and it still works doing regular transfers.

grandta13's picture
Offline
Joined: Jan 24 2010
Posts: 25
Re: ADTPro Audio Transfer Issue

I've updated to 2.0.0, but now I encounter a different issue. The system gets to a certain point then hangs. When I set ADTpro tp receive 4 blocks at a time, it hung at 'RECEIVING BLOCK 00016 OF 00280', When set to receive 1 block at a time: 'RECEIVING BLOCK 00004 OF 00280', and when set to receive 5 blocks: 'RECEIVING BLOCK 00015 OF 00280'. The host displays 'Request: image from host to Apple'.

EDIT: When I attempted to perform the transfer with drive 2 while receiving 5 blocks at a time, it hung at 'RECEIVING BLOCK 00020'. While the output was different, the issue remains that the transfer is hanging.

__________________

Apple //e
333MHz Strawberry Apple iMac G3; 96MB RAM

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTPro Audio Transfer Issue

Quote:

When set to receive 1 block at a time: 'RECEIVING BLOCK 00004 OF 00280', and when set to receive 5 blocks: 'RECEIVING BLOCK 00015 OF 00280'. The host displays 'Request: image from host to Apple'.

See now that is interesting..............

I have encountered the very same thing using the audio method as you have described word for word.

This could in fact be a software issue of some kind and worth bringing to the attention of the ADTpro developer

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

jrubin wrote:

This could in fact be a software issue of some kind and worth bringing to the attention of the ADTpro developer

Hmmm. Quite. If only there were a way...

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTPro Audio Transfer Issue

Hey Dave,

Awesome program. Probably my most used of the collection.

I had actually recorded the dump of the transfer some time back. It seems to die on recieved unknown command
snipplet included below. I can send you the complete dump if you wish

<br />
9/19/14 9:24:44 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:44 PM Gui.actionPerformed() exit.<br />
9/19/14 9:24:48 PM AudioTransport.pullBuffer() pulled data:<br />
C1 02 00 C4 07 00 00<br />
9/19/14 9:24:48 PM AudioTransport.pullBuffer() exit; _inPacketLen = 7<br />
9/19/14 9:24:48 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:48 PM CommsThread.commandLoop() Received a byte: C1<br />
9/19/14 9:24:48 PM CommsThread.commandLoop() Received wide protocol request.<br />
9/19/14 9:24:48 PM CommsThread.pullEnvelopeWide() entry.<br />
9/19/14 9:24:48 PM Waiting for byteslo...<br />
9/19/14 9:24:48 PM  received byteslo: 02<br />
9/19/14 9:24:48 PM Waiting for byteshi...<br />
9/19/14 9:24:48 PM  received byteshi: 00<br />
9/19/14 9:24:48 PM Waiting for command...<br />
9/19/14 9:24:48 PM  received envelope command: C4<br />
9/19/14 9:24:48 PM Waiting for check byte...<br />
9/19/14 9:24:48 PM  received checkbyte: 07<br />
9/19/14 9:24:48 PM  calculated checkbyte: 07<br />
9/19/14 9:24:48 PM CommsThread.pullEnvelopeWide() exit.<br />
9/19/14 9:24:48 PM CommsThread.dispatchCommand() entry.<br />
9/19/14 9:24:48 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:48 PM CommsThread.dispatchCommand() Received DIR command.<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() entry.<br />
9/19/14 9:24:48 PM CommsThread.pullPayloadWide() entry.<br />
9/19/14 9:24:48 PM CommsThread.pullPayloadWide() payload byte [0]: 00<br />
9/19/14 9:24:48 PM CommsThread.pullPayloadWide() payload byte [1]: 00<br />
9/19/14 9:24:48 PM AudioTransport.pullBuffer() pulled data:<br />
00 1A E5<br />
9/19/14 9:24:48 PM AudioTransport.pullBuffer() exit; _inPacketLen = 3<br />
9/19/14 9:24:48 PM CommsThread.pullPayloadWide() received   checkbyte: 00<br />
9/19/14 9:24:48 PM CommsThread.pullPayloadWide() calculated checkbyte: 00<br />
9/19/14 9:24:48 PM CommsThread.pullPayloadWide() checkbyte on payload matched.<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() value:<br />
9/19/14 9:24:48 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() Seeking directory of: /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:48 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:48 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[0]: VDRIVE-2.0.0.DSK<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[1]: ADTPro.properties<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[2]: Virtual.po<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[3]: ADTProTrace.txt<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[4]: Virtual2.po<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[5]: ADTPRO-2.0.0.DSK<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[6]: ADTPROSOS-2.0.0.DSK<br />
9/19/14 9:24:48 PM CommsThread.sendDirectoryWide() sending name[7]: ADTPRO-2.0.0.PO<br />
9/19/14 9:24:48 PM CommsThread.sendPacketWide() entry; block to send: 0000<br />
9/19/14 9:24:48 PM CommsThread.sendPacketWide() looping until successful to send block: 0000<br />
9/19/14 9:24:48 PM AudioTransport.pushBuffer() entry, pushing 215 bytes.<br />
9/19/14 9:24:48 PM AudioTransport.pushBuffer() pushing data:<br />
C1 00 04 D3 16 00 00 44 05 09 F3 FE 11 FB 03 07 C7 2F F7 F4 E6 0F 39 07 FE F8 CA 3B 05 03 F2 FD<br />
0D C1 15 2B F4 12 F8 F8 09 06 FF BC 16 08 08 F7 F5 13 F5 06 FF E1 12 03 10 FC 22 FD BE 05 FC 02<br />
FE 02 FF 35 05 0A F8 08 BC DE 20 00 6B 29 EE 0E F7 0D EF E8 05 FC 02 FE 02 FE 16 0F F8 C2 34 03<br />
10 FC 22 FD BF 42 02 FD 01 F5 0D 02 F5 FC 0E 9A 49 13 09 02 01 EC 0B C2 42 FF 9E 34 03 10 FC 22<br />
FD E5 1E EF 02 02 C9 46 04 FC 99 49 13 09 02 01 EC 0B C6 FC 42 FF 9E 34 03 10 FC 02 FD DE 05 FC<br />
02 FE 02 FE 16 0F F8 C2 34 03 10 FC 02 FD 04 FC 04 DA 05 FC 02 FE 02 FE 16 0F F8 C2 34 03 10 FC<br />
02 FD DE 05 FC 02 FE 02 FE 22 FF BE F3 00 00 00 00 00 00 00 00 18 F8<br />
9/19/14 9:24:48 PM BytesToWav.encode() entry, encoding 215 bytes.<br />
9/19/14 9:24:48 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:48 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:48 PM PlaybackThread.play() entry.<br />
9/19/14 9:24:48 PM PlaybackThread.play() payload size: 87310<br />
PlaybackThread.play() Bytes written: 873 22698 44523 66348<br />
9/19/14 9:24:50 PM PlaybackThread.play() Done playing.<br />
9/19/14 9:24:50 PM AudioTransport.pushBuffer() exit.<br />
9/19/14 9:24:50 PM CommsThread.sendPacketWide() calculated CRC: 63512<br />
9/19/14 9:24:50 PM CommsThread.pullEnvelopeWide() entry.<br />
9/19/14 9:24:50 PM AudioTransport.pullBuffer() pulled data:<br />
C1 00 04 D3 16 00 00 44 05 09 F3 FE 11 FB 03 07 C7 2F F7 F4 E6 0F 39 07 FE F8 CA 3B 05 03 F2 FD<br />
0D C1 15 2B F4 12 F8 F8 09 06 FF BC 16 08 08 F7 F5 13 F5 06 FF E1 12 03 10 FC 22 FD BE 05 FC 02<br />
FE 02 FF 35 05 0A F8 08 BC DE 20 00 6B 29 EE 0E F7 0D EF E8 05 FC 02 FE 02 FE 16 0F F8 C2 34 03<br />
10 FC 22 FD BF 42 02 FD 01 F5 0D 02 F5 FC 0E 9A 49 13 09 02 01 EC 0B C2 42 FF 9E 34 03 10 FC 22<br />
FD E5 1E EF 02 02 C9 46 04 FC 99 49 13 09 02 01 EC 0B C6 FC 42 FF 9E 34 03 10 FC 02 FD DE 05 FC<br />
02 FE 02 FE 16 0F F8 C2 34 03 10 FC 02 FD 04 FC 04 DA 05 FC 02 FE 02 FE 16 0F F8 C2 34 03 10 FC<br />
02 FD DE 05 FC 02 FE 02 FE 22 FF BE F3 00 00 00 00 00 00 00 00 18 F8 A0 C1 03 00 CB 09 06 02 00<br />
04 09<br />
9/19/14 9:24:50 PM AudioTransport.pullBuffer() exit; _inPacketLen = 226<br />
9/19/14 9:24:50 PM Waiting for byteslo...<br />
9/19/14 9:24:50 PM  received byteslo: 00<br />
9/19/14 9:24:50 PM Waiting for byteshi...<br />
9/19/14 9:24:50 PM  received byteshi: 04<br />
9/19/14 9:24:50 PM Waiting for command...<br />
9/19/14 9:24:50 PM  received envelope command: D3<br />
9/19/14 9:24:50 PM Waiting for check byte...<br />
9/19/14 9:24:50 PM  received checkbyte: 16<br />
9/19/14 9:24:50 PM  calculated checkbyte: 16<br />
9/19/14 9:24:50 PM CommsThread.pullEnvelopeWide() exit.<br />
9/19/14 9:24:50 PM CommsThread.sendPacketWide() Well, ack envelope was unexpected: D3<br />
9/19/14 9:24:50 PM CommsThread.sendPacketWide() ACK from client: 15<br />
9/19/14 9:24:50 PM CommsThread.sendPacketWide() didn't work; will retry #1.<br />
9/19/14 9:24:50 PM CommsThread.sendPacketWide() block: 0.<br />
9/19/14 9:24:50 PM CommsThread.sendPacketWide() backoff sleeping for 2 seconds (or 1 second, whichever is shorter).<br />
9/19/14 9:24:51 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:51 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:51 PM CommsThread.sendPacketWide() looping until successful to send block: 0000<br />
9/19/14 9:24:51 PM AudioTransport.pushBuffer() entry, pushing 215 bytes.<br />
9/19/14 9:24:51 PM AudioTransport.pushBuffer() pushing data:<br />
C1 00 04 D3 16 00 00 44 05 09 F3 FE 11 FB 03 07 C7 2F F7 F4 E6 0F 39 07 FE F8 CA 3B 05 03 F2 FD<br />
0D C1 15 2B F4 12 F8 F8 09 06 FF BC 16 08 08 F7 F5 13 F5 06 FF E1 12 03 10 FC 22 FD BE 05 FC 02<br />
FE 02 FF 35 05 0A F8 08 BC DE 20 00 6B 29 EE 0E F7 0D EF E8 05 FC 02 FE 02 FE 16 0F F8 C2 34 03<br />
10 FC 22 FD BF 42 02 FD 01 F5 0D 02 F5 FC 0E 9A 49 13 09 02 01 EC 0B C2 42 FF 9E 34 03 10 FC 22<br />
FD E5 1E EF 02 02 C9 46 04 FC 99 49 13 09 02 01 EC 0B C6 FC 42 FF 9E 34 03 10 FC 02 FD DE 05 FC<br />
02 FE 02 FE 16 0F F8 C2 34 03 10 FC 02 FD 04 FC 04 DA 05 FC 02 FE 02 FE 16 0F F8 C2 34 03 10 FC<br />
02 FD DE 05 FC 02 FE 02 FE 22 FF BE F3 00 00 00 00 00 00 00 00 18 F8<br />
9/19/14 9:24:51 PM BytesToWav.encode() entry, encoding 215 bytes.<br />
9/19/14 9:24:51 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:51 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:51 PM PlaybackThread.play() entry.<br />
9/19/14 9:24:51 PM PlaybackThread.play() payload size: 87310<br />
PlaybackThread.play() Bytes written: 873 22698 44523 66348<br />
9/19/14 9:24:54 PM PlaybackThread.play() Done playing.<br />
9/19/14 9:24:54 PM AudioTransport.pushBuffer() exit.<br />
9/19/14 9:24:54 PM CommsThread.sendPacketWide() calculated CRC: 63512<br />
9/19/14 9:24:54 PM CommsThread.pullEnvelopeWide() entry.<br />
9/19/14 9:24:54 PM AudioTransport.pullBuffer() pulled data:<br />
C1 00 04 D3 16 00 00 44 05 09 F3 FE 11 FB 03 07 C7 2F F7 F4 E6 0F 39 07 FE F8 CA 3B 05 03 F2 FD<br />
0D C1 15 2B F4 12 F8 F8 09 06 FF BC 16 08 08 F7 F5 13 F5 06 FF E1 12 03 10 FC 22 FD BE 05 FC 02<br />
FE 02 FF 35 05 0A F8 08 BC DE 20 00 6B 29 EE 0E F7 0D EF E8 05 FC 02 FE 02 FE 16 0F F8 C2 34 03<br />
10 FC 22 FD BF 42 02 FD 01 F5 0D 02 F5 FC 0E 9A 49 13 09 02 01 EC 0B C2 42 FF 9E 34 03 10 FC 22<br />
FD E5 1E EF 02 02 C9 46 04 FC 99 49 13 09 02 01 EC 0B C6 FC 42 FF 9E 34 03 10 FC 02 FD DE 05 FC<br />
02 FE 02 FE 16 0F F8 C2 34 03 10 FC 02 FD 04 FC 04 DA 05 FC 02 FE 02 FE 16 0F F8 C2 34 03 10 FC<br />
02 FD DE 05 FC 02 FE 02 FE 22 FF BE F3 00 00 00 00 00 00 00 00 18 F8 A0 C1 11 00 DA 0A C1 C4 D4<br />
D0 D2 CF AD B2 AE B0 AE B0 AE C4 D3 CB 00 71 07 F8<br />
9/19/14 9:24:54 PM AudioTransport.pullBuffer() exit; _inPacketLen = 241<br />
9/19/14 9:24:54 PM Waiting for byteslo...<br />
9/19/14 9:24:54 PM  received byteslo: 00<br />
9/19/14 9:24:54 PM Waiting for byteshi...<br />
9/19/14 9:24:54 PM  received byteshi: 04<br />
9/19/14 9:24:54 PM Waiting for command...<br />
9/19/14 9:24:54 PM  received envelope command: D3<br />
9/19/14 9:24:54 PM Waiting for check byte...<br />
9/19/14 9:24:54 PM  received checkbyte: 16<br />
9/19/14 9:24:54 PM  calculated checkbyte: 16<br />
9/19/14 9:24:54 PM CommsThread.pullEnvelopeWide() exit.<br />
9/19/14 9:24:54 PM CommsThread.sendPacketWide() Well, ack envelope was unexpected: D3<br />
9/19/14 9:24:54 PM CommsThread.sendPacketWide() ACK from client: 15<br />
9/19/14 9:24:54 PM CommsThread.sendPacketWide() didn't work; will retry #2.<br />
9/19/14 9:24:54 PM CommsThread.sendPacketWide() block: 0.<br />
9/19/14 9:24:54 PM CommsThread.sendPacketWide() backoff sleeping for 4 seconds (or 1 second, whichever is shorter).<br />
9/19/14 9:24:55 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:55 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:55 PM CommsThread.sendPacketWide() looping until successful to send block: 0000<br />
9/19/14 9:24:55 PM AudioTransport.pushBuffer() entry, pushing 215 bytes.<br />
9/19/14 9:24:55 PM AudioTransport.pushBuffer() pushing data:<br />
C1 00 04 D3 16 00 00 44 05 09 F3 FE 11 FB 03 07 C7 2F F7 F4 E6 0F 39 07 FE F8 CA 3B 05 03 F2 FD<br />
0D C1 15 2B F4 12 F8 F8 09 06 FF BC 16 08 08 F7 F5 13 F5 06 FF E1 12 03 10 FC 22 FD BE 05 FC 02<br />
FE 02 FF 35 05 0A F8 08 BC DE 20 00 6B 29 EE 0E F7 0D EF E8 05 FC 02 FE 02 FE 16 0F F8 C2 34 03<br />
10 FC 22 FD BF 42 02 FD 01 F5 0D 02 F5 FC 0E 9A 49 13 09 02 01 EC 0B C2 42 FF 9E 34 03 10 FC 22<br />
FD E5 1E EF 02 02 C9 46 04 FC 99 49 13 09 02 01 EC 0B C6 FC 42 FF 9E 34 03 10 FC 02 FD DE 05 FC<br />
02 FE 02 FE 16 0F F8 C2 34 03 10 FC 02 FD 04 FC 04 DA 05 FC 02 FE 02 FE 16 0F F8 C2 34 03 10 FC<br />
02 FD DE 05 FC 02 FE 02 FE 22 FF BE F3 00 00 00 00 00 00 00 00 18 F8<br />
9/19/14 9:24:55 PM BytesToWav.encode() entry, encoding 215 bytes.<br />
9/19/14 9:24:55 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:55 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:55 PM PlaybackThread.play() entry.<br />
9/19/14 9:24:55 PM PlaybackThread.play() payload size: 87310<br />
PlaybackThread.play() Bytes written: 873 22698 44523 66348<br />
9/19/14 9:24:57 PM PlaybackThread.play() Done playing.<br />
9/19/14 9:24:57 PM AudioTransport.pushBuffer() exit.<br />
9/19/14 9:24:57 PM CommsThread.sendPacketWide() calculated CRC: 63512<br />
9/19/14 9:24:57 PM CommsThread.pullEnvelopeWide() entry.<br />
9/19/14 9:24:57 PM AudioTransport.pullBuffer() pulled data:<br />
C1 00 04 D3 16 00 00 44 05 09 F3 FE 11 FB 03 07 C7 2F F7 F4 E6 0F 39 07 FE F8 CA 3B 05 03 F2 FD<br />
0D C1 15 2B F4 12 F8 F8 09 06 FF BC 16 08 08 F7 F5 13 F5 06 FF E1 12 03 10 FC 22 FD BE 05 FC 02<br />
FE 02 FF 35 05 0A F8 08 BC DE 20 00 6B 29 EE 0E F7 0D EF E8 05 FC 02 FE 02 FE 16 0F F8 C2 34 03<br />
10 FC 22 FD BF 42 02 FD 01 F5 0D 02 F5 FC 0E 9A 49 13 09 02 01 EC 0B C2 42 FF 9E 34 03 10 FC 22<br />
FD E5 1E EF 02 02 C9 46 04 FC 99 49 13 09 02 01 EC 0B C6 FC 42 FF 9E 34 03 10 FC 02 FD DE 05 FC<br />
02 FE 02 FE 16 0F F8 C2 34 03 10 FC 02 FD 04 FC 04 DA 05 FC 02 FE 02 FE 16 0F F8 C2 34 03 10 FC<br />
02 FD DE 05 FC 02 FE 02 FE 22 FF BE F3 00 00 00 00 00 00 00 00 18 F8 A0 C1 12<br />
9/19/14 9:24:57 PM AudioTransport.pullBuffer() exit; _inPacketLen = 218<br />
9/19/14 9:24:57 PM Waiting for byteslo...<br />
9/19/14 9:24:57 PM  received byteslo: 00<br />
9/19/14 9:24:57 PM Waiting for byteshi...<br />
9/19/14 9:24:57 PM  received byteshi: 04<br />
9/19/14 9:24:57 PM Waiting for command...<br />
9/19/14 9:24:57 PM  received envelope command: D3<br />
9/19/14 9:24:57 PM Waiting for check byte...<br />
9/19/14 9:24:57 PM  received checkbyte: 16<br />
9/19/14 9:24:57 PM  calculated checkbyte: 16<br />
9/19/14 9:24:57 PM CommsThread.pullEnvelopeWide() exit.<br />
9/19/14 9:24:57 PM CommsThread.sendPacketWide() Well, ack envelope was unexpected: D3<br />
9/19/14 9:24:57 PM CommsThread.sendPacketWide() ACK from client: 15<br />
9/19/14 9:24:57 PM CommsThread.sendPacketWide() didn't work; will retry #3.<br />
9/19/14 9:24:57 PM CommsThread.sendPacketWide() block: 0.<br />
9/19/14 9:24:57 PM CommsThread.sendPacketWide() backoff sleeping for 6 seconds (or 1 second, whichever is shorter).<br />
9/19/14 9:24:58 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:58 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:58 PM CommsThread.sendPacketWide() exit, rc = false<br />
9/19/14 9:24:58 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:58 PM CommsThread.dispatchCommand() exit.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 00<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 00<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 00<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 00<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 44<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 44<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 05<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 05<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 09<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 09<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: F3<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: F3<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: FE<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: FE<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 11<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 11<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: FB<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: FB<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 03<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 03<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 07<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 07<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: C7<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received Get/Receive command.<br />
9/19/14 9:24:58 PM CommsThread.sendDisk() entry.<br />
9/19/14 9:24:58 PM Gui.getWorkingDirectory(): /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:58 PM Current working directory: /home/jordan/Documents/EMULATION/ADTPro-2.0.0/disks/<br />
9/19/14 9:24:58 PM CommsThread.receiveName() found the protocol MSB - value: 47<br />
9/19/14 9:24:58 PM CommsThread.receiveName() found the protocol LSB - value: 247<br />
9/19/14 9:24:58 PM CommsThread.sendDisk() aborting due to protocol mismatch.<br />
9/19/14 9:24:58 PM CommsThread.sendDisk() exit.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: E6<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: E6<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 0F<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 0F<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 39<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 39<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 07<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 07<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: FE<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: FE<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: F8<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: F8<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: CA<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: CA<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 3B<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 3B<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 05<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 05<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 03<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 03<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: F2<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: F2<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: FD<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: FD<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: 0D<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received unknown command: 0D<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received data.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received a byte: C1<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Received wide protocol request.<br />
9/19/14 9:24:58 PM CommsThread.pullEnvelopeWide() entry.<br />
9/19/14 9:24:58 PM Waiting for byteslo...<br />
9/19/14 9:24:58 PM  received byteslo: 15<br />
9/19/14 9:24:58 PM Waiting for byteshi...<br />
9/19/14 9:24:58 PM  received byteshi: 2B<br />
9/19/14 9:24:58 PM Waiting for command...<br />
9/19/14 9:24:58 PM  received envelope command: F4<br />
9/19/14 9:24:58 PM Waiting for check byte...<br />
9/19/14 9:24:58 PM  received checkbyte: 12<br />
9/19/14 9:24:58 PM  calculated checkbyte: 0B<br />
9/19/14 9:24:58 PM CommsThread.pullEnvelopeWide() received ill-formed envelope.<br />
9/19/14 9:24:58 PM AudioTransport.flushReceiveBuffer() entry.<br />
9/19/14 9:24:58 PM AudioTransport.flushReceiveBuffer() exit.<br />
9/19/14 9:24:58 PM CommsThread.pullEnvelopeWide() exit.<br />
9/19/14 9:24:58 PM CommsThread.dispatchCommand() entry.<br />
9/19/14 9:24:58 PM CommsThread.dispatchCommand() Received unknown command: 00<br />
9/19/14 9:24:58 PM CommsThread.pullPayloadWide() entry.<br />
9/19/14 9:24:58 PM CommsThread.dispatchCommand() exit.<br />
9/19/14 9:24:58 PM CommsThread.commandLoop() Waiting for command from Apple.</p>
<p>

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

A nice feature would be some sort of meter on both sides that could send a solid tone in both directions to show the strength of the signal levels received to set up the volume control

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTpro Audio Transfer Issue

jrubin wrote:

A nice feature would be some sort of meter on both sides that could send a solid tone in both directions to show the strength of the signal levels received to set up the volume control

I agree. That would be nice.

Can you point me to the disk image you're trying to send?

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

That would be the ADTpro disk image. It was the only one I tried via audio

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

That's a good test case... the ADTPro disk image has some code that's tough to compress early in the disk image, so that would be a situation where the audio connection would need to be in pretty good shape. It's the one that I used to test the most, so I can attest that it has worked in the past. To be safest, I'd suggest trying with 1 block at a time, try varying the sound up another 10% from where it was. Generally folks need things louder, not softer.

speedyG's picture
Online
Joined: Nov 16 2011
Posts: 2377
Re: ADTPro Audio Transfer Issue

Hello David,
I just wonder why you decided to use the Audio anyhow as the very basic connection.
Why not the Gameport ?
(i.e. the annunciators )
maybe a thought worth ....
In former days the gameport was even used for programming Eproms:
http://www.appleii-box.de/H049_AppleIIepromProgrammer.htm
it might be a usefull alternative "port" in future update of ADT ...
no need for adjusting loudness....
sincerely speedyG

__________________

In early days I had a lot of money but no time - now I have no money but a lot of time....
the second part includes less friends but a lot more joy on life....

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

speedyG wrote:

Hello David,
I just wonder why you decided to use the Audio anyhow as the very basic connection.
Why not the Gameport ?
(i.e. the annunciators )

The gameport would be a great option for data transmission. NadaNet is a fantastic example of its capabilities:
http://home.comcast.net/~mjmahon/NadaNet.html
And Ap2222PC uses the game port for disk transfers:
http://stason.org/TULARC/pc/apple2/emulator/5-2-4-Transferring-Disk-Images-Miscellaneous.html

My goal for using Audio was to enable bootstrapping and transfers with no additional hardware required... just about everyone has those 3.5mm jacks lying around. It takes soldering to get a game port connection up and running in most cases. If you're going to do that... you might as well go serial!

speedyG's picture
Online
Joined: Nov 16 2011
Posts: 2377
Re: ADTPro Audio Transfer Issue

david__schmidt wrote:

My goal for using Audio was to enable bootstrapping and transfers with no additional hardware required... just about everyone has those 3.5mm jacks lying around. It takes soldering to get a game port connection up and running in most cases. If you're going to do that... you might as well go serial!

Hello David,
I agree in nearly every statement - except the last one.... going serial requires some kind of serial interface
( at least at the old models previous to the IIGS and IIc ).....
the gameport is used "bare" without additional cards...
but you are correct with "the need to use a soldering iron...."
from that point of view your right.... audiocables are availiable in nearly every house...
my posting was just a reminder that there is also another alternative to the audio-option
that works without need of tinkering with volume controls.....
in fact the gameport is ( if used in propagated way ) a kind of serial connection...

speedyG

__________________

In early days I had a lot of money but no time - now I have no money but a lot of time....
the second part includes less friends but a lot more joy on life....

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTPro Audio Transfer Issue

I think the audio would be fine if the following could be done.

Besides the meters I mentioned previously, maybe a small program on both sides that sends a test pattern 010101010101010
that gives a *BAD* status until the recieving end gets expected pattern over a period of seconds as the audio is adjusted and then displays *GOOD* while recieving them
You Get the idea..

J

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

I also wonder how fast a parallel transfer would be, could that be implimented?

grandta13's picture
Offline
Joined: Jan 24 2010
Posts: 25
Re: ADTpro Audio Transfer Issue

This strays a bit from the initial topic, but how do I switch the jumper block on a Super Serial Card from 'Terminal' to 'Modem'?

EDIT: Nevermind, I managed to switch it. The jumper block was just stuck in the socket (I don't think it's been removed in thirty years).

__________________

Apple //e
333MHz Strawberry Apple iMac G3; 96MB RAM

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTpro Audio Transfer Issue

grandta13 wrote:

This strays a bit from the initial topic, but how do I switch the jumper block on a Super Serial Card from 'Terminal' to 'Modem'?

EDIT: Nevermind, I managed to switch it. The jumper block was just stuck in the socket (I don't think it's been removed in thirty years).

Great - that's one more person that doesn't have to worry about Audio. Smile

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

speedyG wrote:

I agree in nearly every statement - except the last one.... going serial requires some kind of serial interface

What I mean is... you have to go serial on the host side. What will you be connecting those annunciators to? Wink

grandta13's picture
Offline
Joined: Jan 24 2010
Posts: 25
Re: ADTpro Audio Transfer Issue

I've gotten the transfer to work perfectly with serial, but I am still willing to do tests with audio if it can help.

__________________

Apple //e
333MHz Strawberry Apple iMac G3; 96MB RAM

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTpro Audio Transfer Issue

grandta13 wrote:

I've gotten the transfer to work perfectly with serial, but I am still willing to do tests with audio if it can help.

Thanks for that. I've been thinking about a kind of tester app that all have been mentioning above for some time. The ability to discern packets or not flowing on the audio stream is possible, and might even be easy. Having the Apple discern volume levels would be much more complex, and outside the scope of what I personally have time for. But anyway, if inspiration strikes before anyone else volunteers to code it up, you'll be the first to know.

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

right, discerning audio levels on the apple may be quite complex, and perhaps overkill. Discerning a test pattern though would probably be more appropriate.
I should point out that I dont use the audio version. I use serial, I'm only involved here to assist with audio testing

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

Ok, I think I have a workable solution. Since folks don't seem to have too much trouble pushing audio data to the Apple II, I embedded some smarts in the client that will continuously send a "ping" message whenever the "About" message is showing (the (?) menu item). Once the audio levels are adjusted correctly, the server will display a message with an increasing count that shows the message number received:

http://adtpro.sourceforge.net/images/heard1.png

Let me know if you'd like to give this a try, and I'll send along a download URL.

grandta13's picture
Offline
Joined: Jan 24 2010
Posts: 25
Re: ADTPro Audio Transfer Issue

My system's set up; I can give it a try.

__________________

Apple //e
333MHz Strawberry Apple iMac G3; 96MB RAM

Offline
Joined: Oct 27 2014
Posts: 9
Re: ADTPro Audio Transfer Issue

I am having the exact same issue.
The sending works just fine, but the receiving doesn't work at all. I tried every possible combination to the volume, cleared all the filters from my PC and still the receive does not work.
I will be happy if you provide me link as well for this patched version to see if it works.
Thanks.

Offline
Joined: Jun 20 2014
Posts: 234
Re: ADTpro Audio Transfer Issue

I honestly don't mean to be nasty, but why on earth are folks trying to use audio?

Serial with a cheap USB to serial adapter is ultra fast and reliable, at least compared to audio.

@David. Why do you even support audio anymore?

I really don't get it, other than it has a certain "because I can" aspect to it. By the same token I can stick forks in my eyes, but ... well, I don't.

Again, I'm not trying to be nasty, but do you want to get data from your PC to your Apple, or do you want to spend endless hours frigging around with something that will, once you get it right, (at the very best) be unreliable and slow?

???

__________________

Bill

6502 forever!

grandta13's picture
Offline
Joined: Jan 24 2010
Posts: 25
Re: ADTpro Audio Transfer Issue

While I can't speak for anyone else, the reason I was using audio was because I couldn't afford anything else. My Apple was a gift and though I was interested, I couldn't afford any extra hardware. I could easily see someone else in a similar situation.

__________________

Apple //e
333MHz Strawberry Apple iMac G3; 96MB RAM

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

galinpetkov wrote:

I am having the exact same issue.
The sending works just fine, but the receiving doesn't work at all. I tried every possible combination to the volume, cleared all the filters from my PC and still the receive does not work.

Well, that's not encouraging at all... it doesn't sound like you're headed in the right direction. Something fairly binary isn't working.

The test version is here:
http://sourceforge.net/projects/adtpro/files/adtpro/Testcase/
and download the October 5th version.

Here's an intro:

The ADTPro client can send out test packets continuously so that you can make any necessary adjustments to your operating system or wiring until they are successfully "heard" at the host. The test packets are activated at the client end by simply accessing the "About" screen of ADTPro, which is the question mark "(?)" from the main menu.

Whenever the "About" message is displayed, the ADTPro audio client will be continuously sending a test packet to the server. Once the test server starts successfully receiving these test packets, the server will show a message at the bottom of the window that says "Heard audio signal #x".

The number in the message "Heard audio signal #x" will increment for every message successfully received. So once the correct volume levels have been reached, the number should be observed as continuously increasing whenever the "(?)" menu item is active.

Offline
Joined: Oct 27 2014
Posts: 9
Re: ADTPro Audio Transfer Issue

david__schmidt wrote:
galinpetkov wrote:

I am having the exact same issue.
The sending works just fine, but the receiving doesn't work at all. I tried every possible combination to the volume, cleared all the filters from my PC and still the receive does not work.

Well, that's not encouraging at all... it doesn't sound like you're headed in the right direction. Something fairly binary isn't working.

The test version is here:
http://sourceforge.net/projects/adtpro/files/adtpro/Testcase/
and download the October 5th version.

Here's an intro:

The ADTPro client can send out test packets continuously so that you can make any necessary adjustments to your operating system or wiring until they are successfully "heard" at the host. The test packets are activated at the client end by simply accessing the "About" screen of ADTPro, which is the question mark "(?)" from the main menu.

Whenever the "About" message is displayed, the ADTPro audio client will be continuously sending a test packet to the server. Once the test server starts successfully receiving these test packets, the server will show a message at the bottom of the window that says "Heard audio signal #x".

The number in the message "Heard audio signal #x" will increment for every message successfully received. So once the correct volume levels have been reached, the number should be observed as continuously increasing whenever the "(?)" menu item is active.

Hi Dave,

Thank you so much!!! It did worked! I am very happy person.

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

BillO wrote:

I honestly don't mean to be nasty, but why on earth are folks trying to use audio?

Serial with a cheap USB to serial adapter is ultra fast and reliable, at least compared to audio.

@David. Why do you even support audio anymore?

I really don't get it, other than it has a certain "because I can" aspect to it. By the same token I can stick forks in my eyes, but ... well, I don't.

Again, I'm not trying to be nasty, but do you want to get data from your PC to your Apple, or do you want to spend endless hours frigging around with something that will, once you get it right, (at the very best) be unreliable and slow?

???

@Bill. Why support the apple ][ anymore, with the advent of something more modern? Even in the setup of your question I cant see how it possibly would contribute to the thread. Im not going to get into the virtues of disk versus audio versus serial versus ethernet. He wrote a program, it supports it , people use it.

Offline
Joined: Jun 20 2014
Posts: 234
Re: ADTpro Audio Transfer Issue

jrubin wrote:

@Bill. Why support the apple ][ anymore, with the advent of something more modern?

Well, not all aspects of the Apple II are as cantankerous as using audio as a means to transfer large amounts of data. Most are quite enjoyable and come easily without frustration and wasted time. Besides, my comment was not about modern vs. obsolete, it was about how you want to spend your time: doing something fun and enjoyable, or struggling with something that does not work very reliably at best.

jrubin wrote:

Even in the setup of your question I cant see how it possibly would contribute to the thread.

From this am I to assume that there is no room for simple discussion or the expression of one's opinion? Fair enough, rules is rules, even if they have never been stated. So, I guess by that measure your most recent post is a invalid as mine.

In any case, my opinion aside, there seems to be a solution and the OP has a better alternative available to him as well.

I had, until recently, toyed with the idea of designing a very simple card based on the WDC65C51 for express use with ATDpro. Something that would be Wired to work with a cheap straight-through 9-pin RS232 cable available anywhere and that could be sold for under $10. However, other higher priority projects have intervened.

__________________

Bill

6502 forever!

Offline
Joined: Sep 21 2014
Posts: 74
Re: ADTpro Audio Transfer Issue

Fact is, while I do use the serial connection for ADTpro, The audio port was used to do the inital boot strapping to allow that to happen. Without which id have no way of initially getting adtpro onto disk in the first place.

Audio is also hardware native to the IIe and other itterations of the apple II. It seems like a good common denominator for file transfer

Ive noticed several websites and projects that cater towards loading from sound files aside from adtpro that validates my point

i.e. http://asciiexpress.net/diskserver/

an android app also exists for the same purpose.

Ill hedge my bets that there are no altair users out there who are inoperational for lack of a bootstrap loader and CRC checker, so long as they can physically flip a few octal switches by hand to get things rolling

I think this comes down to what is a waste of time versus what you believe is a waste of time. Im sure if I had something time critical to do , left only with an apple II to do it (cant imagine how) then yes, i would forgo audio as a means for file transfer

Also when starting post with "honestly, I done mean to be nasty" youve already admitted that the following post would be incitefull.

Offline
Joined: Apr 11 2006
Posts: 1013
Re: ADTPro Audio Transfer Issue

galinpetkov wrote:
david__schmidt wrote:

The number in the message "Heard audio signal #x" will increment for every message successfully received. So once the correct volume levels have been reached, the number should be observed as continuously increasing whenever the "(?)" menu item is active.

Thank you so much!!! It did worked! I am very happy person.

I'm glad to hear it. What did you have to change to make it work?