Wiznet makers

jaden

Published January 30, 2026 ©

107 UCC

18 WCC

57 VAR

0 Contests

0 Followers

0 Following

Original Link

X68000 joy stick

X68000 joy stick

COMPONENTS
PROJECT DESCRIPTION

 

How to Add Ethernet to Sharp X68000 Using a Joystick Port?

 

저자 소개

yunk (@yunkya2) 는 Sharp X68000을 중심으로
네트워크 및 시스템 소프트웨어를 개발해 온 개인 개발자이다.

X68000용 smbfs / smbclient 개발자로 잘 알려져 있으며,
레거시 하드웨어 환경에서 SMB 파일 공유를 가능하게 하는 데 집중해 왔다.

이 프로젝트는
“내가 만든 네트워크 소프트웨어를 실제 X68000에서 사용할 수 없다”는
현실적인 문제의식에서 출발했다.
그 결과 하드웨어 인터페이스와 TCP/IP 드라이버를
모두 직접 설계하는 방향을 선택하게 되었다.

 

프로젝트 개요

항목사양
CPUMotorola 68000 @ 10 MHz
RAM1 MB (확장 가능)
운영체제Human68k
확장성전용 확장 슬롯
I/O 포트키보드, 마우스, 조이스틱(디지털 I/O)
네트워크기본 미지원

Sharp X68000은 1987년 Sharp에서 출시한 일본산 고급형 16비트 퍼스널 컴퓨터로,
Motorola 68000 CPU와 뛰어난 그래픽·사운드 성능을 바탕으로 게임 개발, 음악, 그래픽 작업에 널리 사용된 클래식 플랫폼이다.
그러나 설계 시점상 현대적인 네트워크 기능은 기본적으로 제공되지 않는다.

이 프로젝트는 Sharp X68000의 조이스틱 포트를 범용 디지털 I/O(GPIO)처럼 활용하여,
소프트웨어 비트뱅잉 SPI 방식으로 WIZnet W5500 이더넷 컨트롤러를 제어하고
전용 LAN 카드 없이 TCP/IP 네트워크 연결을 구현한 개인 개발 프로젝트이다.
W5500의 하드웨어 TCP/IP 오프로딩 덕분에 telnet과 smbfs 같은 표준 네트워크 소프트웨어를
개조 없이 그대로 사용할 수 있다.

X68000은 멀티미디어 성능을 중시한 설계였지만,
네트워크가 표준화되기 이전의 시스템이기 때문에
이더넷 확장은 전용 하드웨어에 크게 의존한다.

조이스틱 포트 제어 방식은 **TNB製作所(たんぼ)**가 공개한
X68000용 조이스틱 포트 활용 프로젝트를 기술적 기반으로 삼았으며,
이를 네트워크 용도로 확장한 것이 본 프로젝트의 출발점이다.

초기 단계에서는 Adafruit사의 W5500 이더넷 모듈을 사용해
조이스틱 포트 기반 SPI 통신과 네트워크 동작을 검증하였다.

이후 동작이 안정적으로 확인된 뒤,
W5500-Lite 모듈을 직접 장착할 수 있는 전용 PCB 형태로 설계를 발전시켜
실제 사용과 재현이 가능한 하드웨어로 완성되었다.

W5500의 하드웨어 TCP/IP 오프로딩 덕분에
telnet, smbfs와 같은 X68000 표준 네트워크 소프트웨어를
개조 없이 그대로 사용할 수 있으며,
이 프로젝트는 현재 **국내 X68000 사용자 커뮤니티(카페)**에서도
실제 사례로 소개되며 관심을 받고 있다.

프로젝트 배경: 왜 조이스틱 포트였는가?

기존 X68000의 네트워크 확장은 Nereid와 같은 확장 슬롯용 LAN 카드에 의존했다.


하지만 이러한 하드웨어는 현재 매우 희귀하고 고가이며,
현실적으로 재현과 보급이 거의 불가능한 상황이다.

반면 조이스틱 포트는 CPU가 직접 제어 가능한
다수의 디지털 신호선을 제공하는 I/O 인터페이스이다.

이 프로젝트는 조이스틱 포트를 GPIO처럼 재해석하여
소프트웨어로 SPI 신호(MOSI, MISO, SCK, CS)를 생성한다.
비트뱅잉 방식으로 인해 전송 속도는 제한되지만,
시스템 버스를 수정하지 않고도 최신 네트워크 칩과의 연동이 가능해진다.

 

시스템 아키텍처 개요

왜 WIZnet W5500인가?

이 프로젝트에서 W5500은 단순한 이더넷 컨트롤러가 아니라 핵심 구성 요소이다.
X68000은 CPU 성능과 메모리가 제한적이기 때문에,
소프트웨어 TCP/IP 스택을 처리하기에는 부담이 크다.

W5500은 TCP, UDP, 소켓 관리, 체크섬 계산 등
모든 네트워크 프로토콜 처리를 하드웨어에서 수행한다.
그 결과 비트뱅잉 SPI와 같은 느린 인터페이스 환경에서도
실사용 가능한 네트워크 구성이 가능해진다.

FAQ

Q: 왜 W5500을 사용했나요?
A: 하드웨어 TCP/IP 스택을 통해 X68000의 CPU 부하를 최소화할 수 있기 때문이다.

Q: W5500은 어떻게 연결되나요?
A: 조이스틱 포트를 GPIO처럼 사용하여 소프트웨어로 SPI 신호를 생성해 연결한다.

Q: 어떤 네트워크 프로그램을 사용할 수 있나요?
A: telnet, smbfs 등 inetd.x API를 사용하는 기존 네트워크 프로그램을 그대로 사용할 수 있다.


How to Add Ethernet to Sharp X68000 Using a Joystick Port?

 

About the Author

yunk (@yunkya2) is an independent developer focused on networking and system-level software for the Sharp X68000 platform.

He is best known for developing smbfs and smbclient for X68000, which enable SMB file sharing on legacy hardware. This project originated from a practical limitation: the inability to use his own networking software on real hardware due to the scarcity of Ethernet expansion cards.

As a result, yunk chose to design both the hardware interface and a dedicated TCP/IP driver from scratch, prioritizing compatibility with the existing X68000 networking ecosystem.

 

Project Overview

The Sharp X68000 is a Japanese high-end 16-bit personal computer released in 1987, based on the Motorola 68000 CPU and well known for its advanced graphics and sound capabilities. It was widely used for game development, music production, and graphics work. However, due to the era in which it was designed, modern networking functionality was never built into the system.

This project enables Ethernet connectivity on the Sharp X68000 by controlling its joystick port as a general-purpose digital I/O interface. A software bit-banged SPI implementation is used to drive the WIZnet W5500 Ethernet controller, making TCP/IP networking possible without any dedicated LAN expansion card.

The joystick port control approach is based on earlier projects created by TNB製作所 (TNB), who demonstrated that the X68000 joystick port could be repurposed for peripheral control. Building on that foundation, this project extends the concept specifically toward Ethernet networking.

During the initial development phase, an Adafruit W5500 Ethernet module was used to verify SPI communication and basic network operation. 

After confirming stable functionality, the design evolved into a custom PCB that accepts a W5500-Lite module, resulting in a compact, reproducible, and practical hardware solution.

Thanks to the W5500’s hardware TCP/IP offloading, standard X68000 networking applications such as telnet and smbfs can run without modification. This project has also been introduced and discussed within Korean X68000 user communities, where it has gained attention as a realistic modern networking solution for legacy hardware.

 

Sharp X68000 Technical Summary

ItemSpecification
CPUMotorola 68000 @ 10 MHz
RAM1 MB (expandable)
OSHuman68k
ExpansionProprietary expansion slots
I/O PortsKeyboard, Mouse, Joystick (digital I/O)
NetworkingNot built-in

The X68000 was designed for high-performance multimedia applications, but Ethernet expansion depends heavily on proprietary hardware due to the lack of standardized networking interfaces.

 

Project Background: Why the Joystick Port?

Traditional Ethernet expansion for the X68000 relied on proprietary LAN cards such as Nereid, which are now rare, expensive, and difficult to reproduce. This makes them impractical for most modern users.

 

In contrast, the joystick port provides multiple digital signal lines that can be directly controlled by the CPU. Building on prior work by TNB製作所, this project reinterprets the joystick port as a GPIO interface and generates SPI signals (MOSI, MISO, SCK, CS) entirely in software.

Although this bit-banged SPI approach limits throughput, it avoids any modification of the main system bus and enables reliable communication with modern Ethernet controllers using only existing ports.

 

System Architecture Overview

 

 

Why WIZnet W5500?

In this project, the W5500 is not merely an Ethernet controller but the key enabler. The X68000 has limited CPU performance and memory, making a full software TCP/IP stack impractical—especially over a slow, software-generated SPI interface.

The W5500 offloads TCP, UDP, socket management, retransmission, and checksum processing entirely to hardware. This makes practical networking possible even under severe system constraints and allows the X68000 CPU to focus on application-level tasks.

 

FAQ

Q: Why use the W5500 instead of a software TCP/IP stack?
A: Hardware TCP/IP offloading significantly reduces CPU load and memory usage on the X68000, making stable networking feasible.

Q: How is the W5500 connected to the X68000?
A: Through a software-generated SPI interface implemented via the joystick port acting as GPIO.

Q: What applications are supported?
A: Existing inetd.x-based applications such as telnet and smbfs run without modification.

Documents
Comments Write