New port: emulators/teo

Teo is an emulator of the Thomson TO8 microcomputer for PC, running
on MSDOS, Windows, Linux, and FreeBSD.

The compatibility is close to 100% for softwares which don't use
non emulated peripherals and don't hold physical protections.

WWW: https://sourceforge.net/projects/teoemulator/

PR:		235563
Submitted by:	Thomas Bernard <nanard@free.fr>
This commit is contained in:
Tobias Kortkamp 2019-02-08 07:44:45 +00:00
parent 89ae9b6849
commit 3eaed5200a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=492411
9 changed files with 149 additions and 0 deletions

View File

@ -135,6 +135,7 @@
SUBDIR += stella
SUBDIR += stonx
SUBDIR += swine
SUBDIR += teo
SUBDIR += tiemu3
SUBDIR += tilem
SUBDIR += tme

39
emulators/teo/Makefile Normal file
View File

@ -0,0 +1,39 @@
# Created by: Thomas Bernard <nanard@free.fr>
# $FreeBSD$
PORTNAME= teo
PORTVERSION= 1.8.4
CATEGORIES= emulators
MASTER_SITES= SF/teoemulator/linux/${PORTVERSION}
DISTNAME= ${PORTNAME}-${PORTVERSION}-src
MAINTAINER= nanard@free.fr
COMMENT= Thomson TO8 emulator
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/licence-en.txt
LIB_DEPENDS= libasound.so:audio/alsa-lib \
libpng.so:graphics/png
USES= gmake gnome pkgconfig
USE_GNOME= cairo gdkpixbuf2 gtk30
USE_XORG= x11 xext
ALL_TARGET= default
WRKSRC= ${WRKDIR}/teo
post-patch:
@${ECHO_CMD} "MAKEFILE_INC = makefile.lnx" > ${WRKSRC}/Makefile
@${ECHO_CMD} "include makefile.all" >> ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's|"system/|"${DATADIR}/|' \
${WRKSRC}/src/hardware.c ${WRKSRC}/src/linux/udebug/udtoolb.c
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/teo ${STAGEDIR}${PREFIX}/bin
@${MKDIR} ${STAGEDIR}${DATADIR}/rom
${INSTALL_DATA} ${WRKSRC}/system/rom/* ${STAGEDIR}${DATADIR}/rom
@${MKDIR} ${STAGEDIR}${DATADIR}/icons
${INSTALL_DATA} ${WRKSRC}/system/icons/* ${STAGEDIR}${DATADIR}/icons
.include <bsd.port.mk>

3
emulators/teo/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1549611723
SHA256 (teo-1.8.4-src.tar.gz) = 93b636861a67cc72223713c2708391eaf969a7a10ccf2f0288fb41ae6e22c437
SIZE (teo-1.8.4-src.tar.gz) = 1552423

View File

@ -0,0 +1,11 @@
--- makefile.all.orig 2019-02-06 11:40:40 UTC
+++ makefile.all
@@ -151,8 +151,6 @@ TEO_SRC_WIN_FILES = \
# ------ compiler flags ------
-CC = gcc
-
WFLAGS = -Wall
ifdef PGCC

View File

@ -0,0 +1,28 @@
--- makefile.lnx.orig 2019-02-06 11:40:45 UTC
+++ makefile.lnx
@@ -15,7 +15,7 @@ UNIX_TOOLS = 1
ifdef DEBUGMODE
# -- debugging build --
-CFLAGS = -g -DDEBUG $(WFLAGS)
+CFLAGS += -g -DDEBUG $(WFLAGS)
LFLAGS = -g
DESCRIPTION = debugging
@@ -23,14 +23,14 @@ else
ifdef PROFILEMODE
# -- profiling build --
-CFLAGS = -pg $(WFLAGS) $(OFLAGS)
+CFLAGS += -pg $(WFLAGS) $(OFLAGS)
LFLAGS = -pg
DESCRIPTION = profiling
else
# -- optimised build --
-CFLAGS = $(WFLAGS) $(OFLAGS)
+CFLAGS += $(WFLAGS)
LFLAGS = -s
DESCRIPTION = optimized

View File

@ -0,0 +1,37 @@
# HG changeset patch
# User François Mouret
# Date 1544541950 -3600
# Tue Dec 11 16:25:50 2018 +0100
# Node ID e49c586caa6bfd5cbc710fbbef05cf6f3c361fcd
# Parent e5023114c1b22b12a07de65eaa3460cae578ec49
Avoid floppy reactions for non Linux systems (thanks to Thomas Bernard)
--- src/linux/ufloppy.c.orig 2017-11-03 16:40:23 UTC
+++ src/linux/ufloppy.c
@@ -44,6 +44,7 @@
*/
+#if defined(linux)
#ifndef SCAN_DEPEND
#include <stdio.h>
#include <string.h>
@@ -404,3 +405,18 @@ void ufloppy_Exit (void)
}
}
+#else
+
+/* for non linux systems, such as FreeBSD, etc. */
+
+int ufloppy_Init (int to_drive_type[4], int enable_write)
+{
+ return 0;
+}
+
+void ufloppy_Exit (void)
+{
+}
+
+#endif
+

View File

@ -0,0 +1,12 @@
--- src/std.c.orig 2017-11-03 16:40:23 UTC
+++ src/std.c
@@ -364,8 +364,7 @@ char *std_ApplicationPath (const char di
{
static char *fname = NULL;
- fname = NULL;
-#ifdef DEBIAN_BUILD
+#if !defined(__DJGPP__) && !defined(_WIN32)
/* create private directory if necessary */
fname = std_strdup_printf ("%s/.config/%s", getenv("HOME"), dirname);
if (access (fname, F_OK) < 0)

7
emulators/teo/pkg-descr Normal file
View File

@ -0,0 +1,7 @@
Teo is an emulator of the Thomson TO8 microcomputer for PC, running
on MSDOS, Windows, Linux, and FreeBSD.
The compatibility is close to 100% for softwares which don't use
non emulated peripherals and don't hold physical protections.
WWW: https://sourceforge.net/projects/teoemulator/

11
emulators/teo/pkg-plist Normal file
View File

@ -0,0 +1,11 @@
bin/teo
%%DATADIR%%/icons/leave.ico
%%DATADIR%%/icons/run.ico
%%DATADIR%%/icons/step.ico
%%DATADIR%%/icons/stepover.ico
%%DATADIR%%/rom/basic1.rom
%%DATADIR%%/rom/basic512.rom
%%DATADIR%%/rom/expl.rom
%%DATADIR%%/rom/extramon.rom
%%DATADIR%%/rom/monitor1.rom
%%DATADIR%%/rom/monitor2.rom