diff --git a/src/xpdev/unicode.c b/src/xpdev/unicode.c
index 6ea8733d3b4bf9bfb80e7cda9e1ef56449560ca1..96a333764decdf64aa4edd8394233d8ca1c68036 100644
--- a/src/xpdev/unicode.c
+++ b/src/xpdev/unicode.c
@@ -348,6 +348,13 @@ size_t unicode_width(enum unicode_codepoint u)
 	}
 }
 
+char unicode_to_latin1(enum unicode_codepoint codepoint)
+{
+	if (codepoint < 0 || codepoint > 255)
+		return UNICODE_UNDEFINED;
+	return codepoint;
+}
+
 char unicode_to_cp437(enum unicode_codepoint codepoint)
 {
 	switch(codepoint) {
diff --git a/src/xpdev/unicode.h b/src/xpdev/unicode.h
index cad6a43ef760bd0443fafd936515d575f7ac5efe..461a4ecee65176507a0a589a16cee1b0324d284e 100644
--- a/src/xpdev/unicode.h
+++ b/src/xpdev/unicode.h
@@ -46,6 +46,7 @@ extern "C" {
 extern enum unicode_codepoint cp437_unicode_tbl[];
 size_t unicode_width(enum unicode_codepoint);
 char unicode_to_cp437(enum unicode_codepoint);
+char unicode_to_latin1(enum unicode_codepoint);
 
 #if defined(__cplusplus)
 }