More hardware for CPC: by
@abalore !!! - Stay Tuned !!! :o
That's the one you posted about the other day, right?
Quote from: Gryzor on 18:59, 20 February 24That's the one you posted about the other day, right?
what ? :o
Quote from: XeNoMoRPH on 19:01, 20 February 24Quote from: Gryzor on 18:59, 20 February 24That's the one you posted about the other day, right?
what ? :o
Ah no that wasn't it, sorry 😁
Any idea if this will be using the same interface as the M4? That would then make 5 compatible devices (this, SF3, RSF3, RSF3-Lite, M4) and a bunch of software that already works for this, which would be really great :)
Quote from: Cwiiis on 10:42, 21 February 24Any idea if this will be using the same interface as the M4? That would then make 5 compatible devices (this, SF3, RSF3, RSF3-Lite, M4) and a bunch of software that already works for this, which would be really great :)
Currently the board accepts AT commands and a couple of low level calls to set the buffer addresses, AT commands is the most standard way to manage WiFi devices, so it should be the common standard actually IMHO. But anyway, I guess the M4 interface is a layer on top of the AT protocol, so shouldn't be hard to implement.
My final goal is to use the board to connect to a server where I can get a list of games and download and run them remotely, in either the CPC RAM or in the Play2CPC VROM for larger games (cartridges). I did several working experiments on that subject, with good results, loading time for a regular CPC game is around 0.5 seconds and for large cartridges (512K) it's around 3.5 seconds.
In any case it's in an early stage of development and I have no plans to offer it to the public at this moment. I have also built a version for the printer port, cheaper to build but slower (max 5 kbytes/sec). I think the printer port is under exploited, and many interesting things can be done with it.
Do know the Assembly64 <> Ultimate integration on C64? One can easily run a meta-search on all known repositories for demos, games, intros, music etc on the C64 itself and mount or run them on the fly.
Something similar would be awesome for CPC as well..
Quote from: dodogildo on 11:20, 21 February 24Do know the Assembly64 <> Ultimate integration on C64? One can easily run a meta-search on all known repositories for demos, games, intros, music etc on the C64 itself and mount or run them on the fly.
Something similar would be awesome for CPC as well..
That's exactly the plan.
Here a small test of downloading and running a game from WiFi
What is the M4 expansion lacking? What can this new device do in addition?
Quote from: abalore on 11:54, 21 February 24Here a small test of downloading and running a game from WiFi
Could this device be used with FUJINET, if the FUJINET interface was created?
This would be an the ideal hardware interface for the FUJINET project.
https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/fujinet-for-the-cpc/
Quote from: GUNHED on 16:55, 21 February 24What is the M4 expansion lacking? What can this new device do in addition?
Why do you think should it add anything to the M4?
It's a WiFi board. Period. I need it for my experiments, and it's much cheaper to build than the price of a M4.
I don't need massive storage, SD reader, ROM management, cartridge emulation, etc.
Quote from: overange on 17:54, 21 February 24Quote from: abalore on 11:54, 21 February 24Here a small test of downloading and running a game from WiFi
Could this device be used with FUJINET, if the FUJINET interface was created?
This would be an the ideal hardware interface for the FUJINET project.
https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/fujinet-for-the-cpc/
You can connect to any Internet based service just implementing the right protocol in software. It's not a matter of hardware. The board is fast enough to play full screen streamed video and audio in the CPC. I'm not very familiar with the Fujinet project, but I guess the speed wouldn't be an issue.
Sound like an interesting board and project.
You're sending a regular AT command via character byte OUT to that board?
Keep us informed!
Quote from: HAL6128 on 18:53, 21 February 24Sound like an interesting board and project.
You're sending a regular AT command via character byte OUT to that board?
Keep us informed!
Yes, 1 OUT = 1 character written, 1 IN = 1 character read. The CPLD makes internally the parallel to serial conversion and viceversa within the time of an instruction.
In fact, to write I do " outi : inc b : and to read " ini : inc b "
So I can unroll the loops to get faster speeds. One write or read operations takes 6 T, updating automatically HL for next byte.
Quote from: abalore on 18:38, 21 February 24Quote from: overange on 17:54, 21 February 24Quote from: abalore on 11:54, 21 February 24Here a small test of downloading and running a game from WiFi
Could this device be used with FUJINET, if the FUJINET interface was created?
This would be an the ideal hardware interface for the FUJINET project.
https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/fujinet-for-the-cpc/
You can connect to any Internet based service just implementing the right protocol in software. It's not a matter of hardware. The board is fast enough to play full screen streamed video and audio in the CPC. I'm not very familiar with the Fujinet project, but I guess the speed wouldn't be an issue.
To get a CPC version of FUJINET working with your adapter would be a fantastic pairing :)
Hi
@abalore , very interesting!
What Wifi module are you using? Something like the ESP8266 or ESP32?
I remember that Octoate made some experiences with a CPC Minibooster connected to a ESP8266 Wifi module, and the results looked very similiar to yours.
Quote from: Prodatron on 11:34, 22 February 24Hi @abalore , very interesting!
What Wifi module are you using? Something like the ESP8266 or ESP32?
I remember that Octoate made some experiences with a CPC Minibooster connected to a ESP8266 Wifi module, and the results looked very similiar to yours.
Hello, it's called WizFi360, from the web site:
"
WizFi360 is based on the W600 chip which features ARM Cortex-M3 with 1MB on-chip flash and freeRTOS kernel."The module is cheap and features a SPI port rated at 50 mpbs, but in practice it reach 20 mbps (my project runs at 8 or 10 mpbs depending on the clock attached to the CPLD). It could run faster but it's not required because the bottleneck being the Z80.
Thanks for the info!
- would it be possible to open multiple connections at the same time?
- it will probably buffer incoming data, what is the buffer size?
So if I understand it correctly the hardware is easy to build?
Quote from: Prodatron on 13:34, 22 February 24Thanks for the info!
- would it be possible to open multiple connections at the same time?
- it will probably buffer incoming data, what is the buffer size?
So if I understand it correctly the hardware is easy to build?
Yes, it's possible to open multiple connections, on both TCP and UDP, and it has an integrated web server too if needed. It can act as WiFi station, access point, or both simultaneously. The TCP buffer is 21900 bytes, and you can set a buffer for SSL of 2048 or 4096 bytes.
Regarding the hardware, you can use the module in UART or SPI mode. So you need something with a UART (I think Usifac and derivates have it), for SPI you can use a microcontroller, FPGA, CPLD, or nothing. In my printer port version of the board, I just wire the SPI pins to the parallel port pins (with voltage level conversion) and do the SPI protocol in software.
The advantage of SPI is that it's many times faster than UART which is max 2 mbps.
That "raw" SPI connection through the printer port sounds cool and old school.
With a further microcontroller you could have already used a M4. So no need :)
Nice project.
Quote from: abalore on 14:21, 22 February 24Yes, it's possible to open multiple connections, on both TCP and UDP, and it has an integrated web server too if needed. It can act as WiFi station, access point, or both simultaneously. The TCP buffer is 21900 bytes, and you can set a buffer for SSL of 2048 or 4096 bytes.
Sounds really good. I would like to write a SymbOS Network Daemon driver for it, then around a dozend apps would already be available.
I wonder about your plans for this.
As you don't want to make a batch by your own: Will you make the hardware open source, so maybe another one could do a batch?
Quote from: Prodatron on 21:57, 22 February 24Quote from: abalore on 14:21, 22 February 24Yes, it's possible to open multiple connections, on both TCP and UDP, and it has an integrated web server too if needed. It can act as WiFi station, access point, or both simultaneously. The TCP buffer is 21900 bytes, and you can set a buffer for SSL of 2048 or 4096 bytes.
Sounds really good. I would like to write a SymbOS Network Daemon driver for it, then around a dozend apps would already be available.
I wonder about your plans for this.
As you don't want to make a batch by your own: Will you make the hardware open source, so maybe another one could do a batch?
Why not? I will shape the project to its final form and then we'll see.
I finally broke the project into two different ones.
One SPI adapter for CPC, and one WIFI module that plugs into the SPI adapter. So the SPI adapter can be user for any other SPI device.
New video using the WiFi board to play a telnet game (MUD). Upper panel is the game terminal, lower panel is the AT console. At the bottom it's the command input, all asynchronous.
The modular version: SPI card + Wifi module
New low-profile gold plated connectors, check the difference.
Starting to build the free boards for Amsteam collaborators.
I estimated a price for the boards, all boards have commercial grade componentes from Mouser, RS Amidata or other European and USA official resellers, brand new original CPLDs, vishay capacitors, high quality connectors, etc.
Only in components and PCB each board has a cost of more than 25 euro (probably it would be around 10 with Aliexpress stuff), plus the manual assembly work and material waste, solder wire, tooling, etc. I purchased a new oscilloscope/digital analyser just for this project. And of course the months devoted to the hardware, software and firmware development, plus the investment in previous prototypes.
I feel necessary to explain this to people not familiarised with electronic development, so everyone understand for once that I and my close collaborators, like
@TotO don't make a life of selling Amstrad stuff. If we wanted that, we'd make it for the much bigger C64, Spectrum or NES communities.
That said, my estimated selling price for the boards is:
SPI port board in MX4 format........ 40 euro plus shipping
WiFi nodule................................. 40 euro plus shipping
Only one shipping for both ordered together.
And now...
the order list is officially open!Best regards,
Abalore
Edit: P.D.: I respect all other device developers that actually want to make money, they have 100% the right to do it.
Hello Abalore, :D
First !
Count me 1 SPI port board + 1 Wifi module please.
The continuation in PM for payment and shipping. ;)
Count me in for both cards, pls.
Will PM.
Great that you offer this!
Please count me in for both boards (SPI + WIFI) as well!
Hi ,
Count me 1 SPI port board + 1 Wifi module please,
Please both boards (SPI + WIFI) for me as well!
And me, PM sent.
Thank you.
Richard.
First units built for
@eto ,
@trocoloco and
@Nich
I am also interested (SPI + WiFi module), thank you very much!
Hi
Please both boards (SPI + WIFI module) for me as well.
Thank you.
The Ethernet module arrived!
What is the main difference between the spi adapter and minibooster?
Quote from: zhulien on 19:31, 12 June 24What is the main difference between the spi adapter and minibooster?
This SPI port is around 10X faster.
By the way
@poulette73 @dodogildo @Prodatron @Titi @HAL6128 @Richard_Lloyd @Poliander @hsimpson your SPI + Wifi combos are ready if you are still interested, if you need also a ROMBox to load the Amsteam firmware they are also available. Please send PM for details.
PM sent :)
PM sent
PM sent
Forgot to mention, there is also a cartridge emulator board to play biggest games, if someone wants to get it now and save some shipping, it is 25 euro.
I created a new CPC Wiki page for the ROMBox, with instructions and software to download:
https://www.cpcwiki.eu/index.php/Amsteam_ROMBox
Quote from: abalore on 18:22, 13 June 24I created a new CPC Wiki page for the ROMBox, with instructions and software to download:
https://www.cpcwiki.eu/index.php/Amsteam_ROMBox
The file link is broken.
How much is the ROM board?
When I want to download "Flash programming utility", I have an error :
Login required
Please log in to upload files.
I have already downloaded many files from CPCWiki without having to log in... ???
Of course, my CPC Wiki forum account and password are not working.
And I don't want to create another account on CPC Wiki again...
Is there a way to provide this DSK file in a simpler way ?
Quote from: poulette73 on 21:58, 13 June 24When I want to download "Flash programming utility", I have an error :
Login required
Please log in to upload files.
I have already downloaded many files from CPCWiki without having to log in... ???
Of course, my CPC Wiki forum account and password are not working.
And I don't want to create another account on CPC Wiki again...
Is there a way to provide this DSK file in a simpler way ?
Fixed
Quote from: eto on 20:45, 13 June 24Quote from: abalore on 18:22, 13 June 24I created a new CPC Wiki page for the ROMBox, with instructions and software to download:
https://www.cpcwiki.eu/index.php/Amsteam_ROMBox
The file link is broken.
How much is the ROM board?
Bundled with SPI + Wifi is 20 euros more. Standalone is 40 euros.
Quote from: abalore on 00:10, 14 June 24Quote from: poulette73 on 21:58, 13 June 24When I want to download "Flash programming utility", I have an error :
Login required
Please log in to upload files.
I have already downloaded many files from CPCWiki without having to log in... ???
Of course, my CPC Wiki forum account and password are not working.
And I don't want to create another account on CPC Wiki again...
Is there a way to provide this DSK file in a simpler way ?
Fixed
Thank you !! :)
It works 8)
Can I get SPI + WiFi + Ethernet module (all there is!) too? <3
Quote from: ikari on 14:54, 08 October 24Can I get SPI + WiFi + Ethernet module (all there is!) too? <3
Hello, here is the available hardware for Amsteam:
- SPI card
- WiFi module
- Ethernet module- SD Card module- ROM Box
- Cartridge emulator
-
Sound cardthat said, some clarifications:
Ethernet module, SD Card module and sound card don't have the software ready yet, so you can have them but not use them.
The cartridge emulator card is required to play multi-load games (Academy, Agent X II, The Blues Brothers, R-Type, etc), as well as games released in cartridge.
The ROM Box is needed to have the Amsteam RSX commands, unless you have another hardware capable of adding ROMs to the system.
The sound card is not used in any game yet.
Price for all cards and modules is fixed to 40e. but there are the following packs:
- SPI + Wifi + ROMBox + Cartridge emulator _______ 140e
- SPI + Wifi + ROMBOX __________________________ 120e
- SPI + WiFi _____________________________________ 80e
I don't recommend to get the Ethernet and SD Card modules yet.
If you are interested, please contact in private message.
Please don't burn me for this blasphemous questions...
The M4 expansion has also WiFi. And the SF3 has WiFi too. ...
Could your software be used with the SF3 or M4 expansions too?
What are the technical differences to the project described in this thread.
Sorry for asking, I'm a CPC guy not a WiFi guy ;) :)
Quote from: GUNHED on 19:21, 08 October 24Please don't burn me for this blasphemous questions...
The M4 expansion has also WiFi. And the SF3 has WiFi too. ...
Could your software be used with the SF3 or M4 expansions too?
What are the technical differences to the project described in this thread.
Sorry for asking, I'm a CPC guy not a WiFi guy ;) :)
Any of those devices would work with Amsteam with a custom ROM, sadly I don't have any of them to develop the software.
The technical difference is this project is a SPI interface that supports not only wifi, but any SPI compatible device. And probably the fastest available: 1 IN / OUT = 1 byte.
Quote from: abalore on 19:55, 08 October 24Quote from: GUNHED on 19:21, 08 October 24Please don't burn me for this blasphemous questions...
The M4 expansion has also WiFi. And the SF3 has WiFi too. ...
Could your software be used with the SF3 or M4 expansions too?
What are the technical differences to the project described in this thread.
Sorry for asking, I'm a CPC guy not a WiFi guy ;) :)
Any of those devices would work with Amsteam with a custom ROM, sadly I don't have any of them to develop the software.
The technical difference is this project is a SPI interface that supports not only wifi, but any SPI compatible device. And probably the fastest available: 1 IN / OUT = 1 byte.
Thanks a lot for explaining. Good to know that there is a SPI feature! :)
How does the fast IN/OUT work?
Quote from: GUNHED on 12:06, 09 October 24Quote from: abalore on 19:55, 08 October 24Quote from: GUNHED on 19:21, 08 October 24Please don't burn me for this blasphemous questions...
The M4 expansion has also WiFi. And the SF3 has WiFi too. ...
Could your software be used with the SF3 or M4 expansions too?
What are the technical differences to the project described in this thread.
Sorry for asking, I'm a CPC guy not a WiFi guy ;) :)
Any of those devices would work with Amsteam with a custom ROM, sadly I don't have any of them to develop the software.
The technical difference is this project is a SPI interface that supports not only wifi, but any SPI compatible device. And probably the fastest available: 1 IN / OUT = 1 byte.
Thanks a lot for explaining. Good to know that there is a SPI feature! :)
How does the fast IN/OUT work?
It depends on the level of unrolling, example:
; Routine to read 1024 bytes from SPIld a,32_read_loopini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc bini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc bini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc bini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc bdec ajp nz,_read_loopthat achieves around 200 KBytes/sec (1.6 Mbps). Same for writting (with
outi instead of
ini)
Quote from: abalore on 12:23, 09 October 24Quote from: GUNHED on 12:06, 09 October 24Quote from: abalore on 19:55, 08 October 24Quote from: GUNHED on 19:21, 08 October 24Please don't burn me for this blasphemous questions...
The M4 expansion has also WiFi. And the SF3 has WiFi too. ...
Could your software be used with the SF3 or M4 expansions too?
What are the technical differences to the project described in this thread.
Sorry for asking, I'm a CPC guy not a WiFi guy ;) :)
Any of those devices would work with Amsteam with a custom ROM, sadly I don't have any of them to develop the software.
The technical difference is this project is a SPI interface that supports not only wifi, but any SPI compatible device. And probably the fastest available: 1 IN / OUT = 1 byte.
Thanks a lot for explaining. Good to know that there is a SPI feature! :)
How does the fast IN/OUT work?
It depends on the level of unrolling, example:
; Routine to read 1024 bytes from SPI
ld a,32
_read_loop
ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b
ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b
ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b
ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b:ini:inc b
dec a
jp nz,_read_loop
that achieves around 200 KBytes/sec (1.6 Mbps). Same for writting (with outi instead of ini)
Thanks, that's the way I do it with FutureOS too (reading from HD20 f.e.). Thanks for you answer. :)