Archives for the month April 2018 of Genesis8 Amstrad Page
April Fool ALERT, April Fool ALERT
I have received the same email than Markus Hohmann as he announced it on Facebook.
So Alan Michael Sugar is asking to remove all ROMs of the Amstrad CPC firmware for a copyright reason as an Amstrad CPC mini will see the light later this year.
I was waiting for such a beast, but I didnt think about possible consequences. Though I will respect what he is asking as I have never wanted to put illegal programs on this web site.
The source code of 1Kusai is available.
So, the idea was to fit Hokusai's The Great Wave off Kanagawa in 1K.
I worked from an SVG file and removed a lot of details until it would fit the allocated space (packed with zx7). Eventually it ended up too small after some late minute changes to the code which improved the compression. Oh well.
The SVG was converted to bezier curves using NanoSVG, then a custom Lua script to convert the usual bezier curves definitions into a form more suitable for computation. Normally a Bezier curve is defined by X and Y equations which look like this :
x = A(1-t)³+3B(1-t)²t+3C(1-t)t²+Dt³
We can rewrite this as : Z + t(Y + t(X + Wt))
Z = A
Y = 3B
X = 3C - 6B
W = D - 3C + 3B - A
So in this form we need only 3 multiplications.
The computations are done using CPC firmware which provides neat floating point math support. I compute 256 points along each curve (this could be adjusted to less points for faster drawing, at the cost of slightly less smooth curves) and draw lines between them. Then the system FILL routine is used to fill the closed shapes.
The sound of waves and thunder you can hear is just the Y or X coordinate (I don't remember, whichever sounded best) sent to the AY noise register (again using the CPC firmware, because this is the most space efficient way). I tried to write some music using the free bytes left but did not manage to do anything very convincing. Next time I'll try to spend more effort on the sound side.
The last version of RASM is v0.81 (5th April 2018) :
- added special maxam priorities for parenthesis and boolean operators
An interesting reading of Baba's Palace by Rafael Castillo and McKlain that I invite you to read.
Captain Space Debris is an Amiga original music written by Markus Kaarlonen, which was adapted on Amstrad CPC by BSC for the demo Digital Orgasm by Prodatron. So Vincent GR mixed both of them but even if there is a Youtube video of the mix, he prefers that you listen to the soundcloud version due to audio and video compression.
A new version of the desktop JavaCPC is available. It's an Amstrad CPC(+) emulator written in Java by Markus Hohmann (DevilMarkus).
Caprice Forever v2018-04 by Frédéric Coste is a modified version of the Caprice emulator (by Ulrich Doewich) for windows.
- Fix CRTC regression with "Turrican" but involving issues with "iMPdraw"
- Add Audio Speaker and PlayCity Line OUT or Internal option
- Add Audio PlayCity invert channels option
- Fix FDC regression to load "The Real Ghostbusters"
- Add Graphics explorer and Tile editor
- Drop ROM file for testing purposes
- Fix minor bugs
iMPdos Public Edition v1.17 by AST/iMPACT is available, a ROM for using the X-Mass extension card made by Toto. It must be installed as ROM 1 to 6, before the ROM 7 ! When the ROM is installed, iMPdos detects the X-Mass and format it. Dont forget to use the |hlp command for documentation.
Doragasu started a project in January 2017 about a ROM board interface with DMA transfert. The project is now a reality :
- it can play digital audio with approximately 0% CPU overhead. The limits are the bits per sample ( 8 ) and the maximum sample length (64 KiB). Sampling rate can be configured on the fly, and ranges from 3906 Hz to 50 kHz (and beyond)
- it can can transfer data from external ROM to internal CPC RAM at 1 byte per microsecond. While doing DMA the Z80 is stopped, but this is much faster than doing the copy using software routines
For more news, Go to home page