# Introducing R‑GX GDK

**URL:** <https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256>\
**Category:** Programming\
**Tags:** tools\
**Created:** [September 4, 2026, 6:25am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256 "2026-09-04T06:25:34Z")\
**Posts on this page:** 9\
**Page:** 3

<div class="post-metadata">

**Author:** ![Hakim](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/hakim/32/746_2.png) [@Hakim](https://forum.cpcwiki.eu/u/Hakim)\
**Post date:** [October 2, 2026, 10:59pm UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/41 "2026-10-02T22:59:34Z")

</div>

Thanks, glad it caught your eye!

The trick is that R-GX keeps three layers apart:

- **The API:** a library of ready-made calls for the GX4000 / CPC+: tile maps and scrolling, hardware sprites, rasters, music and sound, walk boxes, scripts… Each call does one job, is tested on its own, and hides the hardware details. A game is written with these calls, not by poking the hardware directly.
- **Templates:** starting points for different kinds of games, built only with that API. A tile-map scroller, a shoot’em up (Xenon 2 style), a platformer (Rayman style), a point-and-click adventure (SCUMM style). They aren’t full games: each one has the engine and the basics working, and you build your game on top.
- **The editor:** simple inputs. Draw your map, import your sprites, drop in a music file to convert, set up rooms and objects with lists and buttons. It builds the cartridge for you and runs it in the emulator.

So it stays simple for the person making the game, and the flexibility comes from the API. When a game needs something new, it becomes a new API call, and every game can use it after that. You only write code if you want to go beyond what the API offers.

There’s still plenty to do, but I’ll keep posting progress. Happy to hear what kind of game you’d want to make with it!

---

<div class="post-metadata">

**Author:** ![slider271](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/slider271/32/501_2.png) [@slider271](https://forum.cpcwiki.eu/u/slider271)\
**Post date:** [October 3, 2026, 1:05am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/42 "2026-10-03T01:05:11Z")

</div>

Thank you for the explanation, I think this is sounding so cool!

Don’t take this the wrong way, but when I first saw your project it reminded me of this April Fool joke in Your Sinclair magazine…purely because what you’re doing is so comprehensive!

 ![IMG_0867](https://forum.cpcwiki.eu/uploads/default/original/1X/a6b027d1601dce28fa68fbbef69dd33ab2799b49.jpeg)

---

<div class="post-metadata">

**Author:** ![Hakim](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/hakim/32/746_2.png) [@Hakim](https://forum.cpcwiki.eu/u/Hakim)\
**Post date:** [October 3, 2026, 2:28am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/43 "2026-10-03T02:28:24Z")

</div>

> [@slider271](#):
>
> Thank you for the explanation, I think this is sounding so cool!
> 
> Don’t take this the wrong way, but when I first saw your project it reminded me of this April Fool joke in Your Sinclair magazine…purely because what you’re doing is so comprehensive!

To be honest, when I started working on Rayman-GX, I couldn’t believe it myself when I got Rayman jumping around, grabbing vines, throwing his fist, and doing all the things that made him feel like Rayman. That’s actually where the GDK idea started.

While developing Rayman-GX, I kept creating more and more tools to make my life easier. At some point I stepped back and thought: _“Hmm… if I can replace the character, swap the maps, and change the music, I can basically create a whole new game.”_

And that’s how R-GX GDK was born. The “R-GX” part originally comes from **(R)ayman-GX**, but the project gradually evolved into something much bigger and more generic than its original purpose. 😄

---

<div class="post-metadata">

**Author:** ![Gryzor](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/gryzor/32/7_2.png) [@Gryzor](https://forum.cpcwiki.eu/u/Gryzor)\
**Post date:** [October 3, 2026, 6:56am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/44 "2026-10-03T06:56:26Z")

</div>

Heh, that was a great April Fool’s 🙂

---

<div class="post-metadata">

**Author:** ![Hakim](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/hakim/32/746_2.png) [@Hakim](https://forum.cpcwiki.eu/u/Hakim)\
**Post date:** [October 7, 2026, 1:45am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/45 "2026-10-07T01:45:04Z")

</div>

**Monkey Island-GX: Intro WIP | R-GX GDK**

[![](https://forum.cpcwiki.eu/uploads/default/original/1X/4ebaf163f90e2a68274f77b5efe3088d5b262c1e.jpeg "Monkey Island-GX: Intro WIP | R-GX GDK") ](https://www.youtube.com/watch?v=462gEsVbdtE)

---

<div class="post-metadata">

**Author:** ![Hakim](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/hakim/32/746_2.png) [@Hakim](https://forum.cpcwiki.eu/u/Hakim)\
**Post date:** [October 7, 2026, 1:46am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/46 "2026-10-07T01:46:26Z")

</div>

**Monkey Island-GX: Multimode | R-GX GDK**

[![](https://forum.cpcwiki.eu/uploads/default/original/1X/349650db34b405926cdc05ace87a2fa660952886.jpeg "Monkey Island-GX: Multimode | R-GX GDK") ](https://www.youtube.com/watch?v=Y9kDfSPeYL8)

---

<div class="post-metadata">

**Author:** ![SagaDS](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/sagads/32/160_2.png) [@SagaDS](https://forum.cpcwiki.eu/u/SagaDS)\
**Post date:** [October 7, 2026, 9:34am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/47 "2026-10-07T09:34:23Z")

</div>

I was wondering how the cursor was so ‘Mode 1’ sized…  
I didn’t know that multi mode was possible on GX.

---

<div class="post-metadata">

**Author:** ![AndyCadley](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/andycadley/32/177_2.png) [@AndyCadley](https://forum.cpcwiki.eu/u/AndyCadley)\
**Post date:** [October 7, 2026, 10:22am UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/48 "2026-10-07T10:22:47Z")

</div>

> [@SagaDS](#):
>
> I didn’t know that multi mode was possible on GX.

Technically it isn’t, or at least no more than the standard CPC.

However, the hardware sprites are independent of the screen mode and individual pixels within them are always Mode 2 sized (with 15 possible colours). That’s quite small but you can apply x2 or x4 magnification horizontally and/or vertically on a per sprite basis.

At x1 vertical magnification, a horizontal magnification of x2 gives you Mode 1 sized pixels, but in 15 colours and x4 is more like Mode 0.

---

<div class="post-metadata">

**Author:** ![Hakim](https://forum.cpcwiki.eu/user_avatar/forum.cpcwiki.eu/hakim/32/746_2.png) [@Hakim](https://forum.cpcwiki.eu/u/Hakim)\
**Post date:** [October 7, 2026, 10:31pm UTC](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256/49 "2026-10-07T22:31:20Z")

</div>

The screen itself has:

- the main game =\> Screen Mode 0 =\> 144 scanlines
- text =\> full width Screen Mode 1 =\> 8 scanlines
- Verbs =\> half width Screen Mode 1 =\> 48 scanlines shared with Mode 0
- Inventory =\> the other half Screen Mode 0

when you split to get those screen mode on the same visible screen, each zone has then its own palette.

except verbs and inventory because they are on the same scanline, so mode 0 inherit the 4 pen color from mode 1, on its left.

PS: On plus, ASIC do the job for all splits, except having two modes on the same scanlines (our verbs, inventory).

[Previous page](https://forum.cpcwiki.eu/t/introducing-r-gx-gdk/256.md?page=2)
