The Allegro Wiki is migrating to github at

Allegro Hack Day/2008 February 2

From Allegro Wiki
Jump to: navigation, search


  • Fix remaining stuff on 4.3.10 release
  • If we keep float coordinates, is .0/.0 top-left of a pixel or center of a pixel
    • Specifically, what does it mean for semantics of al_draw_rectangle, al_put_pixel and al_line
    • We also should use subpixel precision, so the outcome would be precisely defined (OpenGL luckily does so as well.. not sure about DX)
Seems there was no big opposition to it..
  • Should al_put_pixel and al_clear do blending or not?
No, but maybe make an al_draw_pixel.
  • What about the website? It's very hard to modify and seems getting outdated..
We will see..
  • What about makedoc? Should we remove it? Replace it with the somewhat more sane Haskell one?
    • Consider Pandoc.
Looks good..
  • Figure out how to stop CR/LF line endings infecting the repository.
Everyone should set their SVN clients to automatically add the linebreak properties..


Note this is missing sections from 13:44 to 13:57 and 14:39 to 15:00.

[13:07] You were granted voice by ChanServ.
[13:16] Aardwolf joined the chat room.
[13:16] Aardwolf was granted voice by ChanServ.
[13:18] Aardwolf left the chat room. ("Leaving")
[13:18] tjaden: hello
[13:18] mimix: 'lo
[13:18] elias: hello
[13:19] elias: i doubt trentg will come, it's 5am for him 
[13:19] tjaden: ah, i was about to ask
[13:20] tjaden: time to start isn't it?
[13:21] elias: sure
[13:22] elias: i dunno, i put the 4.3.10 link on the hackday site, in case there's something which we should do..
[13:23] tjaden: what about the makedoc topic? i've been looking at that today
[13:24] elias: personally, i don't like the makedoc format a lot
[13:24] elias: it has some archaic constructs
[13:25] tjaden: i've been keeping an eye on pandoc for a while, and i think it might be a good choice
[13:25] mimix: i could add msvc makefiles, but i couldn't find a precompiled libpng and libvorbis for it last time i was searching
[13:25] elias: what markup would we be using with pandoc?
[13:25] tjaden: markdown
[13:25] Tomasu: make that 6am...
[13:26] elias: "Philosophy
[13:26] elias: Markdown is intended to be as easy-to-read and easy-to-write as is feasible."
[13:26] tjaden: let me paste an example:
[13:26] tjaden: [al_map_rgb]:
[13:26] tjaden: ### al_map_rgb
[13:26] tjaden:     ALLEGRO_COLOR al_map_rgb(unsigned char r,
[13:26] tjaden:                             unsigned char g,
[13:26] tjaden:                             unsigned char b)
[13:26] tjaden: Convert `r`, `g`, `b` (ranging from 0-255) into an `ALLEGRO_COLOR`, using
[13:26] tjaden: 255 for alpha.
[13:26] tjaden: *Return value:*
[13:26] tjaden: Returns the color value.
[13:26] tjaden: *See also:*
[13:26] tjaden: [al_map_rgba].
[13:27] elias: looks good
[13:28] tjaden: the only thing it's really missing is a texinfo output, so i started one today
[13:29] elias: nice
[13:29] elias: i think we already could start using it for things like thanks._tx and changes._tx and so on
[13:29] peterhull_: X-G uses markdown on his site
[13:29] peterhull_: fwiw
[13:30] elias: the API itself maybe has too much possibility to change yet
[13:30] elias: peterhull_: got a link?
[13:30] peterhull_:
[13:32] elias: i wonder if someone used it to describe a library API
[13:38] tjaden: i guess there are two minor deficienies, vs makedoc. it doesn't support includes by default, and we'd need to generate intermediate docs for each man page. both are easily overcome with some scripts
[13:38] elias: intermediate docs?
[13:39] tjaden: intermediate files, with all the standard man page stuff, like NAME, SYNOPSIS, DESCRIPTION, etc.
[13:39] elias: would a script generate those?
[13:40] tjaden: yeah. i wrote an awk script to do it today
[13:40] elias: ah, ok, so no problem then i assume, makedoc generates 100ds of intermediate files as far as I see it 
[13:40] tjaden: you have to follow the format in the example above though
[13:40] elias: hm, i don't understand then 
[13:40] elias: i have no idea about man pages though
[13:41] tjaden: like, if you don't write *Return value:* there won't be a "RETURN VALUE" section in the man page 
[13:42] tjaden: i'll post it on the mailing list later
[13:42] elias: ah, ok. so we simply have to follow some standard when documenting our single functions
[13:44] You left the chat by being disconnected from the server.
[13:57] You rejoined the room.
[13:57] You were granted voice by ChanServ.
[13:57] elias: i wonder what trentg plans with this:
[13:58] tjaden:
[13:59] elias: i think you already solved the CR/LF, right?
[13:59] tjaden: yes, i think so
[13:59] elias: we'll just have to tell SVN for which files it should do conversion..
[13:59] tjaden: i think svn has a feature to automatically set svn:eol-style on certain file extensions
[13:59] tjaden: just have to tell trent to use it 
[14:00] elias: ah, i wouldn't know which client he uses. some command line one I think
[14:00] tjaden: the other thing is to always run svn diff before committing, and always explicitly name the files to commit
[14:01] elias: yes, that certainly is a good idea
[14:01] elias: i committed a wrong file the other day as well
[14:01] elias:
[14:01] Tomasu: now I wonder what matthew has planned for 
[14:01] Tomasu: (
[14:02] elias: compete with
[14:03] Tomasu: not that it'd be hard...
[14:03] Tomasu: can you belive you have to PAY to get an avatar on gd?
[14:03] elias: heh
[14:05] elias: anyway, the drawing primitives i put up, i didn't get to ask trentg about them yet
[14:05] elias: i think we should use subpixel precision for everything, and put_pixel and clear should behave just like special cases of draw_rectangle
[14:06] Tomasu: heh
[14:06] Tomasu: let me know if you guys start talking about things like xrandr/xinerama/multimon/whatever support...
[14:07] mimix_: would putpixel on top-left corner modify at least 4 pixels?
[14:07] tjaden: shouldn't clear ignore blending?
[14:07] elias: mimix_: no
[14:07] tjaden: "Alpha function,  blend  function,  logical  operation,
[14:07] tjaden:       stenciling,  texture  mapping,  and  depth-buffering  are  ignored  by
[14:07] tjaden:       glClear."
[14:07] elias: it would only fill the one pixel it is inside of
[14:07] Tomasu: tjaden: I think that was something that was pointed out...
[14:08] mimix left the chat room. (Read error: 110 (Connection timed out))
[14:08] tjaden: on irc?
[14:08] elias: mimix_: that's how it is done in OpenGL as well
[14:08] Tomasu: tjaden: yeah
[14:08] Tomasu: since I added #allegro-dev to auto-join, Ive sorta been following things...
[14:08] Tomasu: tjaden: at one point clear didnt ignore blending and the other primitives did... linda backwards
[14:09] Tomasu: *kinda
[14:09] tjaden: yeah
[14:09] elias: tjaden: yes, i assume it also would make sense to follow OpenGL behavior..
[14:09] elias: for put_pixel, the reason was that sometimes you just want to modify a bitmap directly
[14:09] mimix_: but how do you tell which pixel is that, except for the convention that top-left belongs to the botton-right pixel
[14:09] elias: so it seemed easier to not have it be affected by all thsoe as well
[14:10] elias: mimix_: that's what i meant with subpixel precision
[14:10] elias: you picture a "hair line" shape (in the case of put_pixel, a single point)
[14:10] elias: then fill what is mathematically in the reange [0;1)
[14:10] elias: so a line from 0/0 to 1/1 would also fill only one pixel
[14:10] elias: just like OpenGL
[14:11] mimix_: ok
[14:11] elias: or rectangle from 0/0 to 1/1 also is exactly the area of one pixel
[14:11] elias: in A4, e.g. line sort of randomly might use a pixel 1 off in any direction
[14:11] elias: and the circle and polygon function can be considered "random outline" anyway 
[14:12] elias: but since it seems rather simple doing this exactly and OpenGL/D3D (need to check with trent) do it already - seems best to just specify it
[14:14] tjaden: if i wanted blending, i'd write al_draw_rectangle
[14:14] tjaden: i don't think that would be as common, but the easy solution would be to add another function
[14:14] elias: al_draw_pixel maybe
[14:15] mimix_: i still like the center of pixel more, it's less ambiguous because it specifies the actual pixel more precisely, but that's just me
[14:15] mimix_: it's probably easier and better to follow opengl/dx convention
[14:15] elias: center of pixel is weird with blitting
[14:15] elias: draw_image(10, 10)
[14:15] elias: that would then have its top left corner in the middle of a pixel
[14:16] elias: so if the image is 1x1 pixels, it still would span 4 pixels
[14:16] elias: s/span/overlap/
[14:16] mimix_: hm, indeen
[14:16] elias: so not sure how to properly solve it. one way would be to have blitting keep the top-left convention
[14:16] elias: but then we get an incongruency of draw_rectangle and draw_image
[14:16] mimix_: nah, let's be consistent
[14:18] Tomasu[BAF]: enough people complain about a4s inconsistencies
[14:18] elias: Tomasu: i can't log in to the wiki 
[14:19] elias: it sends me to this page when i click:
[14:19] Tomasu[BAF]: yeah, thats annoying. go back to the main page, try again
[14:19] Tomasu[BAF]: and do a full refresh before trying
[14:20] elias: hm, same
[14:20] Tomasu[BAF]: again 
[14:21] elias: still same 
[14:22] Tomasu[BAF]: it took some trying for me to do it...
[14:22] elias: ah, let me delete my cookies..
[14:23] elias: still no luck
[14:23] elias: whatver i do, it sends me to this purge page
[14:23] zap0 joined the chat room.
[14:23] zap0 was granted voice by ChanServ.
[14:23] zap0: w00t!  im here,  everyone can stop panicing now 
[14:24] zap0: hello!    did i miss it?
[14:24] elias: oh, it worked now
[14:24] elias: like on 10th try 
[14:24] Tomasu[BAF]: weird, this time I didnt get that error at all
[14:25] zap0: is most of the discussion over?
[14:25] elias: only the things from the link in the topic..
[14:26] elias: guess the most important parts are still coming.. like what should we do next..
[14:26] tjaden: next, as in... ?
[14:26] zap0: im getting 404 on
[14:27] Tomasu[BAF]: you cant get a 404 from a wiki page...
[14:27] zap0: is this being hosted in Egypt 
[14:27] elias: no, somewhere near the north pole
[14:27] Tomasu[BAF]: no, its being hosted here.
[14:27] Tomasu[BAF]: Edmonton, ab
[14:27] mimix_: i found that zlib, libpng and libvorbis can easily be built from the sources for msvc, so i'll to that
[14:28] zap0: ok then, im getting  No server connection.
[14:29] zap0: seems to be down.
[14:29] Tomasu[BAF]: is also known as
[14:29] mimix_: libvorbis doesn't seem to officially support djgpp (not sure tho), but I found some instructions on how to hack its header files
[14:29] mimix_ is now known as mimix.
[14:29] Tomasu[BAF]: but both work for me...
[14:30] zap0: w00t!    works,  not
[14:30] elias: i doubt allegrogl still works with djgpp
[14:30] Tomasu[BAF]: anyone else having problems accessing
[14:30] mimix: elias: me also
[14:30] zap0: djgpp should die already!  its not worth the effort.
[14:30] mimix: Tomasu[BAF]: yep
[14:30] mimix: Server not found
[14:31] Tomasu[BAF]: weird, its fine here
[14:31] elias: tjaden: hm, not really sure what i meant specifically 
[14:31] mimix: because you route directly to it?
[14:31] Tomasu[BAF]: is a cname.
[14:31] elias: i just edited it
[14:31] elias: maybe some DNS changes
[14:32] elias: and the time i couldn't log in was as long as my bind had the wrong one still
[14:33] Tomasu[BAF]: if you could access it before and after, its the same...
[14:33] Tomasu[BAF]: since it points to, which uses a dyndns like setup
[14:33] Tomasu[BAF]: an old ip would lead to nothing...
[14:34] mimix: Firefox can't find the server at
[14:34] zap0: toasu?
[14:35] mimix: heh
[14:35] mimix: tomasu works
[14:35] elias: i wonder if it would be useful working on a plain X11 (without OpenGL) display driver
[14:36] Tomasu[BAF]: probably not 
[14:36] Tomasu[BAF]: mesa software might be faster than plain X 
[14:36] Tomasu[BAF]: unless the X driver uses XRender or something
[14:37] mimix: mesa uses X
[14:37] Tomasu[BAF]: probably better than we could 
[14:37] mimix: probably 
[14:39] You left the chat by being disconnected from the server.
[15:00] You rejoined the room.
[15:00] You were granted voice by ChanServ.
[15:01] elias: peterhull: do you have any estimate how hard it would be to get 4.9 working under OSX?
[15:02] Typosu[BAF] joined the chat room.
[15:02] Typosu[BAF] was granted voice by ChanServ.
[15:02] Tomasu[BAF] left the chat room. (Read error: 104 (Connection reset by peer))
[15:02] Typosu[BAF]: god thats annoying... stupid laptop
[15:16] elias: tjaden: oh, btw, are you going to apply goalica's timer patches?
[15:17] tjaden: oh yes, forgot about that
[15:17] tjaden: it's decided then?
[15:17] tjaden: you can apply it
[15:17] elias: ok
[15:18] You left the chat by being disconnected from the server.