intfiction.org

The Interactive Fiction Community Forum
It is currently Thu Oct 23, 2014 10:07 am

All times are UTC - 6 hours [ DST ]




Post new topic Reply to topic  [ 10 posts ] 
Author Message
PostPosted: Tue Dec 14, 2010 2:24 am 
Offline

Joined: Tue Apr 27, 2010 1:02 pm
Posts: 801
I've updated Gargoyle's Glk/ANSI port of TADS to include support for the banner API.

The banner API is almost Glk friendly: window splits and space allocation between parent and child windows work in exactly the same way. The catch is that TADS allows subsequently declared banners to usurp space from siblings (by declaring themselves 'first' or 'before') which is a very un-Glk way of doing things.

Unfortunately this means that every time a window is added, we have to close all banners, resize and restyle them, and restore the contents. The good news is that the collective banners rarely represent more than a screenful of text, so the inherent inefficiency isn't as painful as it might otherwise be.

osglkban.c implements the required window and contents management code. There are a couple tweaks unique to Gargoyle but all core functionality is pure Glk and should work with any other library. Size to contents doesn't work quite right, and besides the basic text styles, only reversed colors and a single custom color are supported. For the most part these are Glk limitations.

Gargoyle's next release will include this feature, which means (among other things) that the TADS exit lister will actually work now. My hope is that this is the first milestone on the road to full HTML TADS support.

Image


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 10:56 am 
Online

Joined: Sat Dec 22, 2007 11:52 pm
Posts: 956
Awesome Ben!

Interesting coincidence that you posted this, I was browsing IF stuff on github yesterday and found this, https://github.com/weiju/zmpp2/tree/master/zmpp-tads3.

2011, the year of TADS 3? :)


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 11:17 am 
Offline

Joined: Tue Apr 27, 2010 1:02 pm
Posts: 801
Cool! A ZMPP implementation of TADS 3 could mean a native Kindle app as well, which is high on next year's Christmas list.


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 1:46 pm 
Offline
User avatar

Joined: Sun Feb 03, 2008 5:55 am
Posts: 298
bcressey wrote:
I've updated Gargoyle's Glk/ANSI port of TADS to include support for the banner API.

Yay! Cool.


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 1:47 pm 
Offline

Joined: Mon May 03, 2010 1:44 pm
Posts: 38
Location: Seattle, WA
Hi,

there I thought no one would notice until I got something showable ;)
But it's looking pretty good, I think that I got a pretty solid grasp of how TADS3 works now, it's just simply the large amount of libraries that need to be implemented in the VM....

Wei-ju

_________________
Wei-ju Wu - ZMPP@github Blog Twitter


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 7:00 pm 
Offline
User avatar

Joined: Wed Oct 14, 2009 4:02 am
Posts: 1677
Wow, the first independent implementation of the TADS3 VM!

I'd be keen to coordinate a group to write a JS implementation as well. Anyone else interested?


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 7:11 pm 
Offline
User avatar

Joined: Sat Dec 22, 2007 6:00 pm
Posts: 519
Location: Western Australia
This entire thread is making me very happy. Thanks for your work on this, Ben!

_________________
Emily Boegheim


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 11:34 pm 
Offline
User avatar

Joined: Tue Apr 20, 2010 2:48 pm
Posts: 800
Dannii wrote:
Wow, the first independent implementation of the TADS3 VM!

Gargoyle uses the reference implementation. This is about the T3 banner API being implemented in Glk.


Top
 Profile Send private message  
 
PostPosted: Tue Dec 14, 2010 11:36 pm 
Offline
User avatar

Joined: Tue Apr 20, 2010 2:48 pm
Posts: 800
bcressey wrote:
I've updated Gargoyle's Glk/ANSI port of TADS to include support for the banner API.

Don't know about the others, but to me this looks like quite a Christmas gift :mrgreen: Thanks for you hard work on this!


Top
 Profile Send private message  
 
PostPosted: Wed Dec 15, 2010 6:36 pm 
Offline
User avatar

Joined: Wed Oct 14, 2009 4:02 am
Posts: 1677
RealNC wrote:
Dannii wrote:
Wow, the first independent implementation of the TADS3 VM!

Gargoyle uses the reference implementation. This is about the T3 banner API being implemented in Glk.

I was referring to ZMPP...


Top
 Profile Send private message  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC - 6 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group