Skip to content
This repository was archived by the owner on May 1, 2026. It is now read-only.

ewinters-ca-spark/3d-Jukebox

Repository files navigation

3D Jukebox (VB6, 1998)

This repository contains an old-school 3D Jukebox application written in Visual Basic 6 in 1998. It was designed with a very specific vibe in mind: a full-screen “kiosk” experience where you browse albums as 3D CD cases and queue tracks with simple controls — the kind of project you would build for a bedroom PC, a LAN-party corner, a small venue, or just for the fun of pushing VB6 far beyond its comfort zone.

Behind the scenes, the UI is rendered using the TrueVision3D engine on top of DirectX 8, mixing a 3D scene (CD models and animations) with 2D overlays for text and UI elements.

What it does (high level)

  • 3D album browser: the main menu is a 3D scene where CDs are brought forward, rotated, and placed back, with artist/album info shown as overlay text.
  • MP3 playback + queue: selected tracks are queued and played (using the Windows Media Player ActiveX control).
  • Album library stored in Access: the music catalog and metadata live in Jukebox.mdb.
  • Import new albums (admin mode): the app can copy MP3 files from a folder structure (originally from a CD directory) into a local library, generate textures for new covers, and add the album to the database.
  • “AccessCD” login concept: users were meant to authenticate by inserting a custom “Jukebox AccessCD” that contains a small ID file, plus entering a password.
  • Small extra experiments: voice prompts / text-to-speech and a simple network “dedication” (message) flow using Winsock.

A bit of history

This is very much a product of its time:

  • VB6 as a glue language: rapid UI iteration and lots of COM/ActiveX components.
  • DirectX 8 + TrueVision3D: a pragmatic way to get real-time 3D in a “normal” Windows app without writing everything in C++.
  • Physical media workflows: CDs, cover images, and even CD burning support were common building blocks for hobby projects and custom kiosks.

It’s not a modern codebase, but it is a nice snapshot of how people built ambitious multimedia apps on Windows in the late 1990s.

Project structure (quick tour)

  • JukeBox.vbp: VB6 project file (lists dependencies like DirectX 8 and TrueVision3D).
  • Albums_List.frm: main 3D jukebox experience (startup 3D loop, rendering, queueing).
  • Log_IN.frm: login / “AccessCD” flow, user creation, CD burning integration.
  • Module1.bas: global engine objects and shared types for CDs/tracks/users.
  • Funzioni_Connessione.bas: network “dedication” message parsing and sync logic.
  • Jukebox.mdb: Access database holding albums/tracks/users (DAO).
  • CD.3DS, CDCover.3ds, textures and bitmaps: 3D assets used by the UI.

Notes for running it today

This project targets Visual Basic 6 and depends on a set of legacy components (DirectX 8 VB type library, TrueVision3D, and various ActiveX/COM libraries). Running it on a modern Windows setup may require:

  • A working VB6 IDE (or a compatible build environment)
  • Registering legacy OCX/DLL components
  • Adjusting hardcoded paths used by the original kiosk setup

That said, the goal of this repository is primarily preservation and documentation of the project.

License

No license has been chosen yet. If you plan to make this public, consider adding a LICENSE file (for example MIT) and clarifying whether bundled third‑party binaries/assets can be redistributed.

About

A 1998 VB6 3D jukebox kiosk powered by TrueVision3D (DirectX 8): browse CDs in 3D and play MP3s.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors