This commit is contained in:
4am 2018-02-24 15:25:41 -05:00
parent 26d3d39ba2
commit 38f1cf449f
38 changed files with 568 additions and 304 deletions

View File

@ -19,7 +19,7 @@ for f in sys.argv[1:]:
l = l + ' '*(linelength-len(l))
buffer.write(l + "\n")
if l.startswith("[info]"):
linelength = 20
linelength = 64
elif l.startswith("[description]"):
linelength = 77
with open("build/text/_FileInformation.txt", "w") as infobuff:

View File

@ -1,3 +1,212 @@
0 1 2 3 4 5 6 7
01234567890123456789012345678901234567890123456789012345678901234567890123456789
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][Pitch Dark]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]] 0
_________________ __________ _____________ 2
|_<_Previous game_| |_Settings_| |_Next_game_>_|
________________________________________________________________________________ 5
_____________
WISHBRINGER: THE MAGICK STONE OF DREAMS |__PLAY GAME__| 8 or |_RESUME GAME_|
by Brian Moriarty _____________
Copyright (c) 1985 Infocom, Inc. |_Box artwork_| 10 may disappear if no artwork (e.g. Mini-Zork)
Genre: Fantasy _____________
Difficulty: OOooo __________ |_InvisiClues_| 12 may disappear if no clues (e.g. Mini-Zork)
Release 69 / Serial Number 850920 |_Versions_| may disappear if no versions (e.g. Cutthroats)
[------------------------------------------------------------------------------] 15
[------------------------------------------------------------------------------]
| It's an ordinary day in your ordinary little town, and you've been ^
| performing your ordinary mail clerk's duties in an altogether ordinary way. |
| But there's something quite extraordinary in today's mail. It's a ransom |
| note for a kidnapped cat, and it will lead you through unbelievably |
| harrowing adventures to Wishbringer, a stone possessing undreamt-of powers. |
| For though the note in question is addressed to someone in your ordinary |
| little town, it's postmarked for Special Delivery to Parts Unknown. And its v
|______________________________________________________________________________|
Keys:
P previous game
S settings
N next game
G PLAY GAME / RESUME GAME
C InvisiClues
B Box artwork
V Versions
A MIND FOREVER VOYAGING
by Steve Meretzky
Copyright (c) 1985 Infocom, Inc.
Genre: science fiction
Difficulty: OOOOo
Release 79 / Serial number 851122
BALLYHOO
by Jeff O'Neill
Copyright (c) 1986 Infocom, Inc.
Genre: mystery
Difficulty: OOOoo
Release 97 / Serial number 851218
BEYOND ZORK: THE COCONUT OF QUENDOR
by Brian Moriarty
Copyright (c) 1987 Infocom, Inc.
Genre: Fantasy
Difficulty: OOOoo
Release 57 / Serial Number 871221
BORDER ZONE: A GAME OF INTRIGUE
by Marc Blank
Copyright (c) 1987 Infocom, Inc.
Genre: espionage
Difficulty: OOOOo
Release 9 / Serial number 871008
BUREAUCRACY: A PARANOID FANTASY
Copyright (c) 1987 Infocom, Inc.
Release 116 / Licence Number 870602
CUTTHROATS
Copyright (c) 1984 Infocom, Inc.
Release 23 / Serial number 840809
DEADLINE: AN INTERLOGIC MYSTERY
by Marc Blank
Copyright (c) 1982 Infocom, Inc.
Release 27 / Serial number 831005
ENCHANTER
Copyright (c) 1983 Infocom, Inc.
Release 29 / Serial number 860820
THE HITCHHIKER'S GUIDE TO THE GALAXY
Copyright (c) 1984 Infocom, Inc.
Release 59 / Serial number 851108
HOLLYWOOD HIJINX
Copyright (c) 1986 Infocom, Inc.
Release 37 / Serial Number 861215
INFIDEL
Copyright (c) 1983 Infocom, Inc.
Release 22 / Serial number 830916
LEATHER GODDESSES OF PHOBOS
Copyright (c) 1986 Infocom, Inc.
Release 59 / Serial number 860730
THE LURKING HORROR
Copyright (c) 1987 Infocom, Inc.
Release 221 / Serial number 870918
MINI-ZORK I: THE GREAT UNDERGROUND EMPIRE
Copyright (c) 1988 Infocom, Inc.
Release 34 / Serial number 871124
MOONMIST
Copyright (c) 1986 Infocom, Inc.
Release number 9 / Serial number 861022
NORD AND BERT COULDN'T MAKE HEAD OR TAIL OF IT
Copyright (c) 1987 Infocom, Inc.
Release 19 / Serial number 870722 / Interpreter 2 Version H
PLANETFALL
by Steve Meretzky
Copyright (c) 1983 Infocom, Inc.
Genre: science fiction
Difficulty: OOOoo
Release 37 / Serial number 851003
PLUNDERED HEARTS
Copyright (c) 1987 Infocom, Inc.
Release 26 / Serial number 870730
SEASTALKER: <YOUR NAME> AND THE ULTRAMARINE BIOCEPTOR
Copyright (c) 1984 Infocom, Inc.
Release 16 / Serial number 850603
SHERLOCK: THE RIDDLE OF THE CROWN JEWELS
Copyright (c) 1987 Infocom, Inc.
Release 26 / Serial Number 880127
SORCERER
Copyright (c) 1984 Infocom, Inc.
Release 18 / Serial number 860904
SPELLBREAKER
Copyright (c) 1985 Infocom, Inc.
Release 87 / Serial number 860904
STARCROSS
Copyright (c) 1982 Infocom, Inc.
by Dave Lebling
Release 17 / Serial number 821021
STATIONFALL
Copyright (c) 1987 Infocom, Inc.
Release 107 / Serial number 870430
SUSPECT
Copyright (c) 1984 Infocom, Inc.
Release 14 / Serial number 841005
SUSPENDED
Copyright (c) 1983 Infocom, Inc.
by Michael Berlyn
Release 8 / Serial number 840521
TRINITY
Copyright (c) 1986 Infocom, Inc.
Release 12 / Serial Number 860926
WISHBRINGER: THE MAGICK STONE OF DREAMS
Copyright (c) 1985 Infocom, Inc.
Release 69 / Serial Number 850920
THE WITNESS
by Stu Galley
Copyright (c) 1983 Infocom, Inc.
Genre: mystery
Difficulty: OOOoo
Release 22 / Serial number 840924
ZORK I: THE GREAT UNDERGROUND EMPIRE
by Dave Lebling and Marc Blank
Copyright (c) 1981 Infocom, Inc.
Release 88 / Serial number 840726
ZORK II: THE WIZARD OF FROBOZZ
by Dave Lebling and Marc Blank
Copyright (c) 1981 Infocom, Inc.
Release 48 / Serial number 840904
ZORK III: THE DUNGEON MASTER
by Dave Lebling and Marc Blank
Copyright (c) 1982 Infocom, Inc.
Release 17 / Serial number 840727
ZORK: THE UNDISCOVERED UNDERGROUND
by Marc Blank and Mike Berlyn
Copyright (c) 1997 Activision Inc.
Release 16 / Serial number 970828
0 1 2 3 4 5 6 7
01234567890123456789012345678901234567890123456789012345678901234567890123456789
[Pitch Dark]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]][ Exit ]

View File

@ -1,10 +1,10 @@
[info]
A MIND FOREVER
VOYAGING
1985 Sci-Fi
Difficulty: ^^^^^&
A MIND FOREVER VOYAGING
by Steve Meretzky
Copyright 1985 Infocom, Inc.
Genre: science fiction
Difficulty: ^^^^^&
Release 79 / Serial number 851122
[description]

View File

@ -1,10 +1,10 @@
[info]
BALLYHOO
1986 Mystery
Difficulty: ^^^&&
BALLYHOO
by Jeff O'Neill
Copyright 1986 Infocom, Inc.
Genre: mystery
Difficulty: ^^^&&
Release 97 / Serial number 851218
[description]

View File

@ -1,10 +1,10 @@
[info]
BEYOND ZORK
1987 Fantasy
Difficulty: ^^^&&
BEYOND ZORK: THE COCONUT OF QUENDOR
by Brian Moriarty
Copyright 1987 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^&&
Release 57 / Serial Number 871221
[description]

View File

@ -1,25 +1,25 @@
[info]
BORDER ZONE
1987 Espionage
Difficulty: ^^^^&
BORDER ZONE: A GAME OF INTRIGUE
by Marc Blank
Copyright 1987 Infocom, Inc.
Genre: espionage
Difficulty: ^^^^&
Release 9 / Serial number 871008 / Interpreter 2 Version F
[description]
Where the Iron Curtain divides East and West, the frontier is a no man's
land between freedom and captivity, a place where moments lost or
precautions not taken exact a toll in men's lives. In Border Zone, you
Where the Iron Curtain divides East and West, the frontier is a no man's
land between freedom and captivity, a place where moments lost or
precautions not taken exact a toll in men's lives. In Border Zone, you
cross this barrier not once, but three times, as three different characters
in a fast-paced story of international intrigue
The pulse-pounding tension of espionage is heightened by the addition of
real time, which ticks on regardless of your actions. As you race against
the clock to complete your missions, you'll find yourself caught up in a
spine-tingling adventure that's far more suspenseful than any spy thriller
you've ever read.
in a fast-paced story of international intrigue.
The pulse-pounding tension of espionage is heightened by the addition of
real time, which ticks on regardless of your actions. As you race against
the clock to complete your missions, you'll find yourself caught up in a
spine-tingling adventure that's far more suspenseful than any spy thriller
you've ever read.
The story begins on the train to Litzenburg, a peaceful country just
outside the Iron Curtain. In the border town of Ostnitz, Constitution day
festivities include a speech by the American ambassador. But plans are
@ -30,27 +30,25 @@ Difficulty: ^^^^&
assassination plot, their lives intertwining as each carries out his
perilous assignment.
You'll see the story from three viewpoints, as you step into the
shoes of a different major character in each of the three chapters of
Border Zone. Set in separate locations on or near the border, the
chapters are complete stories in themselves, each with its own
riveting conclusion.
You'll see the story from three viewpoints, as you step into the shoes of a
different major character in each of the three chapters of Border Zone. Set
in separate locations on or near the border, the chapters are complete
stories in themselves, each with its own riveting conclusion.
The on-line hints in Border Zone will help you out when you need
it. But hints take you only so far. Even when you know exactly what
to do, discretion and timing are crucial as you outwit the KGB, evade
a snarling pack of search dogs, make a desperate assault on the
border, and count down the moments to the assassination.
The on-line hints in Border Zone will help you out when you need it. But
hints take you only so far. Even when you know exactly what to do, to do,
discretion and timing are crucial as you outwit the KGB, evade a snarling
pack of search dogs, make a desperate assault on the border, and count down
the moments to the assassination.
Border Zone was written by Marc Blank, a pioneer in interactive
fiction and the author of such ground-breaking works as Zork and
Deadline. In Border Zone, Marc takes the clever plotting and masterly
prose of a top-notch thriller, brings it to life through interactive
fiction, and intensifies the experience with the addition of real
time.
Border Zone was written by Marc Blank, a pioneer in interactive fiction and
the author of such ground-breaking works as Zork and Deadline. In Border
Zone, Marc takes the clever plotting and masterly prose of a top-notch
thriller, brings it to life through interactive fiction, and intensifies
the experience with the addition of real time.
So steel your nerves, and don't blow your cover, friend. You've a
long way to go before you come in from the cold.
So steel your nerves, and don't blow your cover, friend. You've a long way
to go before you come in from the cold.
[versions]
R9.871008.Z5=r9 / 871008

View File

@ -1,10 +1,10 @@
[info]
BUREAUCRACY
1987 Comedy
Difficulty: ^^^^&
BUREAUCRACY: a paranoid fantasy
by Michael Bywater, Douglas Adams, et. al.
Copyright 1987 Infocom, Inc.
Genre: comedy
Difficulty: ^^^^&
Release 116 / Licence Number 870602 / Interpreter 2 Version H
[description]

View File

@ -1,10 +1,10 @@
[info]
CUTTHROATS
1984 Adventure
Difficulty: ^^^&&
CUTTHROATS
by Michael Berlyn and Jerry Wolper
Copyright 1984 Infocom, Inc.
Genre: adventure
Difficulty: ^^^&&
Release 23 / Serial number 840809
[description]

View File

@ -1,10 +1,10 @@
[info]
DEADLINE
1982 Mystery
Difficulty: ^^^^^
DEADLINE: an Interlogic mystery
by Marc Blank
Copyright 1982 Infocom, Inc.
Genre: mystery
Difficulty: ^^^^^
Release 27 / Serial number 831005
[description]

View File

@ -1,10 +1,10 @@
[info]
ENCHANTER
1983 Fantasy
Difficulty: ^^^&&
ENCHANTER
by Marc Blank and Dave Lebling
Copyright 1983 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^&&
Release 29 / Serial number 860820
[description]

View File

@ -1,10 +1,10 @@
[info]
HITCHHIKER'S GUIDE
TO THE GALAXY
1984 Sci-Fi
Difficulty: ^^^&&
THE HITCHHIKER'S GUIDE TO THE GALAXY
by Douglas Adams and Steve Meretzky
Copyright 1984 Infocom, Inc.
Genre: science fiction
Difficulty: ^^^&&
Release 59 / Serial number 851108
[description]

View File

@ -1,10 +1,10 @@
[info]
HOLLYWOOD HIJINX
1987 Adventure
Difficulty: ^^^&&
HOLLYWOOD HIJINX: a zany treasure hunt
by "Hollywood" Dave Anderson and Liz Cyr-Jones
Copyright 1986 Infocom, Inc.
Genre: adventure
Difficulty: ^^^&&
Release 37 / Serial Number 861215
[description]

View File

@ -1,10 +1,10 @@
[info]
INFIDEL
1983 Adventure
Difficulty: ^^^^&
INFIDEL
by Michael Berlyn
Copyright 1983 Infocom, Inc.
Genre: adventure
Difficulty: ^^^^&
Release 22 / Serial number 830916
[description]

View File

@ -1,10 +1,10 @@
[info]
LEATHER GOODESSES
OF PHOBOS
1986 Comedy
Difficulty: ^^^&&
LEATHER GOODESSES OF PHOBOS: a racy space-age spoof
by Steve Meretzky
Copyright 1986 Infocom, Inc.
Genre: Comedy
Difficulty: ^^^&&
Release 59 / Serial number 860730
[description]

View File

@ -1,10 +1,10 @@
[info]
THE LURKING HORROR
1987 Horror
Difficulty: ^^^&&
by Dave Lebling
Copyright 1987 Infocom, Inc.
Genre: horror
Difficulty: ^^^&&
Release 221 / Serial number 870918
[description]

View File

@ -1,10 +1,10 @@
[info]
MINI-ZORK
1987 Fantasy
Difficulty: ^^^&&
MINI-ZORK I: THE GREAT UNDERGROUND EMPIRE
by Dave Lebling and Marc Blank
Copyright 1988 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^&&
Release 34 / Serial number 871124
[description]

View File

@ -1,10 +1,10 @@
[info]
MOONMIST
1986 Mystery
Difficulty: ^^&&&
MOONMIST
by Stu Galley and Jim Lawrence
Copyright 1986 Infocom, Inc.
Genre: mystery
Difficulty: ^^&&&
Release number 9 / Serial number 861022
[description]

View File

@ -1,10 +1,10 @@
[info]
NORD AND BERT
1987 Comedy
Difficulty: ^^^^^
NORD AND BERT COULDN'T MAKE HEAD OR TAIL OF IT
by Jeff O'Neill
Copyright 1987 Infocom, Inc.
Genre: comedy
Difficulty: ^^^^^
Release 19 / Serial number 870722 / Interpreter 2 Version H
[description]

View File

@ -1,10 +1,10 @@
[info]
PLANETFALL
1983 Sci-Fi
Difficulty: ^^^&&
PLANETFALL
by Steve Meretzky
Copyright 1983 Infocom, Inc.
Genre: science fiction
Difficulty: ^^^&&
Release 37 / Serial number 851003
[description]

View File

@ -1,10 +1,10 @@
[info]
PLUNDERED HEARTS
1987 Romance
Difficulty: ^^&&&
PLUNDERED HEARTS
by Amy Briggs
Copyright 1987 Infocom, Inc.
Genre: romance
Difficulty: ^^&&&
Release 26 / Serial number 870730
[description]

View File

@ -1,10 +1,10 @@
[info]
SEASTALKER
1984 Adventure
Difficulty: ^&&&&
SEASTALKER: <YOUR NAME> AND THE ULTRAMARINE BIOCEPTOR
by Stu Galley and Jim Lawrence
Copyright 1984 Infocom, Inc.
Genre: adventure
Difficulty: ^&&&&
Release 16 / Serial number 850603
[description]

View File

@ -1,10 +1,10 @@
[info]
SHERLOCK: RIDDLE OF
THE CROWN JEWELS
1988 Mystery
Difficulty: ^^^&&
SHERLOCK: THE RIDDLE OF THE CROWN JEWELS
by Bob Bates
Copyright 1987 Infocom, Inc.
Genre: mystery
Difficulty: ^^^&&
Release 26 / Serial Number 880127 / Interpreter 2 Version F
[description]

View File

@ -1,10 +1,10 @@
[info]
SORCERER
1984 Fantasy
Difficulty: ^^^^&
SORCERER
by Steve Meretzky
Copyright 1984 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^^&
Release 18 / Serial number 860904
[description]

View File

@ -1,10 +1,10 @@
[info]
SPELLBREAKER
1985 Fantasy
Difficulty: ^^^^^
SPELLBREAKER
by Dave Lebling
Copyright 1985 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^^^
Release 87 / Serial number 860904
[description]

View File

@ -1,10 +1,10 @@
[info]
STARCROSS
1982 Sci-Fi
Difficulty: ^^^^^
STARCROSS
by Dave Lebling
Copyright 1982 Infocom, Inc.
Genre: science fiction
Difficulty: ^^^^^
Release 17 / Serial number 821021
[description]

View File

@ -1,10 +1,10 @@
[info]
STATIONFALL
1987 Sci-Fi
Difficulty: ^^^^&
STATIONFALL
by Steve Meretzky
Copyright 1987 Infocom, Inc.
Genre: science fiction
Difficulty: ^^^^&
Release 107 / Serial number 870430
[description]

View File

@ -1,10 +1,10 @@
[info]
SUSPECT
1984 Mystery
Difficulty: ^^^^&
SUSPECT
by Dave Lebling
Copyright 1984 Infocom, Inc.
Genre: mystery
Difficulty: ^^^^&
Release 14 / Serial number 841005
[description]

View File

@ -1,10 +1,10 @@
[info]
SUSPENDED
1983 Sci-Fi
Difficulty: ^^^^^
SUSPENDED
by Michael Berlyn
Copyright 1983 Infocom, Inc.
Genre: science fiction
Difficulty: ^^^^^
Release 8 / Serial number 840521
[description]

View File

@ -1,10 +1,10 @@
[info]
TRINITY
1986 Fantasy
Difficulty: ^^^&&
TRINITY
by Brian Moriarty
Copyright 1986 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^&&
Release 12 / Serial Number 860926 / Interpreter 2 Version H
[description]

View File

@ -1,17 +1,17 @@
[info]
WISHBRINGER
1985 Fantasy
Difficulty: ^^&&&
WISHBRINGER: THE MAGICK STONE OF DREAMS
by Brian Moriarty
Copyright 1985 Infocom, Inc.
Genre: fantasy
Difficulty: ^^&&&
Release 69 / Serial Number 850920
[description]
It's an ordinary day in your ordinary little town, and you've been
performing your ordinary mail clerk's duties in an altogether ordinary
way. But there's something quite extraordinary in today's mail. It's a
ransom note for a kidnapped cat, and it will lead you through unbelievably
performing your ordinary mail clerk's duties in an altogether ordinary way.
But there's something quite extraordinary in today's mail. It's a ransom
note for a kidnapped cat, and it will lead you through unbelievably
harrowing adventures to Wishbringer, a stone possessing undreamt-of powers.
For though the note in question is addressed to someone in your ordinary
little town, it's postmarked for Special Delivery to Parts Unknown. And its

View File

@ -1,10 +1,10 @@
[info]
THE WITNESS
1984 Mystery
Difficulty: ^^^&&
THE WITNESS: an Interlogic mystery
by Stu Galley
Copyright 1983 Infocom, Inc.
Genre: mystery
Difficulty: ^^^&&
Release 22 / Serial number 840924
[description]

View File

@ -1,10 +1,10 @@
[info]
ZORK I: THE GREAT
UNDERGROUND EMPIRE
1980 Fantasy
Difficulty: ^^^&&
ZORK I: THE GREAT UNDERGROUND EMPIRE
by Dave Lebling and Marc Blank
Copyright 1981 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^&&
Release 88 / Serial number 840726
[description]

View File

@ -1,10 +1,10 @@
[info]
ZORK II: THE WIZARD
OF FROBOZZ
1981 Fantasy
Difficulty: ^^^^&
ZORK II: THE WIZARD OF FROBOZZ
by Dave Lebling and Marc Blank
Copyright 1981 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^^&
Release 48 / Serial number 840904
[description]

View File

@ -1,10 +1,10 @@
[info]
ZORK III: THE
DUNGEON MASTER
1982 Fantasy
Difficulty: ^^^^&
ZORK III: THE DUNGEON MASTER
by Dave Lebling and Marc Blank
Copyright 1982 Infocom, Inc.
Genre: fantasy
Difficulty: ^^^^&
Release 17 / Serial number 840727
[description]

View File

@ -1,10 +1,10 @@
[info]
ZORK: UNDISCOVERED
UNDERGROUND
1997 Fantasy
Difficulty: ^^^&&
ZORK: THE UNDISCOVERED UNDERGROUND
by Marc Blank and Mike Berlyn, programmed by Gerry Kevin Wilson
Copyright 1997 Activision, Inc.
Genre: fantasy
Difficulty: ^^^&&
Release 16 / Serial number 970828 / Inform v6.13 Library 6/2
[description]

View File

@ -20,17 +20,17 @@ kArtworkRootDirectory ; length-prefixed pathname of DHGR box art
; action keys for main screen (should correspond to button titles in paint.a)
.keys
!byte $D0,ID_PLAY ; P
!byte $F0,ID_PLAY ; p
!byte $C7,ID_PLAY ; G
!byte $E7,ID_PLAY ; g
!byte $8D,ID_PLAY ; Return
!byte $C3,ID_CLUES ; C
!byte $E3,ID_CLUES ; c
!byte $C2,ID_BOXART ; B
!byte $E2,ID_BOXART ; b
!byte $CF,ID_OPTIONS ; O
!byte $EF,ID_OPTIONS ; o
!byte $D6,ID_PREVIOUS ; V
!byte $F6,ID_PREVIOUS ; v
!byte $C8,ID_CLUES ; H
!byte $E8,ID_CLUES ; h
!byte $C1,ID_BOXART ; A
!byte $E1,ID_BOXART ; a
!byte $D3,ID_OPTIONS ; S
!byte $E3,ID_OPTIONS ; s
!byte $D0,ID_PREVIOUS ; P
!byte $F0,ID_PREVIOUS ; p
!byte $88,ID_PREVIOUS ; left arrow
!byte $CE,ID_NEXT ; N
!byte $EE,ID_NEXT ; n
@ -115,6 +115,8 @@ callback_next
jmp RepaintSomeViews
}
callback_versions
rts
callback_clues
rts
callback_options
@ -133,7 +135,16 @@ callback_boxart
ldy GAMES+1, x
jsr AddToPath
jsr LoadDHRFile ; load artwork from file
lda #0 ; set Z flag always
!cpu 65816
rep #2 ; clear Z flag on 65816 only
!cpu 65c02
beq + ; skip GS-specific code on non-GS machines (required, will crash on //c, grr)
lda $C029
and #$1F
sta $C029 ; set GS NEWVIDEO mode to turn off linearize
+ jsr LoadDHRFile ; load artwork from file
!word gPathname
!word kProDOSFileBuffer
bcs .nope

View File

@ -16,14 +16,16 @@ MAGICRTS = $FF58 ; used to set overflow bit
; View IDs (application-specific, acceptable range 0..15, no duplicates)
ID_TITLE = 0
ID_PLAY = 1
ID_CLUES = 2
ID_BOXART = 3
ID_OPTIONS = 4
ID_INFO = 12
ID_PREVIOUS = 1
ID_OPTIONS = 2
ID_NEXT = 3
ID_HR = 4
ID_PLAY = 5
ID_VERSIONS = 6
ID_BOXART = 7
ID_CLUES = 8
ID_INFO = 9
ID_DESCRIPTION = 13
ID_PREVIOUS = 14
ID_NEXT = 15
!zone {
@ -49,6 +51,19 @@ CreateViews
sta PARAM1
jsr WeeGUI
ldx #WGCreateView ; create horizontal rule
lda #<.viewHR
sta PARAM0
lda #>.viewHR
sta PARAM1
jsr WeeGUI
ldx #WGViewSetAction
lda #<.paintHRView
sta PARAM0
lda #>.paintHRView
sta PARAM1
jsr WeeGUI
jsr .createButton ; create various buttons
!word .viewPrevious
jsr .createButton
@ -56,10 +71,12 @@ CreateViews
jsr .createButton
!word .viewPlay
jsr .createButton
!word .viewClues
!word .viewVersions
jsr .createButton
!word .viewBoxArt
jsr .createButton
!word .viewClues
jsr .createButton
!word .viewOptions
ldx #WGCreateView ; create borderless frame for game title and info
@ -102,6 +119,7 @@ PaintAllViews
ldx #WGViewPaintAll ; repaint all views that can be painted automatically
jsr WeeGUI
jsr .paintTitleView
jsr .paintHRView
jsr .paintInfoView
jmp .paintDescriptionView
@ -134,8 +152,19 @@ RepaintSomeViews
lda #>.stringTitle
sta PARAM1
jsr WeeGUI
jsr NORMAL
rts
jmp NORMAL
.paintHRView
ldx #WGSelectView
lda #ID_HR
jsr WeeGUI
ldx #WGPrint
lda #<.stringHR
sta PARAM0
lda #>.stringHR
sta PARAM1
bit MAGICRTS ; set overflow bit
jmp WeeGUI
.paintDescriptionView
ldx #WGSelectView
@ -158,7 +187,8 @@ RepaintSomeViews
jsr WeeGUI
lda addrInfo
ldy addrInfo+1
ldx #21
ldx #65
; note: execution falls through here
.multiPrint
sta $00
@ -241,23 +271,23 @@ RepaintSomeViews
!byte 80 ; width
!byte 1 ; height
.stringTitle
!raw "Pitch Dark ",0
!raw " Pitch Dark ",0
.viewPrevious
!byte ID_PREVIOUS ; view ID
!byte 1 ; left
!byte 2 ; top
!byte 12 ; width
!byte 17 ; width
!word callback_previous ; callback
!word .stringPrevious ; caption
.stringPrevious
!text "< Pre"
!byte $76 ; 'v' inverse
!text "ious",0
!text "< "
!byte $10 ; 'P' inverse
!text "revious game",0
.viewNext
!byte ID_NEXT ; view ID
!byte 65 ; left
!byte 66 ; left
!byte 2 ; top
!byte 13 ; width
!word callback_next ; callback
@ -266,69 +296,93 @@ RepaintSomeViews
!byte $0E ; 'N' inverse
!text "ext game >",0
.viewOptions
!byte ID_OPTIONS ; view ID
!byte 34 ; left
!byte 2 ; top
!byte 12 ; width
!word callback_options ; callback
!word .stringOptions
.stringOptions
!byte $13 ; 'S' inverse
!text "ettings",0
.viewHR
!byte ID_HR ; view ID
!byte 0 ; style
!byte 1 ; left
!byte 4 ; top
!byte 78 ; visible width
!byte 1 ; visible height
!byte 78 ; width
!byte 1 ; height
.stringHR
!fill 78,83
!byte 0
.viewPlay
!byte ID_PLAY ; view ID
!byte 34 ; left
!byte 10 ; top
!byte 66 ; left
!byte 6 ; top
!byte 13 ; width
!word callback_play ; callback
!word .stringPlay ; caption
.stringPlay
!byte $10 ; 'P' inverse
!text "lay game",0
.viewClues
!byte ID_CLUES ; view ID
!byte 66 ; left
!byte 7 ; top
!byte 11 ; width
!word callback_clues ; callback
!word .stringClues ; caption
.stringClues
!byte $03 ; 'C' inverse
!text "lues",0
!byte 144
!text "lay "
!byte $67 ; 'g' inverse
!text "ame",0
.viewBoxArt
!byte ID_BOXART ; view ID
!byte 66 ; left
!byte 9 ; top
!byte 11 ; width
!byte 8 ; top
!byte 13 ; width
!word callback_boxart ; callback
!word .stringBoxArt ; caption
.stringBoxArt
!byte $02 ; 'B' inverse
!text "ox art",0
!byte $01 ; 'A' inverse
!text "rtwork",0
.viewOptions
!byte ID_OPTIONS ; view ID
.viewClues
!byte ID_CLUES ; view ID
!byte 66 ; left
!byte 11 ; top
!byte 11 ; width
!word callback_options ; callback
!word .stringOptions ; caption
.stringOptions
!byte $0F ; 'O' inverse
!text "ptions",0
!byte 10 ; top
!byte 13 ; width
!word callback_clues ; callback
!word .stringClues ; caption
.stringClues
!byte $08 ; 'H' inverse
!text "ints",0
.viewVersions
!byte ID_VERSIONS ; view ID
!byte 66 ; left
!byte 12 ; top
!byte 13 ; width
!word callback_versions ; callback
!word .stringVersions ; caption
.stringVersions
!byte $12 ; 'R' inverse
!text "evisions",0
.viewInfo
!byte ID_INFO ; view ID
!byte 0 ; style
!byte 30 ; left
!byte 2 ; top
!byte 20 ; visible width
!byte 7 ; visible height
!byte 20 ; width
!byte 7 ; height
!byte 0 ; left
!byte 6 ; top
!byte 65 ; visible width
!byte 6 ; visible height
!byte 65 ; width
!byte 6 ; height
.viewDescription
!byte ID_DESCRIPTION ; view ID
!byte 2 ; style
!byte 1 ; left
.viewDescriptionMinHeight
!byte 15 ; top
!byte 77 ; visible width
!byte 8 ; visible height
!byte 77 ; width
.viewDescriptionHeight
!byte 39 ; height
}

View File

@ -6,15 +6,7 @@
!to "build/PITCH.DARK",plain
*=$6000
lda #0 ; set Z flag always
!cpu 65816
rep #2 ; clear Z flag on 65816 only
!cpu 65c02
beq + ; skip GS-specific code on non-GS machines (required, will crash on //c, grr)
lda $C029
and #$1F
sta $C029 ; set GS NEWVIDEO mode to turn off linearize
+ jmp Start
jmp Start
.weeguiFilename
!byte 10
!raw "LIB/WEEGUI"