Skip to content

frankmilliron/play.vids.system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Play.Vids.system

Play video files in all Apple II graphics modes.

Copyright © 2022 by Frank Milliron, Lombard $oftware

Includes a customized version of ProRWTS2 by Peter Ferrie

File Format

Video files must have ProDOS type $5B (ANM / Animation) and aux type $100X, where the last digit determines the resolution:

Aux Type Name Resolution Colors Models Frame Size
$1001 Low-resolution (GR) 40x48 16 all 0x400
$1002 Double-low-resolution (DGR) 80x48 16 IIe/IIc/IIɢꜱ 0x400 aux, 0x400 main
$1003 High-resolution (HGR) 140x1921 6 all 0x2000
$1004 Double-high-resolution (DHGR) 140x192 16 IIe/IIc/IIɢꜱ 0x2000 aux, 0x2000 main

Video files are sequences of frames; each frame is a copy of the appropriate Apple II video memory for that resolution. This includes the "screen holes" (portions of the video memory that is not displayed) and is not linearized. For the double-resolution modes which have a horizontally interlaced display, the auxiliary memory half of each frame comes first, as is the standard for image files.

Video files must be ProDOS "tree" files, which means they must be more than 128K in length, up to a maximum of 16MB.

On the Apple IIe/IIc/IIɢꜱ, playback is throttled to 10fps.

Building

Build and install the ACME assembler from https://github.com/meonwax/acme

Run acme play.vids.system.a to assemble. This generates BASIS.SYSTEM#ff0000

Packaging

Build and install Cadius from https://github.com/mach-kernel/cadius

  1. Create a new large (e.g. 32MB) disk image:
    cadius CREATEVOLUME vids.hdv VIDS 32MB
    
  2. Place PRODOS and QUIT.SYSTEM from https://prodos8.com/ on the disk image:
    cadius EXTRACTFILE ProDOS_2_4_3.po /PRODOS.2.4.3/PRODOS .
    cadius EXTRACTFILE ProDOS_2_4_3.po /PRODOS.2.4.3/QUIT.SYSTEM .
    cadius ADDFILE vids.hdv PRODOS#FF0000
    cadius ADDFILE vids.hdv QUIT.SYSTEM#FF0000
    
  3. Place BASIS.SYSTEM on the disk image:
    cadius ADDFILE vids.hdv BASIS.SYSTEM#FF0000
    
  4. Place video files on the disk image:
    cadius ADDFILE vids.hdv examples/DGR#5B1002
    cadius ADDFILE vids.hdv examples/DHGR#5B1004
    cadius ADDFILE vids.hdv examples/GR#5B1001
    cadius ADDFILE vids.hdv examples/HGR#5B1003
    

Now when a user boots vids.hdv in an emulator, Bitsy Bye will present a menu of files. If the user selects a video file it will automatically play, and return to the menu when complete.

Keyboard Controls

  • Space - Pause/Resume
  • - Skip forwards several frames
  • - Skip backwards several frames
  • Esc - Quit back to ProDOS

The 1 and 2 keys can be used to force single/double resolution, although this is mainly for debugging.

Footnotes

  1. High-resolution graphics mode on the Apple II has a resolution of 280x192 pixels on a monochrome display, but on a color display it has an effective color resolution of only 140x192. In addition, there are complicated limitations on what colors can be adjacent.

About

Multi-Format Video Playback Engine for Apple II

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors