Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
0f74e03
Add stb_image implementation file
jcarr71 Oct 29, 2025
2680c25
Update binary libraries for various architectures
jcarr71 Oct 29, 2025
5313172
feat: Implement in-game file browser for FreeIntv
jcarr71 Oct 29, 2025
21ee800
feat: Add initial libretro info file for FreeIntvTSOverlay
jcarr71 Oct 29, 2025
25f8a80
Add object dependency files for FreeIntvTSOverlay source files
jcarr71 Oct 29, 2025
bf9c7ea
feat: Update documentation and code for FreeIntvTSOverlay touchscreen…
jcarr71 Oct 29, 2025
55a5832
Enhance README with images and contributor details
jcarr71 Oct 29, 2025
daf914c
docs: Enhance README with details on touchscreen and mouse input for …
jcarr71 Oct 29, 2025
3fa67ce
Implement code changes to enhance functionality and improve performance
jcarr71 Oct 29, 2025
41e6873
Merge branch 'master' of https://github.com/jcarr71/FreeIntvTSOverlay
jcarr71 Oct 29, 2025
e676f1a
Add Ko-fi username for funding
jcarr71 Oct 29, 2025
fbfef19
chore: Prepare for upcoming feature enhancements and optimizations
jcarr71 Oct 29, 2025
701ade6
Merge branch 'master' of https://github.com/jcarr71/FreeIntvTSOverlay
jcarr71 Oct 29, 2025
e5ead2d
chore: Update documentation for clarity and consistency
jcarr71 Oct 29, 2025
dc3d671
Refactor code structure for improved readability and maintainability
jcarr71 Oct 29, 2025
b202107
Checked compile on Android, Windows, and Linux
jcarr71 Oct 29, 2025
de8dd97
Refactor code structure for improved readability and maintainability
jcarr71 Oct 30, 2025
478aec3
Implement feature X to enhance user experience and fix bug Y in module Z
jcarr71 Oct 31, 2025
11a681c
chore: Update README for clarity and consistency
jcarr71 Oct 31, 2025
3f20be4
Fix: Revert valid_extensions from 'intv' to 'int' to restore ZIP file…
jcarr71 Nov 20, 2025
1f3cae7
Merge remote-tracking branch 'upstream/master'
jcarr71 Nov 20, 2025
b5fd313
chore: Update .gitignore to exclude build artifacts and IDE files
jcarr71 Nov 20, 2025
a44bfc5
chore: Remove build artifacts tracked by git (now in .gitignore)
jcarr71 Nov 20, 2025
718d5b6
refactor: Rename asset folder from FreeIntvTS_Overlays to freeIntv_im…
jcarr71 Nov 20, 2025
fcaebf3
Removed utility buttons and added logo banner, prepping for change to…
jcarr71 Nov 24, 2025
674b01c
Changed naming entries to FreeIntv without the TS Overlay to prepare …
jcarr71 Nov 24, 2025
be53d73
Incorporate PNG files into the code to alleviate need for external files
jcarr71 Nov 24, 2025
ebd5e04
corrected overlay loading code, and fixed keypad transparency
jcarr71 Nov 25, 2025
4cc7c0b
updated documentation and screenshots
jcarr71 Nov 25, 2025
2a6a9a2
Enhance user documentation with installation steps and dual-screen di…
jcarr71 Nov 25, 2025
334dc5b
Update FreeIntv_libretro.info for improved clarity and accuracy in di…
jcarr71 Nov 25, 2025
0681901
Add dual-screen touchscreen and overlay support to FreeIntv core
jcarr71 Nov 25, 2025
a09cb26
Merge pull request #1 from jcarr71/feature/dual-screen-touchscreen-ov…
jcarr71 Nov 25, 2025
e342b0b
Update FreeIntv_libretro.info, README.md, and USER_GUIDE.md for enhan…
jcarr71 Nov 25, 2025
1bc433a
Merge branch 'master' of https://github.com/jcarr71/FreeIntvTSOverlay
jcarr71 Nov 25, 2025
d3cd646
fix: Correct corename typo in FreeIntv_libretro.info
jcarr71 Nov 28, 2025
7d82383
Corrected multi-screen core option menu item. Fixed onscreen keypad …
jcarr71 Dec 4, 2025
8a09e29
Updated wording for the new core option to specify restart and touchs…
jcarr71 Dec 4, 2025
f9c30b9
Add step to mark repo as safe in workflow
jcarr71 Dec 4, 2025
eac34fa
Updated readme and user guide
jcarr71 Dec 4, 2025
fbff657
modified code to comply with c89 coding model
jcarr71 Dec 7, 2025
e152af8
Removed printf and fflush commands leftover from debugging code
jcarr71 Dec 7, 2025
ce5dcea
Merge branch 'master' into master
jcarr71 Dec 8, 2025
f559f60
Corrected case for core name. Added fix for iOS9 build. Fixed C89 c…
jcarr71 Dec 11, 2025
4734532
Fix Android build: Revert LOCAL_MODULE to 'retro' for buildbot compat…
jcarr71 Dec 11, 2025
53ec6b0
Fix iOS compatibility: Disable thread-local storage for armv7
jcarr71 Dec 12, 2025
55716c7
Fixed build conflicts with MSVC, iOS, and Android
jcarr71 Dec 12, 2025
59d3685
Add build-test.ps1 to .gitignore for local build and test script excl…
jcarr71 Dec 12, 2025
a40f0bc
Merge branch 'master' into master
jcarr71 Dec 15, 2025
07c2a6e
Fix PS2 build: Remove duplicate util_bg_color declaration
jcarr71 Dec 15, 2025
c9128b8
Fix PS2 build: Add all missing variable declarations
jcarr71 Dec 15, 2025
7c39e67
Fix PS2 build: Remove redeclaration of hotspot_x_adjust
jcarr71 Dec 15, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ jni/obj/
*~
.DS_Store

# Local build and test scripts
build-test.ps1

# Temporary and log files
*.tmp
*.temp
Expand Down
4 changes: 2 additions & 2 deletions FreeIntv_libretro.info
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
display_name = "Mattel - Intellivision (FreeIntv)"
display_name = "Mattel - Intellivision (freeintv)"
authors = "David Richardson, Oscar Toledo G., Joe Zbiciak, Jason Carr"
supported_extensions = "int|bin|rom"
corename = "FreeIntv"
corename = "freeintv"
categories = "Emulator"
license = "GPLv2+"
permissions = ""
Expand Down
2 changes: 1 addition & 1 deletion ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
This issue tracker is NOT for help or support. Please use the libretro forums (https://forums.libretro.com/) for those kinds of posts.

BEFORE you report a bug make sure you have tried the latest buildbot version of FreeIntv or compiled it from source. Your bug might be already fixed.
BEFORE you report a bug make sure you have tried the latest buildbot version of freeintv or compiled it from source. Your bug might be already fixed.

If you are sure that it's a bug, please answer the following questions:
- Which version of RetroArch are you using?
Expand Down
8 changes: 4 additions & 4 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@

FreeIntv Copyright (c) 2017-2018 David Richardson [Recompile]
freeintv Copyright (c) 2017-2018 David Richardson [Recompile]

FreeIntv is free software; you can redistribute it and/or modify
freeintv is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

FreeIntv is distributed in the hope that it will be useful,
freeintv is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License along
with FreeIntv; if not, write to the Free Software Foundation, Inc.,
with freeintv; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ endif


CORE_DIR += .
TARGET_NAME := FreeIntv
TARGET_NAME := freeintv
SOURCE_DIR := src

ifeq (,$(findstring msvc,$(platform)))
Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# FreeIntv with Onscreen Interactive Keypad Overlays
FreeIntv is a libretro emulation core for the Mattel Intellivision designed to be compatible with joypads from the SNES era forward even if they originally required a number pad.
# freeintv with Onscreen Interactive Keypad Overlays
freeintv is a libretro emulation core for the Mattel Intellivision designed to be compatible with joypads from the SNES era forward even if they originally required a number pad.

**Current Version**: Enhanced with onscreen interactive keypad overlays for Android, Windows, and Linux (November 24, 2025)

## Authors & Contributors

FreeIntv was created by David Richardson.
freeintv was created by David Richardson.
The PSG and STIC emulation was made closer to hardware and optimized by Oscar Toledo G. (nanochess), who also added save states.

The Intellivoice code has been contributed by Joe Zbiciak (author of jzintv), and adapted by Oscar Toledo G. (nanochess)
Expand All @@ -18,14 +18,14 @@ The Intellivoice code has been contributed by Joe Zbiciak (author of jzintv), an

## Installation

**Step 1: Install FreeIntv Core**
**Step 1: Install freeintv Core**
- Place the compiled core file for your platform into RetroArch's `cores/` directory:
- Windows: `FreeIntv_libretro.dll`
- Linux: `FreeIntv_libretro.so`
- macOS: `FreeIntv_libretro.dylib`
- Windows: `freeintv_libretro.dll`
- Linux: `freeintv_libretro.so`
- macOS: `freeintv_libretro.dylib`

**Step 2: Install the Core Info File**
- Copy `FreeIntv_libretro.info` to RetroArch's `info/` directory
- Copy `freeintv_libretro.info` to RetroArch's `info/` directory
- ⚠️ The filename must match the core filename exactly (excluding the file extension)

**Step 3: Add BIOS Files**
Expand All @@ -34,11 +34,11 @@ The Intellivoice code has been contributed by Joe Zbiciak (author of jzintv), an
- `grom.bin` (Graphics ROM)

**Step 4: Launch Games**
- Load an Intellivision ROM through RetroArch using the FreeIntv core
- Load an Intellivision ROM through RetroArch using the freeintv core

## Enabling Onscreen Interactive Overlays

The FreeIntv core features onscreen interactive keypad overlays that display custom controller graphics directly on screen, allowing touch or mouse input.
The freeintv core features onscreen interactive keypad overlays that display custom controller graphics directly on screen, allowing touch or mouse input.

### To Enable the Feature:

Expand Down
22 changes: 11 additions & 11 deletions USER_GUIDE.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# FreeIntv with Onscreen Interactive Keypad Overlays
# freeintv with Onscreen Interactive Keypad Overlays

## Overview
FreeIntv is a libretro emulation core for the Mattel Intellivision designed to be compatible with joypads from the SNES era forward even if they originally required a number pad. This guide explains how to set up and use the core in RetroArch, including instructions for overlay PNG files.
freeintv is a libretro emulation core for the Mattel Intellivision designed to be compatible with joypads from the SNES era forward even if they originally required a number pad. This guide explains how to set up and use the core in RetroArch, including instructions for overlay PNG files.

**Current Version**: Enhanced with onscreen interactive keypad overlays for Android, Windows, and Linux (November 24, 2025)

## Authors & Contributors

FreeIntv was created by David Richardson.
freeintv was created by David Richardson.
The PSG and STIC emulation was made closer to hardware and optimized by Oscar Toledo G. (nanochess), who also added save states.

The Intellivoice code has been contributed by Joe Zbiciak (author of jzintv), and adapted by Oscar Toledo G. (nanochess)
Expand All @@ -18,22 +18,22 @@ The Intellivoice code has been contributed by Joe Zbiciak (author of jzintv), an

## Requirements
- RetroArch (latest recommended)
- FreeIntv core (`FreeIntv_libretro.so`, `.dll`, or `.dylib`)
- freeintv core (`freeintv_libretro.so`, `.dll`, or `.dylib`)
- Intellivision BIOS files: `exec.bin`, `grom.bin` (place in RetroArch `system` folder)
- Game ROMs (Intellivision format)

---

## Installation

**Step 1: Install FreeIntv Core**
**Step 1: Install freeintv Core**
- Place the compiled core file for your platform into RetroArch's `cores/` directory:
- Windows: `FreeIntv_libretro.dll`
- Linux: `FreeIntv_libretro.so`
- macOS: `FreeIntv_libretro.dylib`
- Windows: `freeintv_libretro.dll`
- Linux: `freeintv_libretro.so`
- macOS: `freeintv_libretro.dylib`

**Step 2: Install the Core Info File**
- Copy `FreeIntv_libretro.info` to RetroArch's `info/` directory
- Copy `freeintv_libretro.info` to RetroArch's `info/` directory
- ⚠️ The filename must match the core filename exactly (excluding the file extension)

**Step 3: Add BIOS Files**
Expand All @@ -42,13 +42,13 @@ The Intellivoice code has been contributed by Joe Zbiciak (author of jzintv), an
- `grom.bin` (Graphics ROM)

**Step 4: Launch Games**
- Load an Intellivision ROM through RetroArch using the FreeIntv core
- Load an Intellivision ROM through RetroArch using the freeintv core

---

## Enabling Onscreen Interactive Overlays

The FreeIntv core features onscreen interactive keypad overlays that display custom controller graphics directly on screen, allowing touch or mouse input.
The freeintv core features onscreen interactive keypad overlays that display custom controller graphics directly on screen, allowing touch or mouse input.

### To Enable the Feature:

Expand Down
2 changes: 1 addition & 1 deletion jni/Android.mk
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ ANDROID_SOURCES_C := \
../src/deps/libretro-common/time/rtime.c

include $(CLEAR_VARS)
LOCAL_MODULE := FreeIntv
LOCAL_MODULE := retro
LOCAL_SRC_FILES := $(ANDROID_SOURCES_C)
LOCAL_C_INCLUDES := $(INCLUDE_DIRS)
LOCAL_CFLAGS := -DANDROID -D__LIBRETRO__ -DHAVE_STRINGS_H -DRIGHTSHIFT_IS_SAR
Expand Down
Loading
Loading