It was long years have passed since I develope the MB4c. First time, I really want to have Mockingboard for my APPLE IIc and finally could have Mockingboard for //c computer. it was really happy experianced and It was enough for me. And revised some version for perfect compatibility as now. But, the Mockingboard doesn't work on APPLE //c+. Physically and logically it doesn't support APPLE //c+. I received some of email who want to have Mockingboard for his APPLE //c+ and finally I promised to finished it. Infact, When I develped the MB4c, I also tried to make it run on APPLE //c+ but failed. APPLE //c+ has own cache for faster run and it working different with APPLE //c. Some of friends want a Mockingboard with a memory board. But, It woudn't be easy due to low space.
Anyway, This is a beginning for APPLE //c+ so let me to complete the Mockingboard for C+ first and consider next step on next version.
WAV file is simple wave sound data and isn't compressed data.
So, It was easy to handle by APPLE II.
To make sampling rates, It used an integrated NMI interval generator to generate sampling rates.
Interrupts handler sending data on time to DA port for sound.
Main program monitoring buffer and filling data from SD DISK II Plus at the same time.
It used a 12KB buffer(maybe can reduce this size).
Due to the power of NMI, it doesn't lose sampling sync.
So. no need for any clock counting to sync sound and It can read SD DISK II plus data while producing sound.
The program size is less than 1KB and works very efficiently and fast.
SD DISK II Plus is working busy and Accelerator also working nicely to play songs.
And CPU power still has left processing power so can increase sound sampling rates some more.
I think some hobbyists could try other fun things with this NMI/IRQ interval function.
Thanks
No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document or by any conduct of Ian Kim. Product names and markings noted herein may be trademarks of their respective owners.
Since I was young time, I like to programming on APPLE II+ (It was my first computer).
And tested functions and even try to make games such as Block out and some shooting games.
But, Only my available language was BASIC and hard to make a sound on BASIC. Just toggle sound was possible.
After some research, I could generate tone and melody by ASM power.
Why APPLE II is slow? Can I make my program run faster?
Some months later, I could find a way... it is BASIC compiler.
It accelerates about 2 times than BASIC speed but still not enough to describe my idea. so have to stop to making arcade game.
Learning ASM was too much hard. I can't understand why there are just AND,OR,ADD... and MOVE and some branch commands... there is no sound-generating commands...?
Now, I want to make a gift for me.
CPU Accelerator card for my APPLE II.
I'm mostly using APPLE //e so, I try to accelerate my APPLE //e.
After some months of research, I could find a way to design it.
And tested it.. but, It didn't work of course.
Several actual research again...
Finally, I could make it run. But no screen output and I only could hear a high pitch beep.
What's wrong? and How to solve this issue?
it was my first problem.
Explained about the solving ways.
APPLE II is using video area from base memory and it doesn't read from the I/O BUS.
APPLE II is automatically reading from the main board RAM for video.
Due to this reasons, my first design doesn't show proper screen output.
So, What should I do?
I need video output.
It needed to push Video data to APPLE II and APPLE II output the video.
It required I/O sync to match CPU speed with APPLE II BUS speed anyway.
Also I/O have to send APPLE II properly to have sound(toggle) and keyboard input.
So, now APPLE II has video output and speaker, Keyboard input.
Another Revision of PCB was ordered and I'm waiting for it.
In the first design, I used AY3-8912 and good parts going to hard to obtain so change it to AY3-8910 chips.
And now, 6522 part also getting harder to find good one And more failure rates are too many.
So, Tried it to use 65C22 but it doesn't fit well and needs to change circuit redesign.
Designing a new device isn't simple due to old vintage parts need to be provided properly.
it is harder to obtain good working parts.
Due to a lack of good working parts, I also considered replacing it to CPLD but, it isn't good mate for vintage APPLE II so didn't emulate it and now CPLD is just used to replace some of TTL chips.
Once it finished, I could prepare enough amounts of MB4c board.
This version properly works FDD mode on APPLE IIGS(Fast).
<Enhanced>
Speed upon Reading file LIST.
More than256 files reading was slow but, much faster now.
I did test it with 1,530 files and took 4.8Sec to read on APPLE //e and ][+, (IIGS Fastmode is faster).
<Image List Sort>
Menu program showing as followed this image group (no naming sort).
1) Volume/Directories first
2) HDDimages(HDV or 2MG or PO no internal sort)
3) FDD images (NIB or DSK no internal sort)
Firmware tested on APPLE ][+, //e, IIGS ROM1
Tested card version; SD DISK][ plus V2.49A, V2.5A, and V2.46.
<Restriction>
* HDD disk D1 and D2, It should be in the same directory.
* FDD disk file D1 and D2 could be different but, reading only.
If it needs to write, It should be in the same directory.
Power ON Boot will search image file for D1 and D2 in a Boot Directory.
But, If you load a FDD file in the menu, you can use but, only Read purpose. Because the Write process will search in the directory update the file. (These restrictions is due to the MPU RAM size)
Firmware Download;
'Please use newer version'
To update firmware, please refer to the user's manual.
If you just changed the mode without select any file, it causes boot failure.
In this case, SD Disk][ will use as a Boot image from the previously selected one.
Changed
(1) When it updates the file list, it shows 'Updating..' on the file list window.
(2) When FDD image loading, Menu waited until to finish but now it doesn't wait but show 'updating..' on drive name and it will be updated when it finished the loading.
And if more commands to the SD DISK II before to complete, it will wait until finished.
(3) FDD D1 & D2 images will load while Power ON Boot.ing. Some games need two diskettes and it would work without select 2nd image again.