diff --git a/STATUS.md b/STATUS.md
index 01af1e7c..d5178191 100644
--- a/STATUS.md
+++ b/STATUS.md
@@ -136,7 +136,7 @@ NOTE: Even the 'DONE' routines won't support features described as missing in on
| `$FFE7` | `$F32F` | `CLALL` | DONE | |
| `$FFEA` | | `UDTIM` | DONE | |
| `$FFED` | | `SCREEN` | DONE | |
-| `$FFF0` | | `PLOT` | PARTIAL | cursor blink not handled |
+| `$FFF0` | `$E50A` | `PLOT` | PARTIAL | cursor blink not handled |
| `$FFF3` | | `IOBASE` | DONE | |
| `($FFFA)` | | NMI vec | PARTIAL | |
| `($FFFC)` | | RESET vec | PARTIAL | |
@@ -150,16 +150,17 @@ Not all of them - only these we want to have implemented.
-| Address | Name | Status | Remarks |
-| :-------: | :---------------- | :------: | :------------------------------------------------: |
-| `$E544` | clear screen | DONE | |
-| `$E5A0` | setup VIC II & IO | PARTIAL | |
-| `$EA31` | default IRQ | PARTIAL | |
-| `$EA7E` | ack CIA1 + below | DONE | |
-| `$EA81` | ret from IRQ/NMI | DONE | |
-| `$FD30` | default vectors | DONE | |
-| `$FE47` | default NMI | PARTIAL | |
-| `$FE66` | default BRK | DONE | |
-| `$FF80` | revision byte | DONE | |
+| Address | Name | Status | Remarks |
+| :-------: | :------------------ | :------: | :------------------------------------------------: |
+| `$E544` | clear screen | DONE | |
+| `$E50C` | set cursor position | PARTIAL | cursor blink not handled |
+| `$E5A0` | setup VIC II & IO | PARTIAL | |
+| `$EA31` | default IRQ | PARTIAL | |
+| `$EA7E` | ack CIA1 + below | DONE | |
+| `$EA81` | ret from IRQ/NMI | DONE | |
+| `$FD30` | default vectors | DONE | |
+| `$FE47` | default NMI | PARTIAL | |
+| `$FE66` | default BRK | DONE | |
+| `$FF80` | revision byte | DONE | |
diff --git a/bin/basic_mega65.rom b/bin/basic_mega65.rom
index 2b665a44..a8762c7b 100644
Binary files a/bin/basic_mega65.rom and b/bin/basic_mega65.rom differ
diff --git a/bin/kernal_generic.rom b/bin/kernal_generic.rom
index 95444870..722812e8 100644
Binary files a/bin/kernal_generic.rom and b/bin/kernal_generic.rom differ
diff --git a/bin/kernal_mega65.rom b/bin/kernal_mega65.rom
index e6925302..b978c8a2 100644
Binary files a/bin/kernal_mega65.rom and b/bin/kernal_mega65.rom differ
diff --git a/bin/kernal_ultimate64.rom b/bin/kernal_ultimate64.rom
index f2e21005..0eff723a 100644
Binary files a/bin/kernal_ultimate64.rom and b/bin/kernal_ultimate64.rom differ
diff --git a/c64/kernal/e50a.interop b/c64/kernal/e50a.interop
new file mode 100644
index 00000000..392ddf02
--- /dev/null
+++ b/c64/kernal/e50a.interop
@@ -0,0 +1,4 @@
+The original reason to move PLOT routine into its original position was to provide support for unofficial $E50C address:
+
+- it is well known: https://www.lemon64.com/forum/viewtopic.php?t=3296&%3Bstart=15
+- 'Duotris' game calls $E50C during startup screen initialization
diff --git a/c64/kernal/plot.s b/c64/kernal/e50a.plot.s
similarity index 64%
rename from c64/kernal/plot.s
rename to c64/kernal/e50a.plot.s
index 0f439cde..e72b33d2 100644
--- a/c64/kernal/plot.s
+++ b/c64/kernal/e50a.plot.s
@@ -11,6 +11,10 @@
PLOT:
bcs plot_get
+ // Note: the 'set' part has to start from $E50C, as this is a known address
+ // - https://www.lemon64.com/forum/viewtopic.php?t=3296&%3Bstart=15
+ // - 'Duotris' game calls $E50C during startup screen initialization
+
plot_set:
sty TBLX
stx PNTR
@@ -23,4 +27,3 @@ plot_get:
ldy TBLX
ldx PNTR
rts
-