TITLE TIDE.TXT PROMPT A typographic experiment: a living sea rendered entirely in typewriter characters on continuous-feed green-bar printer paper. Swell, breaking crests, foam, spray, rain, a horizon, a small boat, gulls and a lighthouse are all made of glyphs chosen by density and shape, recomputed every frame from a wave simulation, and printed in monospace. Concept: the oldest computer art form given real fluid motion and typographic care. Mood: wry, nostalgic, mesmerising; a mainframe daydreaming about the coast. Palette: paper white #F3F6EC with alternating pale green bars #D6E8D0 (every three text rows, as on fan-fold listing paper), ink black #1B1B1B for characters (and for the printer platen seen behind the paper and through the sprocket holes), and sea-green ink #1F6F5C as a second ribbon colour used for the deep water glyphs and headings. Light page. Paper details: tractor-feed sprocket holes down both margins (one per three lines), perforation lines at the sheet edges, a faint pre-printed line number column on both sides and the tiny legend "FORM 1403-A" set vertically in the margin; ribbon unevenness (ink knocked back in soft vertical bands and specks) and a barely misaligned row now and then. Rendering: one fixed character grid sized to the viewport and filling the whole sheet (about 150-200 columns x 56-66 rows on desktop; 54-60 columns on phones with larger glyphs), rendered to a canvas in a monospace stack (Menlo, Consolas, "Courier New"). Every glyph is cached once on an offscreen atlas in each ink (black, overstruck bold black, green, bold green, faint black, faint green, and paper-coloured for inversion) and blitted per cell. For each scene cell compute a value and choose a glyph: sky: blank, with sparse "." and "'" for distant rain and "~" wisps for clouds built from slow noise; horizon line of "_" and "-"; sea: a height field from five summed, sharpened, wind-skewed travelling waves in perspective; glyph by slope and depth: troughs "_" "." ",", rising faces "/" and backs "\", crests "^" "~" "=", deep water in green ":" ";" "=" "#" by darkness, breaking crests and foam "@" "%" "&" "*" "o" "°" decaying to "." as foam dissipates; spray flung upward as "'" "`" "," particles. Nearer waves are taller, longer and use bolder glyphs (perspective by row, with tall near water displacing what is behind it), giving real depth. Shore at the bottom rows: waves run up a beach of ":" and "." with a foam fringe and recede leaving a wet line of "_" that dries. Objects in glyphs: a small boat (a "\____|____/" hull, a "|" mast and a stack of ")" sails) that rides the swell, pitching by choosing different sprites according to local slope and mirroring with the wind; a lighthouse on a rock at the right built from bracket, bar and "#" characters with green "=" bands, and at night a beam of "-" and "=" characters sweeping across the sky and a starburst when it points at the viewer; three gulls ("v" and "~v~") gliding by day; a bell buoy "(o)" that prints DING when it rocks; occasionally a whale spout "( )" far off; a sun placed by the real hour, or a moon at night. Interaction: pointer/finger position controls the weather: left-right is wind direction and strength (waves lean and steepen, spray flies, rain slants, the boat turns), up-down is sea state from flat calm at the bottom (a glassy sheet of "_" and "-" with a perfect reflection of the lighthouse and the boat) to full gale at the top (towering faces of "/" and "\" and foam, rain filling the sky as streaks, lightning flashing the whole sheet to inverted colours for a frame, a typed "!" thunderclap). Clicking or tapping drops a stone: it falls, and rings of "(" ")" "-" "_" spread on the water (a stone thrown at a gull gets "AWK!"). Typing any characters on the keyboard launches them as flotsam: the typed characters fall into the sea and bob on the waves as themselves in a small clearing of water, drifting ashore to form a tide line of the viewer's words on the beach (the newest three lines are kept; older ones dry out and crumble to dots): the signature moment: your sentence riding the swell, legible, rising and falling letter by letter. Enter ends a line, Backspace takes a letter back. Before the viewer types, the machine casts "WISH YOU WERE HERE" itself, and "HELLO, WORLD" is already lying on the beach. Time of day follows the real clock (the paper stays light; at night the sky fills with "*" and "." stars and the lighthouse beam operates), with a printed on-paper button and the F2 key (labelled PF2, mainframe style, so that every letter key stays free for casting) to toggle the watch. Typographic frame: the page is presented as a printout: a header block printed at the top in caps as a job banner: "//TIDE JOB (SEA),'COAST WATCH',CLASS=A", date and time of the real clock ticking in place, then a ruled line of "=" and the title in huge block letters made of "#" characters in green ink (a banner font defined in the page: "TIDE.TXT", scaled to fill the sheet width), with a small printed glyph legend beside it where there is room. Beneath the sea, a printed status footer updates in place like a line printer, with a visible print head: "WIND SW 6 · SEA STATE 5 · SWELL 2.4 M · VIS GOOD · BOAT: HOLDING", a shipping-forecast-style line for the invented sea area Greenbar Bight that changes with the weather, and a flotsam count. The designed hint is a printed line: "MOVE TO CHANGE THE WEATHER. TYPE TO CAST WORDS ADRIFT." On touch devices and narrow sheets a small on-paper text field (CAST>) lets the viewer cast words. Entrance: the paper feeds up from the bottom with a stepping motion and the header prints left to right line by line (a print-head sweep), then the sea prints row by row and starts moving. Optional sound toggle (off by default; printed button or F4, labelled PF4): surf from filtered noise that follows the sea state, a dot-matrix buzz whenever the print head is working, a buoy bell, a stone plop and thunder. Reduced motion: no feed or print animation, the sea updates twice a second with small amplitude; no lightning. Performance: glyph atlas cached on an offscreen canvas and blitted per cell for speed; grid capped; device pixel ratio capped at 2; paused when hidden. DESCRIPTION A sheet of green-bar fan-fold listing paper steps up out of a dark platen, a print head sweeps a JCL job banner and a huge "#" banner title across it, and then the rest of the sheet prints a seascape that will not hold still: a horizon, cloud wisps, a lighthouse on its rock, a little sailing boat, a bell buoy and a beach, every one of them made of typewriter characters and recomputed each frame from a perspective wave field in two ribbon colours, black for faces, crests and foam and sea-green for deep water. Moving the pointer is the weather: down for a glassy calm with mirror reflections, up for a gale with towering slashes, slanting rain, inverted-sheet lightning and a typed thunderclap, sideways for the wind. Whatever the viewer types falls from the sky into the water and rides the swell as a legible sentence, each letter on its own column of the wave, until it washes up as a tide line of their words. A footer in the voice of a shipping forecast for "Greenbar Bight" reprints itself in place as conditions change. VISUAL TECHNIQUES - Single canvas character grid covering the whole sheet, drawn by blitting cells from an offscreen glyph atlas with eight ink variants (overstrike bold, faint, two ribbon colours, inverse) - Height field of five summed travelling waves with crest sharpening, wind skew, deep-water dispersion and per-row perspective; glyphs chosen from slope, height, depth and a decaying foam buffer - Screen-space displacement lookup so tall near water occludes what is behind it - Procedural sky: value-noise cloud wisps, hashed twinkling stars, lane-based slanted rain, clock-positioned sun and moon - Sprite sets in ASCII for boat (pitched and mirrored), lighthouse, buoy, gulls and whale, with dithered mirror reflections in calm water - Beach swash simulation with foam fringe, wet line memory that dries, and a stacked tide line of typed words that crumbles with age - Paper drawn in code: green bars with hairlines, sprocket holes, micro-perforations, pre-printed line numbers, margin form legend, grain and fibres - Ribbon wear mask composited with destination-out, and occasional sub-pixel row misalignment - Entrance choreography: stepped paper feed, print-head sweep per line, in-place reprinting of changed footer text - Full-sheet colour inversion for lightning with a glyph bolt and typed "!" thunder - Web Audio surf, hiss, dot-matrix buzz, bell, plop and thunder synthesised from noise and oscillators (off by default) INTERACTION MODEL Move the pointer (or drag a finger) over the sheet: horizontal position sets wind direction and strength, vertical position sets the sea state from flat calm at the bottom to full gale at the top; the sea, sky, boat, rain, forecast footer and surf sound all follow with eased lag. Click or tap to drop a stone and watch its rings spread; aim at a gull for a reply. Type on the keyboard (or in the CAST> field on touch and narrow screens) to cast characters adrift: they drop into the water, bob letter by letter on the swell, drift shoreward and are left on the beach as a tide line; Enter ends a line and Backspace retrieves a letter. The printed buttons, or F2 and F4, switch between day and night watch (stars and the sweeping lighthouse beam) and turn sound on or off. With reduced motion preferred the sheet appears fully printed and the sea redraws gently twice a second without lightning.