Author Topic: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)  (Read 9881 times)

0 Members and 1 Guest are viewing this topic.

Offline 260Z

  • Supporter
  • CPC664
  • *
  • Posts: 111
  • Country: au
  • Liked: 57
  • Likes Given: 155
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #125 on: 13:20, 14 June 19 »
Howdy @ikonsgr and all  :)


Received my Serial Interface today , and I'm absolutely loving it. Fantastic piece of hardware.


Before I discuss a couple of quirks , I'll fully disclose the setup I'm running , just in case it's somehow relevant. Plus anyone else running this setup, or similar, should be confident that this will run on their system.


464 -> MotherX4 Board + @revaldinho memory expansion 512kb + USIFAC -> Rombo Redux Deluxe board ( numerous roms ) -> DDi-1 with Parados Rom -> x2 FD-1 Drives


Firstly , Direct Load and PC2CPC works perfectly. But the Dsk2Disk utility , I'm assuming this has been programmed for Basic 1.1??? . As line 1015 CLEAR INPUT , upset my lowly 464...lol.  All good though as I simply deleted this line and it appeared to function perfectly.

Edit : Just realised the impact of removing CLEAR INPUT. Will look into the 1.0 equivalent.

Secondly , but much more sadly :( , the windows application refused to recognise the R-Type 128k DSK , saying it wasn't AMSDOS compatible. This is only an assumption , as I don't know for certain , but I'm assuming that R-Type is designed for Parados Formats ?? . If this is the case , is it possible to have support for Parados Formatted disks included ??


The final point is trivial really , as I could probably program this myself into the BAS flle , but an option to select the destination drive ( A or B ) in DSK2DISK and PC2CPC would be nice :)
 
But otherwise I'm loving what you've done here @ikonsgr . I can write files directly to my disk drives from my PC  :D


Between you, @revaldinho and @The Equalizor its been a good couple of weeks  ;D


Cheers,
Rob
« Last Edit: 15:18, 14 June 19 by 260Z »

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #126 on: 20:43, 21 June 19 »
Wow, that's fantastic, so direct load is working on 464 after all!  :D
About the "clear input" problem you mentioned, try it to replace it with: CALL &BB03 ,this is the reset keyboard routine that also flushes keybaord buffer (maybe i'll include it in the assembly program so there will be no need for this in BASIC program at all).
About rtype 128, i checked it, and it seems that the 3" version (which contains two dsk images of 180k) contains some tracks with 10sectors which is why you get the "non amsdos" error (normal tracks have 9 sectors).
 BUT, i've already developed a  more versatile version of dsk2disk, which supports many non standard images with variable sectors/track, variable gap#3 length, variable sector sizes, and even more than 40 tracks!. With that, you will be able to write almost all dsk images, except some copy protected games with strange "weak sectors" locks, but fortunately i think all of these games can be found in unprotected dsk versions too! ;) (btw i've just used this new version to transfer the rtype 128 to a 3.5" disk and worked perfect!  ;D )

I'm also in a process of completely redesigning the Wifi functionality in order to avoid the need of giving AT commands all the time, and instead, have a direct WiFi communication like in serial/bluetooth mode (passthrough mode/transparent transmission). Unfortunately this requires a completely different connection model ,where TCP server will be on the PC and wifi module will be connected to it (the opposite of how is currently working), so it might need some time to finish it.

« Last Edit: 21:07, 21 June 19 by ikonsgr »

Offline 260Z

  • Supporter
  • CPC664
  • *
  • Posts: 111
  • Country: au
  • Liked: 57
  • Likes Given: 155
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #127 on: 02:42, 22 June 19 »
......
 BUT, i've already developed a  more versatile version of dsk2disk, which supports many non standard images with variable sectors/track, variable gap#3 length, variable sector sizes, and even more than 40 tracks!. With that, you will be able to write almost all dsk images, except some copy protected games with strange "weak sectors" locks, but fortunately i think all of these games can be found in unprotected dsk versions too! ;) (btw i've just used this new version to transfer the rtype 128 to a 3.5" disk and worked perfect!  ;D )
....


You're a bloody legend mate....  ;D


Just having my morning coffee, thinking about what I'll be doing with my day..... Giving this a test run is number one on my list now  :D

Edit : I see the new version isn't uploaded yet, all good :)

Cheers,
Rob
« Last Edit: 03:57, 22 June 19 by 260Z »

Offline chrisgreen

  • CPC464
  • **
  • Posts: 17
  • Country: gb
  • Coming back to the CPC after a 20+ year absence
    • chrisgreen.co.uk
  • Liked: 4
  • Likes Given: 1
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #128 on: 13:15, 29 June 19 »
Just a quick note to say thanks to @ikonsgr - got my serial interfaces today - extremely happy with them.
Looking forward to having a good play with them over the weekend and getting my machines talking to each other, as well as to my PC.

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #129 on: 17:18, 03 July 19 »
Anybody tried any UART modules with USIFAC by now, such as Catalex MP3 player, or FM Radio module, or MIDI UART board?
I had ordered 2 FM modules a while ago but there are still on the ship from China.

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #130 on: 13:47, 04 July 19 »
Finally, a new MAJOR update is available:

- Complete redesign of the WiFi functionality! Now PC program runs the TCP server,enabling a direct passthrough communication which makes Wifi usage much more stable and easy to implement.
- ALL functions (except direct load) can now be used with WiFi modules too! (previous version didn't support dsk image transfer with wifi modules and CPC to PC file transfer was a bit buggy too)
- Image transfer utility now supports many "non standard" images, with variable sectors/tracks, variable gap#3 length, variable sector sizes!
- Add a new small program (setservr) for easily configure WiFi module to act as TCP server, for creating Amstrad CPC WAN/LAN networks!
- Added ~20 new games (115 games in total), in the certified "direct load" game list.
- Update of the user's manual, add much more detail infomration on configure and  usage of WiFi modules!

You can find all updates here (or in the same link on the first page)
« Last Edit: 18:10, 04 July 19 by ikonsgr »

Offline 260Z

  • Supporter
  • CPC664
  • *
  • Posts: 111
  • Country: au
  • Liked: 57
  • Likes Given: 155
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #131 on: 03:49, 05 July 19 »
Great work!!. You've made my year.... Finally, I can run the Batman Demo on my 464  :D


The demo also works flawlessly, on floppy disc, from beginning to end. Very pleased.
EDIT : Excluding that final clown image, that upsets my vga converter.


Keep up the good work  :D


Cheers,
Rob
« Last Edit: 04:14, 05 July 19 by 260Z »

Offline Fabrizio Radica

  • Supporter
  • CPC664
  • *
  • Posts: 135
  • Country: it
  • Amiga and CPC6128 User
    • Retroacademy
  • Liked: 128
  • Likes Given: 122
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #132 on: 15:22, 05 July 19 »
Anybody tried any UART modules with USIFAC by now, such as Catalex MP3 player, or FM Radio module, or MIDI UART board?
I had ordered 2 FM modules a while ago but there are still on the ship from China.
mmh... i'm really interested in MIDI UART Board...
post news when you had received (and use) it :)

I've USIfAC but i don't know how use it pratically.
Amstrad CPC6128 <3
http://www.facebook.com/groups/retroacademy/
Retroacademy.it - retrocomputing, retrogame anni &#039;70, &#039;80, &#039;90
Retroacademy.it - retrocomputing, retrogame anni '70, '80, '90

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #133 on: 19:27, 05 July 19 »
mmh... i'm really interested in MIDI UART Board...
post news when you had received (and use) it :)

I've USIfAC but i don't know how use it pratically.

I think this might help!  ;)

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #134 on: 19:51, 05 July 19 »
I think this might help!  ;)


@ikonsgr unless you add the MIDI BAUD rate 31250 to the firmware, it won't do MIDI.
I just figured that out with LambdaSpeak 3 Serial Interface - had to change the firmware to support 31250 for that. 
I guess the PIC can do 31250?


THat might be helpful to figure out the settings for UART config registers:
http://www.barrysoft.it/blog/midi-with-pic-ausart.html
« Last Edit: 19:54, 05 July 19 by LambdaMikel »

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #135 on: 19:55, 05 July 19 »

@ikonsgr unless you add the MIDI BAUD rate 31250 to the firmware, it won't do MIDI.
I just figured that out with LambdaSpeak 3 Serial Interface - had to change the firmware to support 31250 for that. 
I guess the PIC can do 31250?

Never tried that specific baud rate, but most probable it can. It's very easy to add this speed to the code and selecting it ,by a simple, let's say: OUT &FBD1,20
Of course, you will need to reflash the pic with the new program.

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #136 on: 19:58, 05 July 19 »
Never tried that specific baud rate, but most probable it can. It's very easy to add this speed to the code and selecting it ,by a simple, let's say: OUT &FBD1,20
Of course, you will need to reflash the pic with the new program.


That means the MIDI BAUD rate is already supported by USIFAC? Then it should work out of the box!

EDIT: oh, OK, I need to reflash it... I see.

I guess I was suggesting for you to change the firmware such that customers can use MIDI BAUD rate out of the box.  ;)  Just an idea, you are welcome  ;D
« Last Edit: 20:00, 05 July 19 by LambdaMikel »

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #137 on: 20:03, 05 July 19 »

That means the MIDI BAUD rate is already supported by USIFAC? Then it should work out of the box!


EDIT: oh, OK, I need to reflash it... I see.


I guess I was suggesting for you to change the firmware such that customers can use MIDI BAUD rate out of the box.  ;)
Of course i can (i have already 10 different speeds supported, where you can select them "on the fly" by giving simple OUT &FBD1,x commands), but for all of you who have already a usifac, you will need to re-program the pic (or send you another PIC with the new program  ::) )

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #138 on: 20:04, 05 July 19 »
Of course i can (i have already 10 different speeds supported, where you can select them "on the fly" by giving simple OUT &FBD1,x commands), but for all of you who have already a usifac, you will need to re-program the pic (or send you another PIC with the new program  ::) )


I understand that. I was just bringing to your attention that you need the baud rate 31250 for MIDI to work; I saw in the  USIFAC manual and  menus that it is not there yet. I didn't know that until I tried that with LS 3 serial interface, so I wanted to share that information with you such that you can provide a more useful product to customers.


AGain, you are welcome!


No need for a new PIC for my 2, I can do it myself. Thanks for offering to send new PICs.
« Last Edit: 20:10, 05 July 19 by LambdaMikel »

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #139 on: 20:36, 05 July 19 »
Done! The speed of 31250 can be selected by giving a simple OUT &FBD1,20
You want me to send you the new hex and give it a try?  ;D

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #140 on: 20:45, 05 July 19 »
Done! The speed of 31250 can be selected by giving a simple OUT &FBD1,20
You want me to send you the new hex and give it a try?  ;D


Sure! Thank you, super fast service!

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #141 on: 20:57, 05 July 19 »

Sure! Thank you, super fast service!

Here it is.
From now on, i will flash all new boards with this version,  and i'll upload the hex file to the "official" link too!  ;)
« Last Edit: 21:01, 05 July 19 by ikonsgr »

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #142 on: 21:05, 05 July 19 »
Btw, anyone with another "special speed" request? I can add as many custom speeds as you like!  :)

Btw,i just noticed that 31250 is a speed that uart interface can match EXACTLY, all other speeds are having some small errors (usually less than 1%)in actual speed, maybe that's why it's selected for the MIDI in order to have absolute synchronization?  ::)
« Last Edit: 21:54, 05 July 19 by ikonsgr »

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #143 on: 13:30, 06 July 19 »
LambdaMikel,i think you will find this interested:
http://www.hobbytronics.co.uk/usb-host-midi

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #144 on: 04:55, 08 July 19 »
Thanks for the link!
USB MIDI is cool, but most of my synths are old style and have MIDI DIN (I have a USB -> DIN MIDI converter box though).

So I like this one, which is as minimal as it gets:
https://ubld.it/products/midi-breakout-board/
Unfortunately, it is no longer available on Amazon, but you can get it here:
https://www.tindie.com/products/ubldit/midi-breakout-board/?_ga=2.246732166.343271136.1562550881-1119099813.1562130274

I mean, the Arduino MIDI shields also work, but they are too bulky really. 

Offline GUNHED

  • 6128 Plus
  • ******
  • Posts: 1.366
  • Country: de
  • Reincarnation of TFM
    • FutureOS - The quickest OS for the CPC and Plus
  • Liked: 768
  • Likes Given: 1642
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #145 on: 23:47, 08 July 19 »
Btw, anyone with another "special speed" request? I can add as many custom speeds as you like!  :)


Great for future developments.  :) :) :)
http://futureos.de --> Get the revolutionary FutureOS (Recent update: 2019.08.07)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2019.08.14)

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #146 on: 10:52, 09 July 19 »
Thanks for the link!
USB MIDI is cool, but most of my synths are old style and have MIDI DIN (I have a USB -> DIN MIDI converter box though).
So I like this one, which is as minimal as it gets:
https://ubld.it/products/midi-breakout-board/
Unfortunately, it is no longer available on Amazon, but you can get it here:
https://www.tindie.com/products/ubldit/midi-breakout-board/?_ga=2.246732166.343271136.1562550881-1119099813.1562130274
I mean, the Arduino MIDI shields also work, but they are too bulky really.

That's very nice! So,by getting this MIdi adapter and connect it to usifac, you will be able to use amstrad with a synthesizer, right?
 Of course you will need some software too for this,in the end everything goes down to send and receive bytes, which can be very easily done (either in BASIC or assembly) with simple inp and out commands, you think you will be able to develop the program for this?

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #147 on: 18:31, 10 July 19 »
That's exactly right, @ikonsgr
But I am afraid I'll try it on LambdaSpeak 3 Serial Interface first; when that works well, I'll port the MIDI CPC software to USIfAC, but that is the plan, yes!

Offline ikonsgr

  • CPC6128
  • ****
  • Posts: 285
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 199
  • Likes Given: 35
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #148 on: 18:58, 13 July 19 »
Now, Enough of the utilities!   :)

I've just upload a variant of  the classic pong game (along with ~dozen of more games, tested with direct load, 130+ games in total), which utilizes the serial interface!
I've named it "pong-lan" and it's a 2 player game, only that... each player is playing in its own amstrad cpc!
It's a simple basic game which you can find here, you can run/load it directly using the direct load function. Note that using Wifi modules, it's possible to play it through internet, and with a couple of modifications i even tried it  with... an "old friend", a Commodore 64!!!   :o
Maybe the first network inter-8bit-computer game???  :D
« Last Edit: 19:13, 13 July 19 by ikonsgr »

Offline LambdaMikel

  • 6128 Plus
  • ******
  • Posts: 1.628
  • Country: us
    • Homepage
  • Liked: 874
  • Likes Given: 667
Re: Universal Serial Interface for Amstrad CPC (a.k.a USIfAC)
« Reply #149 on: 09:52, 14 July 19 »
Network PONG LAN PARTY??? Yeah  8)