All the programs are machine code except one (Planets by Programma). I
was able to load the .po file for Planets and run this in an emulator
in Applesoft basic, but how do I load and run the machine code
programs, many of which have converted as 2 or 3 separate files using
Ciderpress? I'm a little confused.
Is there any other programs that can convert wav files into something
usable for an emulator. I have tried converting the wav to aiff (or
cass file - same thing) and loading them in Virtual ]['s virtual
cassette, but nothing works and I get ERR every time.
Any advice would be greatly appreciated.
Cheers
Phil
From my experience with cassettes, knowing that I use, on a
macbookpro, the same software as you do:
- one or two rewind/fast forward of the tape is to be done
- be sure the small foam piece is present, otherwise add one or a
piece of paper
- be sure the time to hear the long beep does not exceed 3 seconds
- the digit phase: I usually digitize in mono. If that gives nothing
readable by cidepress, then acquire in stereo mode. Once done, save
the project, mix the two voices and export as a WAV file and try the
ciderpress import again. If that does not help neither, separate the
two voices of your project and export them to WAV and test.
- cable should be checked (I assume that works well as you acquired
several cassettes)
- level of acquisition should be well set (same as above), if the
sound level is too low, ciderpress will hear silence.
Good luck,
antoine
Antoine,
Thanks for the reply. I'll try some of your tricks tonight to see if I
can't get the three remaining programs to work.
Then, if anyone knows how to load these machine code programs
(converted in ciderpress) in .po file format on an emulator would be
great.
Phil
A cassette "ERR" just means that the checksum failed.
In most cases, almost all of the data is recoverable.
Start by doing a Monitor "R"ead command with a very long address range:
800.8fffR
This will read data from the tape starting at $800 and going as far
as the recording on the tape is long. If you can hear the recording,
you can Reset the machine as soon as the recorded data ends.
Then examine the data stored in memory. Since it is mostly code,
it should disassemble into "reasonable" code up until the point
of the first error.
Tape errors are usually "bit slips", in which one or more bits is
deleted or inserted into the stream. "Bit flips" are also possible,
depending on the length of a tape dropout.
Since the most probable changes are 1) the insertion of a 1, 2) the
insertion of a 0, 3) the deletion of a 1 or 0, or 4) the inversion
of a bit, it is possible to proceed by informed guessing. ;-)
Often a single bit flip will not even look strange, since it may
simply change a reasonable opcode to another (superficially) reasonaqble
opcode, or change the value of an address or constant. These errors
will be the hardest to find and fix, since they manifest simply as
bugs in the code.
Bit insertions and deletions usually result in the following code
becoming "unreasonable" gibberish, so that identifies the point where
you should try inserting a bit or deleting a bit, to see which of
those options restores order to the following code.
This involves shifting all the rest of the data in memory 1 bit left
(for a deletion) or right (for an insertion).
After you have a "reasonable" result, log your change and proceed
to the next presumed error, if any.
By working in this manner, you can recover the vast majority of
the code (or ASCII data, since it, too, has obvous "reasonableness").
The recovered data can be saved to disk and then debugged, focusing
on the logged areas where you had to make changes.
Of course, this method is a last resort. You should do everything
possible to ensure that the tape is read correctly in the first place,
as Antoine points out. Since the same data was written to both the
left and right channel tracks, but those tracks may be affected
differently by dropouts or damage, trying each track separately can
sometimes result in a good read.
Alignment (head azimuth) is also a common problem--usually on the
reading tape deck, but occasionally on the recording deck. In this
case, it is necessary to adjust the reading deck azimuth to match
each tape. This is done by locating the head alignment screw (near
one side of the head mount) and slowly adjusting it while listening
to the tape. Adjust for the most high frequencies. This will often
render an unreadable tape readable.
-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."
Dirk
> All the programs are machine code except one (Planets by Programma). I
> was able to load the .po file for Planets and run this in an emulator
> in Applesoft basic, but how do I load and run the machine code
> programs, many of which have converted as 2 or 3 separate files using
> Ciderpress? I'm a little confused.
Of course the ideal solution would be an emulator with tape loading
emulation, but I don't know if one exists.
Did you try simply BRUNning the files from a normally booted DOS or
ProDOS? That might work at least well enough for you to get a start
screen, as long as the code doesn't clobber DOS or ProDOS itself.
You can also try BLOADing the files, then resetting the Apple without
loading an operating System (on a //e emulator: CTRL-OPENAPPLE-RESET
followed by CTRL-RESET). Then CALL the start address. This way the
Program is free to use the DOS area once started and can't get confused
by the changed I/O vectors of a loaded operating system.
This won't help with programs that load directly into the area where DOS
or ProDOS normally resides, but I'd assume that since most tapes are
from an era when many people still had less then 48K RAM, few will load
into the memory area where DOS resides on a 48K+ system. In the case of
ProDOS, using LOADER.SYSTEM instead of BASIC.SYSTEM might help, as it
frees some RAM if I remember correctly.
If the program is a multi loader, you will have to hack it to load the
other parts from Disk instead of from tape.
--
Linards Ticmanis
Firstly, Michael, thank you for such a long and detailed writeup. I
have read through it multiple times and I believe I understand all
what you are saying, however I have doubt my skill in executing the
possible fixes. I'll try to do what I can without resorting to hand
fixing the code at this point, but if I can't get all the cassettes to
load...then who knows.
Dirk, I have put screen captures (loaded in Virtual ][) of what I have
recovered so far. You can see M.Hata's name in the launch screen of
Super Invaders. I've never seen a version of Super Invaders with a
launch screen before so maybe that is specific to this cassette. Also
see the Galaxian screen with the super cool typo...thats just so
Japanese, I love it.
As for your other questions, I don't know any other information about
these games or their artwork. Sorry.
Phil
Anyway
http://web.mac.com/lord_philip/apple_1_%26_II/Japanese_Cassettes.html
> On 01/14/2011 04:50 AM, Nama wrote:
>
>> All the programs are machine code except one (Planets by Programma). I
>> was able to load the .po file for Planets and run this in an emulator
>> in Applesoft basic, but how do I load and run the machine code
>> programs, many of which have converted as 2 or 3 separate files using
>> Ciderpress? I'm a little confused.
>
> Of course the ideal solution would be an emulator with tape loading
> emulation, but I don't know if one exists.
MESS.
-uso.
antoine
That's right for the upper part of memory but, from my experience,
plenty of cassettes start loading in the keyboard buffer (@ $200)
which make them unusable/unbloadable from any OS.
A load in a safe place then move to the right place in memory is
mandatory there.
antoine
I've been using Virtual ][. The pause every 5 mins is very annoying
(it's a great emulator, but I think $49 for a full license is too
expensive...maybe I'm cheap!), but it works great otherwise. As you
can see from my link, I've been able to load many of the programs
using this emulator.
As for MESS, I thought I'd give the Apple II+ implementation a go.
After installing the ROM images, I can't see anyway to load a cassette/
wav file. Only virtual disk drives exist. I use MESS for Aamber
Pegasus emulation and this does have the cassette feature implemented.
I'll try to get the remaining cassettes working this evening.
Phil
Be sure to use the Apple ][+ ROM, since OA-Reset on a //e clobbers memory.
-michael - NadaNet 3.1: http://home.comcast.net/~mjmahon
@Phil: Great work!
On Jan 15, 5:32 am, spacealbum <dbackenkoeh...@t-online.de> wrote:
> Phil, regarding Japanese programms: I was always wondering if
> something is known about the Japanese programmer M. Hata who ported
> Invaders to the Apple II?
> Or the Star Craft of Tokyo of team that programmed the great Apple
> Galaxian version for Broderbund?
> Do you know if they sold their games also in Japan, maybe with their
> own Artwork?
@Dirk: I can contribute a bit of info ...
(I used to live in Japan too, where I met Phil.)
Firstly, I don't what those guys are doing now, but the Star Craft
guys had a long history of writing - and later porting - games in
Japan. I've got a casette of Star Blazer (yes Antoine - I'll get
around to it someday! ;-) that has a Japanese instruction sheet, so
they were definitely selling these games in Japan.
They had offices in 2 places that I know of. One in Ikebukuro in Tokyo
that I went to investigate, as I happened to work in that city, which
was torn down and replaced by a new building in probably the mid to
late 90's.
Another office was in Ginza (Chuo-ku) in Tokyo, which I unfortunately
never got around to looking for, even though I lived fairly close by.
Anyway, they went on to port many Apple II (etc) games to the
computers which became popular only in Japan during the 80's & 90's. I
can't recall the specfics of which ones they did for which platform,
but for example there was a port of The Dark Crystal to those
platforms (e.g FM-7) which simply had all of the English text
transliterated into the Japanese katakana phonetic syllabary. Very
painful to read, but cheaper than translating it, and those early
computers didn't have the resolution for kanji (Chinese characters).
Cheers,
Nick.
Also I have scanned the U-Draw Japanese manual and that is available
from my server too.
Phil
Dirk
The cassette or accompanying documentation will usually have some sort
of indication, e.g. "2000.2200R 2000G" or "30.3FFFR".
Cassettes with 2 or 3 separate files *might* just have 2 or 3 copies
of the same thing (so you have a backup in case the tape wears out).
One game had different versions with progressively harder difficulty
levels encoded this way.
Yes, For Ack Ack, Speedway and Retreat the cassettes indicate
200.2000R, and they all seem to load, but then after the title screen
they just end with a blank screen and the astrix prompt in monitor.
I'm not 100% sure if they have loaded successfully but I get no
errors, and I'm not sure if I'm missing a 'Go' address or something. I
can't see anything written on the cassettes about this. The only other
cassette I am having trouble with is Super Othello with 30.6000R. This
also seems to load, but again just ends up in monitor with a blank
screen.
You're running this on a ][+, right?
Yes, I'll get back to that Chuo-ku address one day for a look ... ;-)
And I suddenly recalled where I'd mentioned this before.
On Alex Lee's "WHAT IS THE APPLE IIGS?" site:
http://www.whatisthe2gs.apple2.org.za/the-japanese-connection/?commentStart=10
Here's a link to a Japanese site listing Starcraft ports to the FM-7
computer.
And the google translation:
http://translate.google.co.nz/translate?js=n&prev=_t&hl=en&ie=UTF-8&layout=2&eotf=1&sl=ja&tl=en&u=http%3A%2F%2Fwww.retropc.net%2Ffm-7%2Fmuseum%2Fsofthouse%2Fstarcraft%2F2203.html
Lots of familiar game names there!
Cheers,
Nick.
I had one cassette (Softape's Module 6) that assumed a non-autostart
ROM. The autostart ROM directs software interrupts through $3F0, but
the old monitor ROM just jumped to $FF65. You may be encountering
something similar.
Thanks for the reply. I was actually able to figure out how to get Ack
Ack, Speedway and Retreat to work. What tipped me off was a reference
on Antoines page that Ack Ack was Integer BASIC. So what I needed to
do was first load Integer basic, then enter Integer basic (INT), then
do a CALL 151, and finally 200.2000R.
You can see the captures here:
http://web.mac.com/lord_philip/apple_1_%26_II/Japanese_Cassettes.html
All three of these games work flawlessly. Now all that remains to get
working is Super Othello, and I need to figure out why Renju just
freezes on the load screen. Maybe this has something to do with
Fadden's tip?
Thanks again.
Phil
After much playing around, Ack Ack, Speedway, Retreat and Renju are
now all functional:
http://web.mac.com/lord_philip/apple_1_%26_II/Japanese_Cassettes.html
As always you can get them from my server
http://idisk.mac.com/lord_philip-Public?view=web.
Only Super Othello with the 30.6000R load address remains.
Phil