News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_h2w

XiAleste -- Another Amstrad CPC6128 replica

Started by h2w, 14:19, 12 December 22

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

h2w

XiAleste is an 8-bit home computer, which is compatible with software and hardware for the 1985 Amstrad CPC6128. It also has enhanced capabilities. It is intended to appeal to retrocomputing enthusiasts and to anybody who like to build yourself a hardware unit.

The project is focused on sound synthesis and is essentially a CPC6128 with extended sound capabilities.  Along with PSG it is planned to implement quite a complex sound synthesizer, which is a bit like SNES or even Sequential P12. It is hard to say more until the project is completed.

So. This is a very specific and unusual project. Many people might find it strange, but I only do what I like. It may be acceptable to others, but I'm not sure.

Keep checking the project status at the Projects Page

P.S. I can't firmly state that I will finish everything and it will be within a certain timeframe. But at the very least, I'll have the board ready before the new year. And then we'll see what's next.

h2w

Just to illustrate that the computer is expected to have a very advanced sound system, here is a fragment of the board below. That's it, keep an eye on the project from time to time.

Don't mind the silkscreen, the project is in the works and changes every day.

Gryzor

Not for me, but pretty interesting, so following. 

GUNHED

Sounds very interesting.

Will it be compatible to LambdaSpeak FS and PlayCity?
They are the standard expansions for Speech and enhanced sound on CPC today.

Compatibility would allow to access existing software from the beginning.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

h2w

Quote from: GUNHED on 20:08, 12 December 22Sounds very interesting.

Will it be compatible to LambdaSpeak FS and PlayCity?
They are the standard expansions for Speech and enhanced sound on CPC today.

Compatibility would allow to access existing software from the beginning.  :)
It was the plan, but I could not say about priority order right now. We will see.

HAL6128

Interesting project! (Wow, I'm always jealous about people who develop hardware like other reading a book.)
What does it mean 'compatible' to the CPC? 
You had mentioned those extensions like a special sound card or advanced graphic  mode (from the description of the website). How do you plan to keep it compatible to e.g. BASIC commands (mode, sound etc.)? And are those Enhancement also reachable through e.g. RSX commands?
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

h2w

#6
Quote from: HAL6128 on 21:47, 12 December 22You had mentioned those extensions like a special sound card or advanced graphic  mode (from the description of the website). How do you plan to keep it compatible to e.g. BASIC commands (mode, sound etc.)? And are those Enhancement also reachable through e.g. RSX commands?

Compatibility basically means that all previous code will work without changes. Also the previous hardware (daughter boards) will work properly.

The new hardware features, they only allow them to be used in the new software. For example you can write a demo program, or port your old code to the new platform using its features. It is not difficult to write a small program which will be put in ROM and add some features to BASIC. So anything is possible.

Suppose everything works out and I do my part: the PCB as well as the code for the FPGA and the DSP. What will XiAleste "know" right after that?

When booting the system with SHIFT held down it will just be an Amstrad CPC6128. Without holding down the SHIFT key, it will be XiAleste. In essence it will be the same CPC6128 but in the output space there will be an ExtMode register whose bits will allow you to add hardware nodes -- such as a sound system or an advanced graphics system (and others). By activating one of the nodes in the I/O and/or memory space the corresponding registers or memory locations will appear. The software can use them.

N.B. Activating the hardware node should not make the computer incompatible with CPC6128. There is still a chance that a program or game will stop working.

Let's take the sound system as an example. After activation there will be a fragment in the memory which will contain all the necessary information to control the DSP. This will be similar to the SPC700 (i.e. as a list of MIDI controllers). At least you can write a BASIC program to control this data and as a result (at least) the sound synthesized by PSG will be treated with Chorus, Echo, Reverberation effects etc. This way you can make the system play a MIDI file previously loaded into memory. In the end, all the possibilities of the sound system are already available, but not formalized in the form of additional BASIC commands. Let others do the rest.

N.B. In a sense, activating the hardware node adds new software to the Amstrad CPC6128, but implemented on the coprocessor.

HAL6128

#7
How do you design the interfaces? I've read that there's a bus expansion (centronics or edge connector)? How do you drive the keyboard, floppy, joystick, printer or monitor(etc.)?
Do you have an overview like this one:  Aleste520EX ?
Is this system or better the software for it somehow 'upgradable' like an Ultimate64 (Ultimate64) which consider further developments?
Does the board fit in a special case (an empty CPC6128 :D )?
(...so many questions? :) )
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

h2w

#8
QuoteHow do you design the interfaces?
Not sure about the question

QuoteI've read that there's a bus expansion (centronics or edge connector)?

Three 62-pos, 2.54mm pitch edge sockets on the board.

QuoteHow do you drive the keyboard, floppy, joystick, printer?
Similar to the MIST board. All of those thigs are implemented on FPGA and they have a backed hardware updated by the MCU. The MCU has 4 USB connector for HID for Bulk devices.


Quoteor monitor(etc.)

VGA and HDMI on the board, but the scandoubler in the FPGA

QuoteDo you have an overview like this one:  Aleste520EX ?

I will make similar image asap

QuoteIs this system or better the software for it somehow 'upgradable' like an Ultimate64 (Ultimate64) which consider further developments?
I am not sure what is Ultimate64. But XiAleste will have:

  • On the board STLink v2 with USB connector to develop, debug or just upgrade the firmware.
  • The ROM dumps will be located on SD card and loaded to the memory at the boot time.

QuoteDoes the board fit in a special case (an empty CPC6128 :D )?

I am working on DTX formfactor. But anybody could load my Altium files and redesign board to another size.


Cwiiis

If one of these hardware nodes could be "Plus support" (so you get hardware sprites, 12-bit palette, hardware scroll registers, sound DMA, configurable raster interrupt), this would be a fantastic project for the longevity of that platform.

h2w

Quote from: Cwiiis on 12:51, 14 December 22If one of these hardware nodes could be "Plus support" (so you get hardware sprites, 12-bit palette, hardware scroll registers, sound DMA, configurable raster interrupt), this would be a fantastic project for the longevity of that platform.
That is possible. Will be good if someone who can take care of FPGA for the CPC6128 and Plus domains. I would do sound part of the Xi. We will see  :)

GUNHED

Great new, especially that it comes with expansion RAM and ROM. Well, I was waiting for such a system a long time.  :) :) :)

Can the speed be enhanced? Like a Turbo mode. 8 MHz instead of 4 MHz or even more?
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

h2w

Quote from: GUNHED on 14:50, 14 December 22Great new, especially that it comes with expansion RAM and ROM. Well, I was waiting for such a system a long time.  :) :) :)

Can the speed be enhanced? Like a Turbo mode. 8 MHz instead of 4 MHz or even more?
Yes

GUNHED

That opens new worlds for GFX, Sound etc. _with_ compatibility.  :) :) :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

does anyone send a complete component set for the Aleste?  I have only the main circuit board.

h2w

Quote from: zhulien on 18:29, 31 December 22does anyone send a complete component set for the Aleste?  I have only the main circuit board.
There were such suppliers previously but not anymore ( 

GUNHED

This will be the Top hardware project for 2023.
Please keep us updated!  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

h2w

Quote from: GUNHED on 13:54, 02 January 23This will be the Top hardware project for 2023.
Please keep us updated!  :)
I will publish PCB asap. Right now working on the voice daughters board. I am doing it to prove the pinout of sound expansion connector.

GUNHED

Well, to select a color (the CPC has 32 and 27 are different) the values from &40 to &5F are sent to port &7Fxx.

Now there could be 32 colors more be added to a CPC compatible mode just by using values &60 to &7F als values too. (These values are not used today for nothing - afaIk).

This way the XiA could provide 64 colors for the CPC and stay compatible. Some browns and greys would be of interest for sure.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

SerErris

You are not giving up on it, right? 

As this is an FPGA implementation and not a software emulation it will have the same compatibility issues as the original mainboard coming from the way how the GateArray is converting the numbers of the colors into RGB values on the output. You have to change the output to get to more colours and same as in the dicussion on the GateArray implementation in a CPLD this will not work. 

The main issue is, that hardware is hard wired (tha GA) and can only create the three states on the output. If you want to be able to output more colors, you would need to get the hardware to interpret the upper 32 colors in a complete different way and also need to add hardware to be able to create more variances of each color than 3. 

So this is the same "hardware" as the original one, with the exact same issue. Only software emulators would be able to overcome this issue with a software implementation of the GA and then outputting some other color pallette via a VGA output.
Proud owner of 2 Schneider CPC 464, 1 Schneider CPC 6128, GT65 and lots of books
Still learning all the details on how things work.

TotO

#20
A simple way for Amstrad to have more colors on the 40010 GA would have been to set the unused bit5 for the intensity and output RGBI instead of RGB. Sure, that means some duplicate values, but enough to have more shades and dark colors and stay compatible.

EDIT: Adding the palette by removing the 8 duplicated colours (46/54).
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Gryzor

What would that have caused with the original machine though? 

TotO

@Gryzor Ignoring the intencity bit and only set colours from the original palette.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

h2w

#23
The project I am working on is focused on sound -- but not a graphics features.
The is FPGA module MUSELabs's ICESugarPro. It has limited amount of pins, so when a compromise needed the Audio features are preferable.

The board has two video connectors. The main connector is HDMI but VGA is auxiliary.
The HDMI will allow to make all your improvements for colors, but VGA has limited amount of bits -- 3 bits per component only.

P.S. For future, I have completed PCB design of my version of ICESugarPro with more pins on connector.


HAL6128

#24
Quote from: TotO on 12:13, 05 January 23A simple way for Amstrad to have more colors on the 40010 GA would have been to set the unused bit5 for the intensity and output RGBI instead of RGB. Sure, that means some duplicate values, but enough to have more shades and dark colors and stay compatible.

EDIT: Adding the palette by removing the 8 duplicated colours (46/54).
Is this a way what had been done in the hardcore demos mentioned here?  CGA = the same chip in the Amstrad CPCs?

Quote from: Maniac on 12:53, 03 January 23If you want to see what CGA can really do when pushed watched these amazing works of art!

https://www.pouet.net/prod.php?which=65371

https://www.pouet.net/prod.php?which=91938

Technical details here: https://trixter.oldskool.org/2015/04/07/8088-mph-we-break-all-your-emulators/
It seems to be more a hardware trick?
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

Powered by SMFPacks Menu Editor Mod