avatar_ikonsgr

ULIfAC:Usb Mass storage,WiFi, 512KB Ram/32XROM Board/256K Ram+16X Rom Board!

Started by ikonsgr, 11:39, 24 March 23

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

andycadley

Quote from: ikonsgr on 16:15, 28 August 24So, for video ram only (&C000-&FFFF), you must write both internal and "shadow ram" (e.g. part of the 512k ram expansion that acts as internal ram) at the same time, 

So what happens if software moves the video RAM into one of the other RAM banks?

ikonsgr

Quote from: andycadley on 22:59, 28 August 24So what happens if software moves the video RAM into one of the other RAM banks?
The software can't actually "move" the video ram, what you see on screen is ALWAYS the contents of internal video ram (&C000-&FFFF) as this is the ONLY ram that 6845CRT video controller can access. Of course, using different ram configuration modes you can access video ram of external 64k blocks (still what you get on screen will be the contents of the internal video ram...), with the ONLY notable exception, the notorious "C3 mode", where access to internal video ram is done through &4000-&7FFF memory range.
And because CPC464 had no provision for external memory management, it's quite difficult to make C3 mode works correctly on CPC464. Afaik, only revaldino ram expansion can do that, and soon one more board...  :)

Prodatron

Quote from: ikonsgr on 09:48, 29 August 24
Quote from: andycadley on 22:59, 28 August 24So what happens if software moves the video RAM into one of the other RAM banks?
The software can't actually "move" the video ram, what you see on screen is ALWAYS the contents of internal video ram (&C000-&FFFF) as this is the ONLY ram that 6845CRT video controller can access.
I guess Andycadley is speaking about placing the video at #0000, #4000 or #8000 within the first (internal) 64K, something what many games and most demos are doing. Anyway I think this is obvious and will work fine as well with Ulifac.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

ikonsgr

MAJOR ULIfAC Board Revision (v.5) & Firmware Update (rev.4):

New Revised board:

You cannot view this attachment.

On CPC 664/6128 Basic Modes of operation, and the CPC 464 512K Ram expansion mode, new board functions exactly like previous one.
BUT, on CPC 464 Basic Mode, there is a new Dual RAM/ROM board mode, which implements a 64k internal shadow RAM (e.g. replace completely the internal 64K Ram with a 64K block of the 512K SRAM),and adds extra logic to correctly support the C3 Ram configuration mode.
This results in having a CPC 464 dual mode with 192K Ram expansion (256k in total)+ 16X Rom board mode, where you can now load:
CP/M Plus:

FututeOS:

Symbos:

And some previously non-working demos/games, most notably Pinball Dreams game:

and Phortem demo:

So, practically you will have almost 100% compatibility with a real CPC 6128!
Τhe small switch that used to select CPC 664/6128 or CPC 464 mode of operation is removed, and now the choice is done, using a new RSX Command:|SM. Also active Mode of operation is shown upon boot screen too.


New Rsx Commands:

|SM: Shows current ULIfAC's Basic mode of operation: CPC 664/6128  or CPC 464. Using an extra argument '1' (|SM,1 for CPC 664/6128) or '2' (|SM,2 for CPC 464), sets mode of operation. Board will "remember" your choice and cold boot with it.

|R: Installs a small routine that allows an easier way of using string arguments with Basic & RSX Commands on CPC464. It would be especially useful for easier "manually" mounting of roms e.g. instead of giving:
a$="rom_name":|MROM,@a$,rom_slot
you can give directly:
|MROM,"rom_name",rom_slot.
Use only with CPC464 and default 512K Ram expansion mode!


Updated RSX commands:

- |HELP: Update the rsx list, help is now 4 pages long, which can be viewed directly, by giving: |HELP,2  |HELP,3  |HELP,4 


New v.4 Firmware Update can be found here for update with bootloader and serial cable, or here for updating using a PICKIT programmer.
User's Guide for new ULIfAC baord, can be found here
Important Note:This firmware update CAN'T be used with older boards, but ONLY with the new revised v.5 ULIfAC Board!


Prices are:
New ULIfAC Revised Board: 32 Euros
Edge connector Ribbon cable: 3 Euros
Centronics connector Ribbon cable: 4 Euros
Registered/tracked postage: 8 Euros (+1euro for overseas Australia,US,Canada)


GUNHED

http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

retro space

Quote]Important Note:This firmware update CAN'T be used with older boards, but ONLY with the new revised v.5 ULIfAC Board![/size][/size][/size][/size][/size][/size]
I've the board since may or so, is that a v5? Can you tweak a V4 to become a V5?
Teaching computer science on a high school with the CPC, P2000T, Spectrum and C64.

GUNHED

Quote from: retro space on 16:59, 03 September 24
Quote]Important Note:This firmware update CAN'T be used with older boards, but ONLY with the new revised v.5 ULIfAC Board![/size][/size][/size][/size][/size][/size]
I've the board since may or so, is that a v5? Can you tweak a V4 to become a V5?
Look at the hardware: It's different.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

ikonsgr

Quote from: retro space on 16:59, 03 September 24I've the board since may or so, is that a v5? Can you tweak a V4 to become a V5?
v.5 boards are only available since last week or so.
And, i'm afraid you can't tweak older ULIfAC boards too. As Gunhed noted, v.5 board has extensive modifications on hardware level, along with substantial changes of the PIC MCU firmware, that controls the RAM expansion and ROM board functions:

You cannot view this attachment.

 Different 3-state buffer chips are used (an octal buffer 74LS241 along with an inverting quad buffer 74LS125, instead of the inverting hex buffer 74LS367 with non-inverting quad buffer 74LS126 that previous version used) and also, a complete new circuit was added in order to implement the C3 mode:

You cannot view this attachment.

As CPC 464 doesn't have any build-in memory management, and the CRT6845 video chip can only access internal video ram, even if an internal  "Shadow ram" is used (e.g. replace internal ram with a 64k block of the 512k sram expansion), it was rather difficult to implement C3 mode on CPC464 (which requires to access external video ram @&C000-&FFFF and internal video ram @&4000-&7FFF),  because the screen will ALWAYS show you the contents of the internal video ram, no matter what!
So although initially, i manage to expand CPC 464 compatibility by implementing only a shadow ram (allowing SYMBOS and Pinball Dreams to load, for example), this wasn't enough for "C3 mode" (in order to load correctly CP/M Plus and Future OS), which required the addition of an extra logic circuit!

HAL6128

Just received mine yesterday and I have to say that this device is astonishing! Over the years heavily developed and got very mature these days. Together with a full bunch of CPC internal commands / software / support, also with PC software for exchange, this is a complete and super enhancement for the CPCs. Very comfortable to work with and cool performance.
Respect! Like it.


zhulien

Any chance you can make a unidos driver for usifac ii / ulifac?

ikonsgr

Quote from: zhulien on 01:10, 18 September 24Any chance you can make a unidos driver for usifac ii / ulifac?
I think this question should be addressed to Unidos creators. :) 

zhulien

Hi, just a clarification even after reading the manual...

Looking at the pictures the mode switch only has RAM and RAM/ROM.

but you refer to "512KB Ram/32XROM Board/256K Ram+16X Rom Board"

Do you mean:

RAM Mode - 512kb RAM that is either all RAM and no ROM
RAM/ROM Mode - 256kb of the 512kb RAM is pretending to be ROM so there is only 256kb usable RAM + 16 ROMs
ROM Mode - 512kb all pretending to be 32 ROMs?  Where is this mode?

The confusing bit for me is...   it does sound like 3 modes, but the switch only has 2 positions (at a glance)

If it does have 512kb RAM + 32 ROMs, in what situation would you want to remove half the RAM and half the ROMs?


HAL6128

You can switch the modes also by RSX |SW (see manual page 4), but for ROM Mode or Dual Mode you will need a ROM to be mounted beforehand first time (page 13).
Referring to manual guide v5.

jondavb1970

Hi John, received my Version 5 board today & can confirm it fits in the older Version printed case.
I've managed easily to load Rtype on my 464...Also am I right in saying that the newer Version 5 has better compatibility with 464? 

caver99

how much is a rev 5 unit, as ive just cheked and mine is a ref 2 unit

jondavb1970

Quote from: caver99 on 18:10, 25 September 24how much is a rev 5 unit, as ive just cheked and mine is a ref 2 unit
I paid €40 with UK delivery.

ikonsgr

Quote from: jondavb1970 on 18:03, 25 September 24Hi John, received my Version 5 board today & can confirm it fits in the older Version printed case.
I've managed easily to load Rtype on my 464...Also am I right in saying that the newer Version 5 has better compatibility with 464?
Yes, for CPC 464, new version offers better compatibility, most notably ,support for c3 ram configuration mode (to load cp/m plus or future os), load symbos, and a few games/demos like pinball dreams. Check here a few demos for all the above 

ikonsgr

Quote from: zhulien on 17:40, 24 September 24Hi, just a clarification even after reading the manual...

Looking at the pictures the mode switch only has RAM and RAM/ROM.

but you refer to "512KB Ram/32XROM Board/256K Ram+16X Rom Board"

Do you mean:

RAM Mode - 512kb RAM that is either all RAM and no ROM
RAM/ROM Mode - 256kb of the 512kb RAM is pretending to be ROM so there is only 256kb usable RAM + 16 ROMs
ROM Mode - 512kb all pretending to be 32 ROMs?  Where is this mode?

The confusing bit for me is...   it does sound like 3 modes, but the switch only has 2 positions (at a glance)

If it does have 512kb RAM + 32 ROMs, in what situation would you want to remove half the RAM and half the ROMs?



 The available ram is 512k, so you can have either 512k extra ram, or 256k ram+ 16x rom board, or 32x rom board. Of course the last is practically useless, it was designed mostly for cpr file support, but in the end i couldn't make it work right.
 The 6128/464 switch on older ULIfAC boards, have nothing to do with the operation modes, it just activate/deactivate the mreq suppression in order for the extra ram to work on cpc 464.   

ikonsgr

Quote from: caver99 on 18:10, 25 September 24how much is a rev 5 unit, as ive just cheked and mine is a ref 2 unit
Prices are:
New ULIfAC Revised Board: 32 Euros
Edge connector Ribbon cable: 3 Euros
Centronics connector Ribbon cable: 4 Euros
Registered/tracked postage: 8 Euros (+1euro for overseas Australia,US,Canada)

zhulien

Quote from: ikonsgr on 22:04, 25 September 24
Quote from: zhulien on 17:40, 24 September 24Hi, just a clarification even after reading the manual...

Looking at the pictures the mode switch only has RAM and RAM/ROM.

but you refer to "512KB Ram/32XROM Board/256K Ram+16X Rom Board"

Do you mean:

RAM Mode - 512kb RAM that is either all RAM and no ROM
RAM/ROM Mode - 256kb of the 512kb RAM is pretending to be ROM so there is only 256kb usable RAM + 16 ROMs
ROM Mode - 512kb all pretending to be 32 ROMs?  Where is this mode?

The confusing bit for me is...  it does sound like 3 modes, but the switch only has 2 positions (at a glance)

If it does have 512kb RAM + 32 ROMs, in what situation would you want to remove half the RAM and half the ROMs?



 The available ram is 512k, so you can have either 512k extra ram, or 256k ram+ 16x rom board, or 32x rom board. Of course the last is practically useless, it was designed mostly for cpr file support, but in the end i couldn't make it work right.
 The 6128/464 switch on older ULIfAC boards, have nothing to do with the operation modes, it just activate/deactivate the mreq suppression in order for the extra ram to work on cpc 464. 
actually I thought the 32 rom option is the most useful for me if I wanted to use the 2mb or 4mb ram expansion.

Thanks for clarification 

Manuel3D

Quote from: ikonsgr on 22:05, 25 September 24
Quote from: caver99 on 18:10, 25 September 24¿Cuánto cuesta una unidad Rev 5, ya que acabo de verificar y la mía es una unidad ref 2?
Los precios son:
Nuevo ULIfAC Tablero revisado: 32 euros
Conector de borde Cable plano: 3 euros
Conector Centronics Cable plano: 4 euros
Franqueo certificado/rastreado: 8 euros (+1 euro para el extranjero Australia, EE. UU., Canadá)
Tengo la versión anterior de ULIFAC. Tengo un par de preguntas con respecto a esta última versión que ha desarrollado:
1) Si nuestro ordenador CPC tiene una memoria RAM defectuosa... ¿Este nuevo ULIFAC restauraría el funcionamiento de la computadora?

2) En mi versión, si se usa el USB, no se puede usar el módulo WiFi.
¿Has sido capaz de resolver esto en el nuevo hardware?
Gracias por desarrollar estos dispositivos con los que nuestros CPCs se adaptan a las nuevas tecnologías.

ikonsgr

Quote from: Manuel3D on 19:59, 08 October 241) Si nuestro ordenador CPC tiene una memoria RAM defectuosa... ¿Este nuevo ULIFAC restauraría el funcionamiento de la computadora?[/font][/size]
In dual ram/rom CPC464 mode, the internal ram is replaced by a 64k block of the external 512k sram, so i suppose this might help restore the computer's operation. Only problem is that, you need first to boot amstrad, in order to switch to that mode, so your amstrad must be operational to do that. 
Quote from: Manuel3D on 19:59, 08 October 242) En mi versión, si se usa el USB, no se puede usar el módulo WiFi.[/font][/size][/color] ¿Has sido capaz de resolver esto en el nuevo hardware?
Gracias por desarrollar estos dispositivos con los que nuestros CPCs se adaptan a las nuevas tecnologías.

usb host module and wifi port use internally the same UART port, so obviously they can't be used at the same time.

GUNHED

Just a question: Working with files... Does it work the same way in older ULIfACs and the new ULIfAC 5?

Is there example code to read / write data the the USB stick, or a detailed documentation? (Sorry, from what I did read, it's not clear how to work with files on USB stick.)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

ikonsgr

Quote from: GUNHED on 12:10, 09 October 24Just a question: Working with files... Does it work the same way in older ULIfACs and the new ULIfAC 5?

Is there example code to read / write data the the USB stick, or a detailed documentation? (Sorry, from what I did read, it's not clear how to work with files on USB stick.)
Yes, all boards (USIfAC II, ULIfAC and the new ULIfAC v5), works the same way regarding the access of files or dsk images. Now, here you can find the manual of CH376 usb host module, an easy tutorial,  and most important, my notes (commands.txt file) for doing the most common jobs, e.g. code sequences (with various responds) for opening a file, reading chunks of data, getting a catalogue, seek to specific position of a file (very useful for accessing dsk images)  ;)

GUNHED

http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

Powered by SMFPacks Menu Editor Mod