TAP/mulator

This is the right place to discuss on how to implement hardware vsync, adding a VIA or AY chipset, puting multiple roms, or how to design a new flash expansion card.
Godzil
Squad Leader
Posts: 755
Joined: Sat May 21, 2011 7:21 pm
Location: Between UK and France
Contact:

TAP/mulator

Post by Godzil » Wed Mar 28, 2012 4:02 pm

Today, I made the first step for one of my next project :

TAP/mulator.

* What is TAP/mulator?

It's a Tape Emulator, currently aimed for the Oric 1/Atmos.

TAP/mulator will use SD card as main storage device.

For prototyping I'm using an arduino board, a breadboard and an the Arduino Ethernet shield to access a microSD card but don't worry the final device will be more user friendly ;)

* What is planned for the prototype:
- browsing the SD card for TAP file (I doubt be able to use WAV file, we will see later) and folder support!!!
- Using Slow, Normal and Highspeed transfer mode (the High speed will be the fabrice version) using option menu.
- Beeing able to play/pause
- Rewind the tape
- Take acount of the tape pause/stop relay

* The "final" version should have too:
- Auto load menu (ie, start the oric, type CLOAD "", the device will automatically load a special tape to control the device from the Oric)
- Browsing the SD card from the oric
- Audio passthrough ? (ie having a jack/RCA output for the audio output on the DIN
- Tape Audio in/out for real external tape using jack/rca connector ?
- Directly play waves ?
- Make Fabrice HighSpeed mode work on a Oric 1?
- Beeing able to directly record to tap file
- Using a nice graphical screen instead of a text screen ? (I have an idea for the device package )
- Bug free!

* Unsure things
I'm unsure about keeping the current tap format. It's simple, works great, but it has some flow, like no real header to have all stored "files", and there is no temporality information.
I may add a new "vtape" (virtual tape) format that could be universal (ie not specifically oric oriented) that like wave file will be able to fastforward, fastrewind, but will be lower in size than wav file, but it may not support to change the speed mode.
At least, I may add to the current tap format a header (in fact a footer to stay compatible with current tap file app) that store each entry points in the file (a bit like a CDROM track)
I may not keep the Arduino AVR chip on the final version, it will depends how close I met the ATmega limits

I don't know if I will release the project as an open source project, or a closed sources project. At least user part will be documented (for exemple the protocol between the oric and the device to list contained files)

* What is done for now:
- I'm able to send tape header to an Oric, it seems to work on the real world! And the current schematics is really simple ;-)


All comments are welcome!

User avatar
Dbug
Site Admin
Posts: 2357
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: TAP/mulator

Post by Dbug » Wed Mar 28, 2012 7:03 pm

What would make sense if you want a new tape format, is to discuss with Xeron so you can settle on some common ground with a new format that gives real benefit to everybody.

Having the original tape format + xeron's new format + your new format would kind of suck :)

You could extend your device to implement the hardware vsync while you are at it:
- have two connectors (the tape/audio DIN, and the RGB DIN)
- detect the status of the remote pin to handle the inner working of your tape device and when disable to pass the VSYNC signal back to the tape input

Since you wrote you were considering showing the menu on screen; you could do that by overlaying your own video signal on top of the Oric video input

Just ideas :)

User avatar
Chema
Game master
Posts: 2029
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: TAP/mulator

Post by Chema » Wed Mar 28, 2012 7:24 pm

Godzil wrote:- Make Fabrice HighSpeed mode work on a Oric 1?
Very nice project Godzil!

Note that Fabrice is working on a new version of tap2cd, as we detected some issues with certain Orics (I have a first test version which seems to solve them all, and adds a CRC error check for each page it loads 8) )

It is difficult to make it work on an Oric 1 though. The loader is stored on page 1 (so there is not much room free) and makes calls to ROM routines which I think cannot be translated to their 1.0 counterparts. In rom 1.0 they were not structured the same way (or not structured at all), so some of them simply do not exist as separate "callable" routines.

Cheers.

User avatar
Symoon
Archivist
Posts: 1159
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France
Contact:

Re: TAP/mulator

Post by Symoon » Thu Mar 29, 2012 12:08 am

Chema wrote:
Godzil wrote:It is difficult to make it work on an Oric 1 though. The loader is stored on page 1 (so there is not much room free) and makes calls to ROM routines which I think cannot be translated to their 1.0 counterparts. In rom 1.0 they were not structured the same way (or not structured at all), so some of them simply do not exist as separate "callable" routines.
Tried a few years ago and was stopped by this problem indeed.
And I suspect Fabrice didn't release on Oric-1 version for the same reason ;)

Which doesn't mean it's impossible, but good luck ;)

Godzil
Squad Leader
Posts: 755
Joined: Sat May 21, 2011 7:21 pm
Location: Between UK and France
Contact:

Re: TAP/mulator

Post by Godzil » Thu Mar 29, 2012 8:41 pm

Don't kill my hopes ;)


I've made a small logo (but it's not final) :
TAP_MULATOR-logo.png
TAP_MULATOR-logo.png (87.25 KiB) Viewed 8546 times

User avatar
kenneth
Flying Officer
Posts: 179
Joined: Fri Nov 26, 2010 9:11 pm
Location: France PdD
Contact:

Re: TAP/mulator

Post by kenneth » Thu Mar 29, 2012 9:19 pm

The beginning and the end of the tape is red and the case is black. It is a good choice ! :mrgreen:

Good luck for your project Godzil. :wink:

User avatar
iss
Flight Lieutenant
Posts: 487
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: TAP/mulator

Post by iss » Mon Nov 04, 2013 10:34 am

Any news on this topic?
I'm planing long time ago to make such SD replacement for tape - just need time and more support from Oric community :).
Actually, TAP/mulator already exists and I think it's VERY good -> SDcard tape interface.
It's published on youtube by "Euphoric Oric" (everyone can guess who's the author!).
The other video: Cartouche Oric 16K is very nice idea too.

User avatar
Chema
Game master
Posts: 2029
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: TAP/mulator

Post by Chema » Mon Nov 04, 2013 12:21 pm

iss wrote:Any news on this topic?
I'm planing long time ago to make such SD replacement for tape - just need time and more support from Oric community :).
Actually, TAP/mulator already exists and I think it's VERY good -> SDcard tape interface.
It's published on youtube by "Euphoric Oric" (everyone can guess who's the author!).
The other video: Cartouche Oric 16K is very nice idea too.
Didn't know about this project. It is great! I hope we can have all the details to build our own... :)

User avatar
iss
Flight Lieutenant
Posts: 487
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: TAP/mulator

Post by iss » Mon Nov 04, 2013 1:43 pm

Yes, it's great and the idea how to change directories on SD card is simply GENIAL!
I'll try to contact the author for more info (mainly about adjusting signal levels from micro controller to tape input) else it will be fun to write firmware - just tap2wav and some logic :).

User avatar
ibisum
Squad Leader
Posts: 861
Joined: Fri Apr 03, 2009 8:56 am

Re: TAP/mulator

Post by ibisum » Mon Nov 04, 2013 6:09 pm

One thing I don't understand is what the /GAMES part does in the CLOAD command in that video .. was that a normal part of Oric basic, and I've just learned something new, or is it an extension/hack?

User avatar
Dbug
Site Admin
Posts: 2357
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: TAP/mulator

Post by Dbug » Mon Nov 04, 2013 6:36 pm

Great find! I did not know of either this cartridge or sd card tape players.
ibisum wrote:One thing I don't understand is what the /GAMES part does in the CLOAD command in that video .. was that a normal part of Oric basic, and I've just learned something new, or is it an extension/hack?
As far as I understand it's a hack to make the extension detect the name as a command?

User avatar
iss
Flight Lieutenant
Posts: 487
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: TAP/mulator

Post by iss » Mon Nov 04, 2013 6:50 pm

Exactly this is the GENIAL approach to interact with SD which contains directories (so you can sort games, utilities, etc. in different subdirectories).
The problem is in the fact that communication is only 'one-way' - from SD-interface to Oric.
This was big puzzle for me too, until I understand it - just like real magic trick :).
And here is the reveal of the trick:
- suppose on SD card are directories "UTIL" and "GAMES"
- to select "GAMES" you type CLOAD"/GAMES"
- internal relay switches-on (or by button press on SD board) and SD-interface start playing tap's which follow the directories in SD
- this tap's are generated on-the-fly having in the header the name of directory and simple auto-starting program:
10 PRINT "DIRECTORY CHANGED"
(Probably the program is machine code but for the example let use BASIC:) )
- all tap's are played one per directory (i.e TEST.tap...GAMES.tap... as from real tape)
- ORIC says 'Searching ..."
- when the selected directory comes (i.e "/GAMES") ORIC loads it and turn internal relay off
- SD-interface stop to transfer next tap's with directory names - holding GAMES as current directory!
- ORIC executes above program and "DIRECTORY CHANGED" message appears :))

Hope my explanation is clear :)
Other guesses or solutions for this SD-card-sudoku ?

User avatar
kenneth
Flying Officer
Posts: 179
Joined: Fri Nov 26, 2010 9:11 pm
Location: France PdD
Contact:

Re: TAP/mulator

Post by kenneth » Mon Nov 04, 2013 10:17 pm

@iss: I understood :wink:
It's a good idea to use the remote relay to "communicate" with the SDcard device.
Maybe the printer port can be useful for a bidirectionnal link?
The power source must be connected somewhere else to avoid internal oric damage from error of the pinout connecting.

User avatar
iss
Flight Lieutenant
Posts: 487
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: TAP/mulator

Post by iss » Tue Nov 05, 2013 12:25 am

Yes, printer port is very useful. This is what I tried to 'advertise' months ago here, but no big interest.
My idea was to load from emulated cassette only short bootstrap code and than use parallel port for fast bi-directional transfer, keeping CLOAD/SAVE fully emulated too.
For now only the idea grows, I hope to find some free time soon for this project.

User avatar
ibisum
Squad Leader
Posts: 861
Joined: Fri Apr 03, 2009 8:56 am

Re: TAP/mulator

Post by ibisum » Tue Nov 05, 2013 9:52 am

I enjoy the hacks - but I can't help feeling I'd prefer it if Cumulus returned and we just got plain 'ol, 100% compatible hardware emulation - with an external interface for selecting .TAP and .DSK files ..

But either way, great that there are more minds on this problem! I look forward to one day having the ultimate Oric setup: one SD card full of every software for the Oric, ever, a simple interface to access it, and an afternoon of free time to introduce my 6 year old to the wonders of Oric computing .. ;)

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest