Author Topic: USIfAC II:Convert a PC or USB stick to Amstrad HDD,access dsk's,and many more!  (Read 36769 times)

0 Members and 1 Guest are viewing this topic.

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
For a "Quick Start Guide" see at the end of post!


 Universal Serial Interface for Amstrad CPC II (a.k.a. USIfAC II or... THE GOTEK KILLER FOR AMSTRAD CPC:D), is an evolution of my previous Design USIfAC (with which is fully compatible), based on a modern and much more powerful 40pin 18F47Q10@64Mhz  8bit PIC microcontroller, which offers many new amazing features:

  [ You are not allowed to view attachments ]  

  • Receive buffer of 3100bytes (~3,5times than of previous interface)
  • Serial port speeds of up to 1.065.000bps!
  • Full 16bit address decoding,
  • AMSDOS and PARADOS ROM emulation,
  • 765 Floppy Disk Controller emulation,
  • Use a Usb storage device, by utilizing a cheap CH376 usb host module,
  • Many RSX commands that offer full access of PC Hard Drive or a usb storage drive, for change/create/delete directories and load/save/delete programs/games (even Ascii files)!
  • Incredible loading speeds of up to ~23-24kb/sec (more than 5 times faster ,than a usual speed of a gotek/floppy disk drive)!
  • Full read/write access of DSK images of  both AMSODS and PARADOS  formats!
  • Access up to four DSK images and choose them "on the fly", to support all multi-image Games!
  • Load SNA snapshot files!
  • Extra RSX commands to copy files from/to floppy disks,transfer DSK images to floppy disks, and quick Format disks!
  • 1kb EEPROM for use as extra memory or for storing/executing your own routines.
  • Includes 3 classic games, GALACHIP, PACMAN and KILLER GORILLA!
  • Equipped with a reset button and a Pause switch!
   
Here is a small presentation of the board using a usb flash drive on a CPC 6128 and Here on a CPC 464!.
(Mind also that it can be perfectly used with CPC 464 too, in fact USIfAC II might be the easiest fastest and cheapest solution for loading games on a CPC464! )

All previous utilities (like terminal, file copy, format disk etc) are now easily accessible through RSX commands, with the addition of some new RSX commands for easy setup and configure Serial port speed (|SET), Wifi/Bluetooth Modules (|WiFi,|COM), show status of Interface(|STAT), and finally, an on line help (|HELP) which gives you a short description of all RSX commands supported!
  Here you can find:
- The new User's Guide  (Amstrad CPC Serial Interface II User Guide.pdf)

- The new windows utility program ('Windows program' folder), for Direct connection with a PC, that have some improvements too (for example, direct mode now works with WiFi module too,and program have more stable operation)

- A File manager (filemanager.zip) for easy manage & loading files/dsk images/snapshots! Copy contents of the folder to usb flash drive root dir,and give to Basic prompt: RUN"FM".  Select 'Y'/'y' (Check with |STAT if you board has rev_4c firmware or newer, and then you can also choose "n"/"N"). Use keys:
               - Left-Right arrows for changing pages.
               - Up/Down arrows for seeking file/dir names into each page.
               - <Return> for taking action: If selected name is a directory it will move into it, if it's a "DSK" image it will give you a catalogue of the disk image(CPC6128/664) or it will reset (CPC464) and then  you can access image by giving "CAT".Finally, if it's a file,it will try to execute it.
                - <SPACE> Moves up a directory, if you are inside a sub folder you can also use "." or ".." at the top of first page.

- A utility (disk2image.zip) for creating disk images from old Floppy disks, in just 40 seconds!. You can use it with older and newer boards, just extract the zip file to usb stick and run "disk2img.bas". You will be asked to give a disk image name (you can use the included TEMP.DSK or any other standard DATA format dsk image). For root directory you should also add a  '/' in front of name, e.g.: '/TEMP.DSK', but if you use a folder, you don't need to add '/'. Utility can transfer only standard "data format" floppy disks (40 tracks with 9sectors/track, 512 byte/sector), which i believe was, the vast majority of disks used back in the '80s.

- CPCLoad utility that offers an easy batch extraction of files from dsk images, in order to benefit from the amazing loading speeds!

- A Dsk manager for easy mounting images manually, to the 4 available slots (Multi_dsk_manager.zip)

- Basic loader creator utility (cpc_loader.zip) for creating small Basic loaders for your games/programs, and make loading process much easier:

  [ You are not allowed to view attachments ]  

It supports direct file folders, DSK images and SNA snapshot files. It will be especially useful for CPC 464, where giving RSX commands with arguments is rather tiresome (instead of giving directly commands,like with CPC 6128, you need to set first a string variable, for example, the command: |CD,"DIR",  is given as: A$="DIR":|CD,@A$)

Also, here  you can find a public list of good games that are tested,and with your help i intend to update it constantly!

And now, for the best part, i can offer:

- Stand alone Board+usb host module (if you have an MX4 or similar board) for  21 euros

- Board+usb host module+edge connector cable for 24 euros

- Board+usb host module+centronics connector cable for 27 euros

All prices include registered/tracked postage!

Anyone interested, please contact at: ikonsgr745@hotmail.com

Quick Start Guide:

You can now use file manager for easy browsing and loading games/programs from usb device, without needing to give any RSX command manually!

|HELP: Get a list of all available RSX commands with short descriptions
AMSTRAD CPC 664/6128:
For direct file access:
- |USB to enable usb host module (with firmware _2d and newer, this required only once,after initial power up)
- |CAT to get a catalogue of root directory
- |CD,"dir" to change directory to "dir"
- |CAT to get catalaogue of "dir"
Then you just give RUN"NAME" of the BAS/BIN file, exactly like you do when using a floppy disk!

For Amsdos dsk image access:
- |USB to enable usb host module
- |CAT to get a catalogue
- |MG,"name" to select the image file you want to use
- |FDC, to enable Floppy Disk Controller emulation
From now on, any CAT,LOAD,RUN,SAVE command will access dsk image!
And by giving again "|FDC" command, FDC emulation will be disabled and CAT,LOAD,RUN,SAVE commands will access again  the floppy disk drive!

For Parados dsk image access:
Follow the above first 3 steps,but then give:
- |DOS,2,for Selecting PARADOS Emulation
- |464 ,Amstrad will reset, and then you can access the PARADOS dsk image using CAT,LOAD,RUN,SAVE commands.
Note that RSX commands can't be used in this mode of operation, until you RESET Amstrad again.

AMSTRAD CPC 464:
For direct file access:
- ONLY ONCE, after first power up you should give: |464 and then press RESET button on the board No need to do it with boards sent after Feb 2021,(firmware 2c and newer,)
- |USB to enable usb host module
- |CAT to get a catalogue of root directory
- a$="dirname"
- |CD,@a$ to change directory to "dirname"
- |CAT to get catalaogue of subdir
Then you just give RUN"NAME" of the BAS/BIN file, exactly like you do when using a floppy disk!

For Amsdos dsk image access:
- ONLY ONCE, after first power up you should give: |464 and then press RESET button on the board No need to do it with boards sent after Feb 2021,(firmware 2c and newer,)
- |USB to enable usb host module
- |CAT to get a catalogue
- a$="imagename"
- |MG,@a$ to select the above disk image file
- |DOS,1,for Selecting AMSDOS Emulation
- |464, Amstrad will Reset, to enable Floppy Disk Controller & DOS emulation,
From now on, any CAT,LOAD,RUN,SAVE command will access dsk image!

For Parados dsk image access:
Follow the above first 4-5 steps,but then give:
- |DOS,2,for Selecting PARADOS Emulation
- |464 ,Amstrad will reset, and then you can access the PARADOS dsk image using CAT,LOAD,RUN,SAVE commands.
Note that RSX commands can't be used in this mode of operation, until you RESET Amstrad again.

Update Firmware:

Latest firmware release: 3/7/2021
  18F47Q10_5: https://www.dropbox.com/s/vufh5aukm3bk9wk/18f47q10_5_hex.zip?dl=0 (for all boards, older boards will not have dsk swap button functionallity)
 
List of updates since initial version (1/12/2020):
Update DSK image transfer function (RSX command:|DSK), you can now Copy DSK images to floppy disks from either a PC or usb stick (initial firmware supported  transfers only from PC)
-  Major code optimization in file access speeds on direct mode, resulting in ~20%-25% speed increase!
-  Further optimization in file loading code, witch offers ~2% extra loading speed increase!
-  Some other minor code optimizations which offer a small overall performance boost.
-  Dsk image transfer,now supports practically any format (DATA, SYSTEM, IBM, PARADOS etc), with any number of tracks (up to 80) and any sector size from 512byte up to 4096bytes.Also writing speed to disk, is increased with most images (having 9sectors/track & 10sectors/track,either in sequential or interleaved order)
- No need for performing the CPC 464 Initial procedure after first power up, now Amstrad automatically resets a couple of times after "cold start", and then you can directly give "|USB" command, exactly like for CPC 6128!
- No need to give |USB command after every Reset,but only after Amstrad's initial power up (for ALL Amstrad models, with firmware _3a and newer).
- NEW feature added: Access multiple dsk images "on the fly"! Using the new "dsk swap" button on the new board, you can "round select" up to 4 different dsk images,and be able to load ALL mutli image games/programs/demos!
- Bug fix: File extension was ommited when saving a file with full 8+3 characters (e.g. "filename.bas" was saved as "filename" without the extension)
- Get faster catalogue lists from Usb device (~25% faster on mode 1, and ~50% faster on mode 2, firmware _3 and newer)
- Amsdos/Parados Emulation is now saved into PIC's EEPROM, so Board will always "remember" your choice.
- New ability:choose if you want to Return to Usb device Root directory after Reset, just give OUT &FBD1,66 to enable or OUT &FBD1,65 to disable. Again, board will "Remember" your choice. This could be very usefull if you use the BASIC loader listings mentioned above to load  Games/programs, as after RESET, you will automatically return to Root directory, without needing to give |CDR command!  ;)
- |STAT command now shows Firmware revision and if return2root directory after Reset is enabled.
- Bug fix: When saving a file, Dsk Image name in slot 1, changed to name of saved file.
- Code optimization of Board's Rom assembly code.
- |CD & |CAT arguments, now support lower case letters too.
- New RSX Command: |SNA, for loading SNA snapshot files.
- RSX commands: |SET,|COM,|WIFI,|TER,|GALA,|PACMAN,|KGOR are now executed directly on CPC464, without needing to give "RUN" anymore!
- SNA routine now checks if Amstrad has 64k only, and loads only the 1st 64k ram dump even if snapshot file is for 128k. The reason i did this is because i noticed that the snapshot archive has a lot of game files that are 128k but actually only the 1st 64k iis used, so now you will be able to load most of the SNA files on CPC464 too.
- Minor optimization of  board's ROM code this time:replace "cp 0" with "or A" , reduce the size of hex file by dumping initial zeros of arrays & variables used in routines transferred to RAM.
- Fix a small bug in |format routine- now shows correctly  formatted track numbers.
- Fix a bug in |2PC routine when use the "invert file selection" function.
- New RSX command: |DISK,name,(1), for getting an image to a usb device from a floppy disk. Supports DATA/SYSTEM/IBM formats & up to 42 tracks. Optional '1' argument, is for auto creating new image filenames, based on the name you give, by adding a letter at the begining of the name (Aname,Bname, Cname etc), in order to take many backups in a row, by only changing disks and pressing a button.
- New RSX command: |MAN This resembles |CAT, but instead of getting the list of files/subfolders of a usb device to screen,it outputs the list of files/subfolders into RAM, starting from &2b000 and using '1' as separator,'2' to mark end, e.g.: 1NAME1NAME1NAME...1NAME2
Function is used by filemanger utility, but it would also be useful for anyone want to develop it's own programs.
- New RSX command: |UCOPY,"name1","folder path",("name2"). Copy a file into usb device, named "name1", from it's current position, into another folder. Optionally you can give "Name2" to copy file with a new name.For example,command: |UCOPY,"GAME.BAS","/DIR1/GAMES","GAME2.BAS" will copy GAME.BAS file to /DIR1/GAMES subfolder with name "GAME2.BAS". If you omit the last argument, then file will be copied with same name. Function can be used with any file, regardless the size. Actual copy speed is ~5-10kb/sec (depending on the speed of usb flash drive you are using),so large files like DSK images, will need some time to be copied.
- Better Respond & Error handling, to minimize crashes,hang-ups and erroneous messages. For example,until now, giving |CAT or |DEL without serial connection or usb device enabled, Amstrad hangs up and needed reset.Now, it will try to get respond for a couple of seconds,and then gives you an error message.Also, using |COPY or |DEL commands repeatedly, sometimes caused problems with |CAT,after.All these weird responds, should be now fixed.
- Bug Fix: Swapping dsk images didn't function in some stituations.
- Bug fix: Loading eeprom (|WROM) from usb device file,didn't work right.
- Overall optimization of Board's main ROM code.
- Update |HELP to include the new RSX commands.

Quick PIC program Guide:
- You will need a rather cheap PIC KIT 3 programmer.
- Plug the icsp connector from pickit3 to ICSP connector on the board (on some boards might need to solder the ICSP pins) or remove PIC chip from on-board socket, and place it on cheap zif socket.
- Use the MPLAB IPE, (which is part of MPLAB IDE and you can download from here), to re-program PIC (18F47Q10).
After re-programming PIC MCU, you should assign a rom number to the board, by giving: out &FBD2,5 on basic prompt, and then reset.

Finally, Here you will find a very detailed guide for updating firmware made by good CPCWiki member Richard_Lloyd (thanks Richard!)


Guide for older boards, to manually connect a usb host module on the board

The usb host module is connected easily through the 4 dupont wires (which i will also send you) as follows:
  [ You are not allowed to view attachments ]  
Board with module attached should look like this:
  [ You are not allowed to view attachments ]  

Offline XeNoMoRPH

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.094
  • Country: es
  • " ... in space no one , can hear you scream ... "
    • https://auamstrad.es/
  • Liked: 2484
  • Likes Given: 1757
I am interested in a unit, please :)
your amstrad news source in spanish language : https://auamstrad.es

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 17.007
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 4085
  • Likes Given: 7379
So you can actually run games normally from their files (not dsk images) from the mass storage? At this price it's really good!!! How about compatibility?

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
So you can actually run games normally from their files (not dsk images) from the mass storage? At this price it's really good!!! How about compatibility?

Yeap! Exactly that! Practically the usb stick is converted to a huge HDD for your amstrad! And the GREAT benefit of "getting rid" of  the dsk container is... SPEED! Loading is so fast that is actually compared to a rom board, most games load in 2-3 seconds!  :)
Check the small presentation i've made, and see for yourself!
Compatibility is very good too, most multi-file games load just fine, only "drawback" is that you can't load games that use track loaders or non standard amsdos routines. But for these, i developed a floppy controller emulation in order to access dsk images too! So in practice USIfAC II is like having an HDD flash drive disk along with a gotek drive together! ;-)
« Last Edit: 10:05, 01 December 20 by ikonsgr »

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 17.007
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 4085
  • Likes Given: 7379
Holy cow this sounds beautiful! I want one, please :)

Yeah I realise that some games will run into problems loading but I guess there are always cracked releases one could use. But if there's a solution to also access dsk images... then wow.

I did watch (most of) the presentation before rushing here to post, I didn't see anything about this last part, I now saw it's around the 2:30 mark!

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 4.007
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 3105
  • Likes Given: 1885
At this price it's really good!!!
The price of the CPC passion by not selling for the features.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
I did watch (most of) the presentation before rushing here to post, I didn't see anything about this last part, I now saw it's around the 2:30 mark!

Also at the begining of the video, the 1st load of star sabre is done through a dsk image, where loading is like from a normal drive ~4-5kb/second, but after that, i'm using the direct file method to load the same game and speed is "boosted" to ~18-19kb/sec!
The last loading in video, is done through a very large and bulky 800kb parados image file, and that's why speed is rather slow, but if you use normal amsdos dsk images,  actual speed is usually a bit faster than a real disk drive.
Mind also that games using large images but with amsdos boot sectors (like orion prime for example), are loading VERY fast, even from the dsk image! ;-)

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
The price of the CPC passion by not selling for the features.

Well,if i had to consider the 100's and 100's of hours in the last many months, that took me to develop these features, then i should sell it for 100euros!  :)
But again, the main purpose is to offer fetaures to the community as practical, as easy and... as CHEAP as it can be!  ;)

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 4.007
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 3105
  • Likes Given: 1885
Well,if i had to consider the 100's and 100's of hours in the last many months, that took me to develop these features, then i should sell it for 100euros!  :)
Exactly. And some games on CPC have to be sold for 500/1000€ instead of being free! ;D
Your new expansion is a really promising alternative to a bunch of other hardware. 8)
« Last Edit: 11:02, 01 December 20 by TotO »
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline krusty_benediction

  • CPC6128
  • ****
  • Posts: 186
  • Country: fr
  • Liked: 138
  • Likes Given: 48
Hello; it seems to be a great affordable interface that combines both HXC-like features and M4-like features !I have looked at the documentation, and available functionalities are fascinating.However, I'm not a gamer and my CPC use case probably differ of what most users expects. There are some points that forbid me to buy it at the moment:
- have you planned to add a snapshot loading  ability (I mainly test my developments by creating a snapshot sent to the CPC over wifi with the M4); without that I would have no use of this card- have you planned to write an os agnostic PC tool (I mainly develop from Linux) or a kind of HTTP API as the M4; without that I could not automatize PC project construction and CPC test by typing a single line of command
For the FDC emulation stuff, does it also work when the dsk in on the PC and accessible over the WIFI connection ?

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 17.007
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 4085
  • Likes Given: 7379
SNA loading would be interesting indeed, especially with the latest SNA batches!

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
- have you planned to add a snapshot loading  ability (I mainly test my developments by creating a snapshot sent to the CPC over wifi with the M4);

I'm not sure if understand that correctly, you mean the ability to directly load a file from pc and place it anywhere in Amstrad's ram? This can be already done in a way, as you can directly load a binary file from pc and if you want to load a headerless file, you can do it as ascii (which are also supported) using either "openout" and "read #9" commands from basic or CAS_IN_OPEN and CAS_IN_CHAR from assemly. Of course this would be rather slow, but i think it would be rather easy to add another RSX command in order to load any file from PC and place it anywhere in RAM very fast and without restrictions!  ;)

have you planned to write an os agnostic PC tool (I mainly develop from Linux) or a kind of HTTP API as the M4; without that I could not automatize PC project construction and CPC test by typing a single line of command
For the development of windows utility program, i mainly used DELPHI (or RAD STUDIO XE3 to be more exact). All functions are embedded into main's program source code,  but if you want to develop any software for USIfAC everything is going down to simple input/output commands using only 2 ports! Btw, here are a couple of "3rd party" software that utilized the previous Usifac interface (and most probable will work on the new one too, as they are 100% compatible on the serial port section)
A midi interface
Real time player using a Arkos sound tracker
And as far as i remember both of the guys told me that it was rather easy to make them!  :)

For the FDC emulation stuff, does it also work when the dsk in on the PC and accessible over the WIFI connection ?
Yes, you can use dsk images either in a usb flash drive mounted on the CH376 host module, or access them directly from a PC using Wifi module or Direct serial/bluetooth module connection.
« Last Edit: 13:14, 01 December 20 by ikonsgr »

Offline krusty_benediction

  • CPC6128
  • ****
  • Posts: 186
  • Country: fr
  • Liked: 138
  • Likes Given: 48
I'm not sure if understand that correctly, you mean the ability to directly load a file from pc and place it anywhere in Amstrad's ram? This can be already done in a way, as you can directly load a binary file from pc and if you want to load a headerless file, you can do it as ascii (which are also supported) using either "openout" and "read #9" commands from basic or CAS_IN_OPEN and CAS_IN_CHAR from assemly. Of course this would be rather slow, but i think it would be rather easy to add another RSX command in order to load any file from PC and place it anywhere in RAM very fast and without restrictions!

No, I was literally talking of snapshots ;) https://www.cpcwiki.eu/index.php/Snapshot.
For example, M4 allows to do that xfer -y cpcip file.sna to load the snapsjot on  cpc

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
No, I was literally talking of snapshots ;) https://www.cpcwiki.eu/index.php/Snapshot.
For example, M4 allows to do that xfer -y cpcip file.sna to load the snapsjot on  cpc
Well, to tell you the truth i never got involved with snapshots...  :) What exactly you do with these files?
My main goal with USIfAC II, was not to take the "traditional" approach of trying to "adapt" and utilize the existed file containers and tools developed for Amstrad emulators, (like dsk image files or sna files)but instead, provide a simple,fast and straight forward file access to large storage devices (either an HDD of a connected PC or a usb flash drive).
By doing this, i was freed from floppy controller constraints (that imposed by the strictly use of dsk image containers) and manage to acheive MUCH faster read/write access to files! ;)
Of course, in the end, i've decided to add dsk image access functionality too, in order to be able to load some games/programs that used "low level" sector loaders, or for any game/program that the direct file loading didn't work for some reason.
In 2 words, USIfAC II is aimed mainly for the simple Amstrad user who want an easy fast and rather cheap way to load games/programs and also offer some extra functions for floppy disks (like quick format or copy files to floppy disks) for any "hard core" Amstrad user, that prefers the... "real thing"  :)
And i think, it's the easiest,fastest and probably the cheapest way to have a lot of fun with a CPC 464!  ;)
« Last Edit: 15:00, 01 December 20 by ikonsgr »

Offline Gryzor

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 17.007
  • Country: gr
  • CPC-Wiki maintainer
    • CPCWiki
  • Liked: 4085
  • Likes Given: 7379
Indeed it is. For a simple user like myself, it sounds near perfect*. But the addition of snapshot support would probably eliminate much of the incompatibility cases, that's where the use would lie, for me!

Now, how can I buy one? :)

*if someone can make a case for it... ;)

Offline krusty_benediction

  • CPC6128
  • ****
  • Posts: 186
  • Country: fr
  • Liked: 138
  • Likes Given: 48
Well, to tell you the truth i never got involved with snapshots...  :) What exactly you do with these files?

We specify the content of each memory byte as well as the content of crtc, z80 registers and some information for the gate array. So it is simply the state of a program when loaded in memory.
It is really useful when you have not yet created the loader/linker of the program.
For my case, I code each demo effect screen individually and test them in real time on CPC with snapshot send by the PC on the M4 that fill it in the CPC. Was doing the same when coding https://www.pouet.net/prod.php?which=87382
For other guyz, I guess it is interesting to start a game at a specific point during the play

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
We specify the content of each memory byte as well as the content of crtc, z80 registers and some information for the gate array. So it is simply the state of a program when loaded in memory.
It is really useful when you have not yet created the loader/linker of the program.
For my case, I code each demo effect screen individually and test them in real time on CPC with snapshot send by the PC on the M4 that fill it in the CPC. Was doing the same when coding https://www.pouet.net/prod.php?which=87382
For other guyz, I guess it is interesting to start a game at a specific point during the play
I see...but how you create such snapshots? Can you take a snapshot with M4 on a real amstrad? Because otherwise, i don't think it's very practical, at least from a "game point of view".. I mean, if you can take a snapshot only from an emulator, you would need to start playing a game on emulator, reach some point in game, then take a snapshot, and then continue to a real amstrad cpc with a M4 board ... Not very practical don't you think?  :)

Offline krusty_benediction

  • CPC6128
  • ****
  • Posts: 186
  • Country: fr
  • Liked: 138
  • Likes Given: 48
On my cases, I build them from scratch on my PC when assembling my asm code.
For the others, I do not know ;) But I'm pretty sure such interface (or M4) associated to an Hacker-like rom could build such snapshots. No idea if someone has implemented that already with M4.
Anyway, I'll follow this project and eventually buy one card lateer
« Last Edit: 21:15, 01 December 20 by krusty_benediction »

Offline slugman

  • CPC464
  • **
  • Posts: 16
  • Country: fr
  • Liked: 11
  • Likes Given: 22
Nice device! I sent you a PM for buying one  ;)

Offline GUNHED

  • 6128 Plus
  • ******
  • Posts: 2.794
  • Country: de
  • Reincarnation of TFM
    • FutureOS - The quickest OS for the CPC and Plus
  • Liked: 1300
  • Likes Given: 3030
What an great idea and expansion!!!

Can it actually simulate the Vortex F1-D FDC with different I/O addresses too?

Can we use X-DDOS instead of ParaDOS?

Well, I would like to sign up for 3 devices.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2021.01.24)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.07.15)

Offline ikonsgr

  • 6128 Plus
  • ******
  • Posts: 559
  • Country: gr
    • ikonsgr 80's Home Micros WorkBench
  • Liked: 563
  • Likes Given: 108
Can it actually simulate the Vortex F1-D FDC with different I/O addresses too?
We already discussed that, and i believe  that  Vortex will be directly supported too!

Can we use X-DDOS instead of ParaDOS?
Well, if you want to have amsdos and X-DDOS emulation, tell me which one of the X-DDOS ROM file you want, and i'll "custom" replace parados with it, for your boards! ;-)




« Last Edit: 23:28, 01 December 20 by ikonsgr »

Offline remax

  • 6128 Plus
  • ******
  • Posts: 1.137
  • Country: fr
  • Liked: 422
  • Likes Given: 471
Count me in !

Offline Audronic

  • 6128 Plus
  • ******
  • Posts: 1.458
  • Country: au
  • I know RST3 . I now know a little More.
  • Liked: 322
  • Likes Given: 748
Hi ikonsgr


PM Sent


Thanks for all your work


Keep Safe


Ray
Procrastinators Unite,
If it Ain't Broke PLEASE Don't Fix it.
I keep telling you I am Not Pedantic.
As I Live " Down Under " I Take my Gravity Tablets and Wear my Magnetic Boots to Keep me from Falling off.

Offline VintageAdvantage

  • CPC6128
  • ****
  • Posts: 291
  • Country: us
  • Liked: 128
  • Likes Given: 154
This is brilliant and a great example of what can be done if the MCU is fast enough - everything that requires extra glue logic chips for address decoding with slower MCUs can just be done in software with all these extra MHz's. Did you program the firmware in ASM or C? Good choice of the MCU.

Offline GUNHED

  • 6128 Plus
  • ******
  • Posts: 2.794
  • Country: de
  • Reincarnation of TFM
    • FutureOS - The quickest OS for the CPC and Plus
  • Liked: 1300
  • Likes Given: 3030
We already discussed that, and i believe  that  Vortex will be directly supported too!Well, if you want to have amsdos and X-DDOS emulation, tell me which one of the X-DDOS ROM file you want, and i'll "custom" replace parados with it, for your boards! ;-)

Thanks a lot for your answer. Sorry, I don't know the usifac 2 as well as you. So don't bother if I ask something twice. If Vortex FDC works, this will be great. I would volunteer for testing if you want.

About the X-DDOS ROM... the best one is attached to this post. See below.



Can we burn the chip on the card by myself to alter the ROM content? Maybe this would make things more easy for you
http://futureos.de --> Get the revolutionary FutureOS (Update: 2021.01.24)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.07.15)