home *** CD-ROM | disk | FTP | other *** search
/ ftp.xmission.com / 2014.06.ftp.xmission.com.tar / ftp.xmission.com / pub / lists / fractdev / archive / fractdev.200005 < prev    next >
Internet Message Format  |  2000-05-30  |  17KB

  1. From: Tim Wegner <twegner@swbell.net>
  2. Subject: Re: (fractint) 3d transform doesn't work in float only version
  3. Date: 13 May 2000 16:22:10 -0600
  4.  
  5. Rupert wrote:
  6.  
  7. > I thought about putting this on the buglist but I think it's a fundamental 
  8. > problem with float-only:
  9. > In the float-only version of Fractint 3d transforms don't work.
  10.  
  11. Thanks, I'll fix this. There are some integer math dependencies in 
  12. 3D which won't pose any difficulty to fix.
  13.  
  14. Couple of news items.
  15.  
  16. 1. My wife Susan and I had an enjoyable evening with Scott Boyd 
  17. and his wife Sarah in Galveston.
  18.  
  19. 2. Jonathan had some problems with his laptop, but has recovered 
  20. and has merged the float-only version with Xfractint, and is working 
  21. on merging Rich's changes.
  22.  
  23. Tim
  24.  
  25.  
  26. Thanks for using Fractdev, The Fractint Developer's Discussion List
  27. Post Message:   fractdev@lists.xmission.com
  28. Get Commands:   majordomo@lists.xmission.com "help"
  29. Administrator:  twegner@fractint.org
  30. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  31.  
  32.  
  33. -------------------------------------------------------------------------------
  34.  
  35. From: Tim Wegner <twegner@swbell.net>
  36. Subject: Re: (fractint) 3d transform doesn't work in float only version
  37. Date: 14 May 2000 17:27:29 -0600
  38.  
  39. I updated the FTP area so all the patch 11 files are now there. Let 
  40. me know if any problem. I also did chmod 664 for all the files, but I 
  41. couldn't change the files that Jonathan owns. It would probably be 
  42. good if either Jonathan or Damien changed the permissions to 664 
  43. so anyone in the group can delete or update the files. Not a big 
  44. deal though.
  45.  
  46. As part of his project, Jonathan merged the float-only version with 
  47. Xfractint, but didn't save the result of this before he started merging 
  48. in Rich's changes. I'll probably reconstruct this. Our "official" 
  49. Xfractint might as well be based on the float-only version since 
  50. Xfractint doesn't support integer math anyway.
  51.  
  52. Tim
  53.  
  54.  
  55. Thanks for using Fractdev, The Fractint Developer's Discussion List
  56. Post Message:   fractdev@lists.xmission.com
  57. Get Commands:   majordomo@lists.xmission.com "help"
  58. Administrator:  twegner@fractint.org
  59. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  60.  
  61.  
  62. -------------------------------------------------------------------------------
  63.  
  64. From: "Damien M. Jones" <dmj@fractalus.com>
  65. Subject: Re: (fractint) 3d transform doesn't work in float only
  66. Date: 15 May 2000 00:23:15 -0400
  67.  
  68. Tim,
  69.  
  70.  - I also did chmod 664 for all the files, but I couldn't change
  71.  - the files that Jonathan owns. It would probably be good if
  72.  - either Jonathan or Damien changed the permissions to 664 
  73.  - so anyone in the group can delete or update the files.
  74.  
  75. Done.
  76.  
  77. Damien M. Jones   \\
  78. dmj@fractalus.com  \\  Fractalus Galleries & Info:
  79.                     \\  http://www.fractalus.com/
  80.  
  81. Please do not post my e-mail address on a web site or
  82. in a newsgroup.  Thank you.
  83.  
  84.  
  85. Thanks for using Fractdev, The Fractint Developer's Discussion List
  86. Post Message:   fractdev@lists.xmission.com
  87. Get Commands:   majordomo@lists.xmission.com "help"
  88. Administrator:  twegner@fractint.org
  89. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  90.  
  91.  
  92. -------------------------------------------------------------------------------
  93.  
  94. From: "Jonathan Osuch" <osuchj@uswest.net>
  95. Subject: Re: (fractint) 3d transform doesn't work in float only version
  96. Date: 15 May 2000 20:51:28 -0500
  97.  
  98. Tim wrote,
  99.  
  100. > As part of his project, Jonathan merged the float-only version with
  101. > Xfractint, but didn't save the result of this before he started merging
  102. > in Rich's changes. I'll probably reconstruct this. Our "official"
  103. > Xfractint might as well be based on the float-only version since
  104. > Xfractint doesn't support integer math anyway.
  105.  
  106. I could probably do that tomorrow.  One problem is that we won't be able to
  107. make a diff to it.  I've removed 7 or 8 files that had no use in Xfractint.
  108. Until we get ported back to Windows/DOS, this leaves us with two radically
  109. different sets of source code.  But, you knew that.   8-))
  110.  
  111. I've finished incorporating Rich's modifications and although it compiles,
  112. it doesn't exactly run.  I get a graphics window but no image.  All text,
  113. when it can be made to appear, is not formatted.  I will try to get the
  114. Allegro package tied in and then worry about getting it to run.  I'm afraid
  115. I might be missing the big picture about how this is supposed to work.
  116. Rich, can you add some insight?
  117.  
  118. Jonathan
  119.  
  120.  
  121.  
  122. Thanks for using Fractdev, The Fractint Developer's Discussion List
  123. Post Message:   fractdev@lists.xmission.com
  124. Get Commands:   majordomo@lists.xmission.com "help"
  125. Administrator:  twegner@fractint.org
  126. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  127.  
  128.  
  129. -------------------------------------------------------------------------------
  130.  
  131. From: Phil McRevis <legalize@xmission.com>
  132. Subject: Re: (fractint) 3d transform doesn't work in float only version 
  133. Date: 16 May 2000 10:29:51 -0600
  134.  
  135.  
  136. In article <001301bfbed9$567a4ea0$0100a8c0@bananasenior>,
  137.     "Jonathan Osuch" <osuchj@uswest.net>  writes:
  138.  
  139. > I've finished incorporating Rich's modifications and although it compiles,
  140. > it doesn't exactly run.  I get a graphics window but no image.
  141.  
  142. The code base I had drew graphics but no text.  This was because the
  143. text was previously done through curses, which is definately the wrong
  144. way to do it.  Text should be done through Xlib or something else
  145. layered on Xlib, not hacked up through curses in an xterm window.
  146.  
  147. > I'm afraid
  148. > I might be missing the big picture about how this is supposed to work.
  149. > Rich, can you add some insight?
  150.  
  151. Its just an interface for abstracting the graphics and text output
  152. with a current "driver" selected.  A driver is essentially a structure
  153. of function pointers that perform the operations in the interface.  A
  154. new interface was not designed, rather the existing output functions
  155. were made part of the driver interface.  So instead of calling
  156. DoSomething(), you call driver->DoSomething() where the driver pointer
  157. is initialized to the appropriate structure when you select a video
  158. mode, etc.
  159.  
  160. The initialization code picks an initial driver depending on your
  161. operating environment (i.e. an Xlib driver if you're running under
  162. unix, a Win32 driver if you're running under Windows, etc.).
  163.  
  164. The "select video mode" code obviously has to be rewritten to
  165. incorporate this idea.
  166. --
  167. <http://www.xmission.com/~legalize/>    Legalize Adulthood!
  168.     ``Ain't it funny that they all fire the pistol,     
  169.       at the wrong end of the race?''--PDBT     
  170. legalize@xmission.com    <http://www.xmission.com/~legalize/who/>
  171.  
  172. Thanks for using Fractdev, The Fractint Developer's Discussion List
  173. Post Message:   fractdev@lists.xmission.com
  174. Get Commands:   majordomo@lists.xmission.com "help"
  175. Administrator:  twegner@fractint.org
  176. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  177.  
  178.  
  179. -------------------------------------------------------------------------------
  180.  
  181. From: "Jonathan Osuch" <osuchj@uswest.net>
  182. Subject: Allegro package Xfractint
  183. Date: 25 May 2000 20:08:10 -0500
  184.  
  185. Folks,
  186.  
  187. I have incorporated the Allegro package into a float only version of Rich's
  188. "driver" source.  It's up and running.  I have graphics and text in the same
  189. window, but no mouse or text cursor movement.  Since just about everything
  190. is broken, I won't provide a to-do list.  8-))
  191.  
  192. Jonathan
  193.  
  194.  
  195.  
  196. Thanks for using Fractdev, The Fractint Developer's Discussion List
  197. Post Message:   fractdev@lists.xmission.com
  198. Get Commands:   majordomo@lists.xmission.com "help"
  199. Administrator:  twegner@fractint.org
  200. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  201.  
  202.  
  203. -------------------------------------------------------------------------------
  204.  
  205. From: Phil McRevis <legalize@xmission.com>
  206. Subject: Re: Allegro package Xfractint 
  207. Date: 26 May 2000 10:19:16 -0600
  208.  
  209.  
  210. In article <000f01bfc6af$20be92c0$0100a8c0@bananasenior>,
  211.     "Jonathan Osuch" <osuchj@uswest.net>  writes:
  212.  
  213. > It's up and running.
  214.  
  215. Cool!
  216.  
  217. > I have graphics and text in the same
  218. > window, but no mouse or text cursor movement.
  219.  
  220. If you have the energy for it, we should revamp the input towards an
  221. event-based system.  For DOS you can always invent your own "message
  222. pump".  (Can't you get DOS to invoke an interrupt routine when a key
  223. is pressed or mouse is moved that queues the input data for later
  224. processing?  I never really programmed in DOS.)  This would make the
  225. porting to window systems much, much easier.  Currently xfractint
  226. hacks this in by having the polling I/O routines examine the event
  227. queue.  Fractint polls often enough that events don't lag too far
  228. behind, but its really awkward.
  229.  
  230. Surprisingly this polling only happens in a handful of places around
  231. the fractint source because things are fairly well abstracted, i.e.
  232. there is a routine for presenting the text-based "dialogs" that
  233. fractint uses for parameters and so-on and this is pretty much reused
  234. everwhere that such a thing is needed, so its not like you have to
  235. modify one routine for each dialog to make the dialogs event-based.
  236. --
  237. <http://www.xmission.com/~legalize/>    Legalize Adulthood!
  238.     ``Ain't it funny that they all fire the pistol,     
  239.       at the wrong end of the race?''--PDBT     
  240. legalize@xmission.com    <http://www.xmission.com/~legalize/who/>
  241.  
  242. Thanks for using Fractdev, The Fractint Developer's Discussion List
  243. Post Message:   fractdev@lists.xmission.com
  244. Get Commands:   majordomo@lists.xmission.com "help"
  245. Administrator:  twegner@fractint.org
  246. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  247.  
  248.  
  249. -------------------------------------------------------------------------------
  250.  
  251. From: "Jonathan Osuch" <osuchj@uswest.net>
  252. Subject: Re: Allegro package Xfractint 
  253. Date: 26 May 2000 20:26:49 -0500
  254.  
  255. Rich,
  256.  
  257. > If you have the energy for it, we should revamp the input towards an
  258. > event-based system.  For DOS you can always invent your own "message
  259. > pump".  (Can't you get DOS to invoke an interrupt routine when a key
  260.  > is pressed or mouse is moved that queues the input data for later
  261. > processing?  I never really programmed in DOS.)
  262.  
  263. The Allegro package has a djgpp implementation.  So, in theory, it should be
  264. set up for DOS once we get the Unix version running.  Can you give me a
  265. brief explanation on how to implement an event-based system?  With so much
  266. of the code currently broken, now would be a great time to make that change.
  267.  
  268. As for the energy, I've been doing this at work, since I currently don't
  269. have anything else to do.  That is supposed to change next Tuesday.  I hope
  270. it does, I don't really want to get laid off at this point in time.
  271.  
  272. Something I haven't started on, but have been thinking about is that the
  273. Allegro package has routines for making menu's.  This would provide a
  274. slicker package, but I'm not sure how easy that would be while maintaining
  275. the "driver" interface.  OTOH, since the interface is not really defined
  276. yet, we can change it to make it work.
  277.  
  278. Jonathan
  279.  
  280.  
  281.  
  282. Thanks for using Fractdev, The Fractint Developer's Discussion List
  283. Post Message:   fractdev@lists.xmission.com
  284. Get Commands:   majordomo@lists.xmission.com "help"
  285. Administrator:  twegner@fractint.org
  286. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  287.  
  288.  
  289. -------------------------------------------------------------------------------
  290.  
  291. From: Phil McRevis <legalize@xmission.com>
  292. Subject: Re: Allegro package Xfractint 
  293. Date: 27 May 2000 17:39:10 -0600
  294.  
  295.  
  296. In article <000a01bfc77a$acc6a3e0$0100a8c0@bananasenior>,
  297.     "Jonathan Osuch" <osuchj@uswest.net>  writes:
  298.  
  299. > The Allegro package has a djgpp implementation.  So, in theory, it should be
  300. > set up for DOS once we get the Unix version running.  Can you give me a
  301. > brief explanation on how to implement an event-based system?
  302.  
  303. If you are doing input in a polling style you find a convenient place
  304. to periodically check for keyboard input and then abort your current
  305. computation to go handle the keyboard input.  So you have code that is
  306. roughly structured like this:
  307.  
  308.     done = false;
  309.     while (!done) {
  310.     do_something();
  311.     key = getakey();
  312.     if (key == ESC)
  313.         break;
  314.     do_something_else();
  315.     if (finished())
  316.         done = true;
  317.     }
  318.     if (!done) // ESC broke us out
  319.     handle_esc();
  320.     else
  321.     final_stuff();
  322.  
  323. and so-on.  Basically the getakey() polls the input buffer to check to
  324. see if there is anything.  If so, then the input is handled somehow.
  325. Some places in fractint handle keys immediately and then continue with
  326. the work, whereas others (like pressing ESC) cause the control flow to
  327. be altered by aborting the current calculation, or going into a menu
  328. display or something.
  329.  
  330. Basically the fictitious routines do_something(), do_something_else(),
  331. finished() and final_stuff() I've written above are the "idle" loop
  332. that is executed when you don't have any input waiting for you to
  333. handle.  It is essentially a state machine (starts with done=false and
  334. proceeds doing incremental batches of work until done=true) that is
  335. interleaved with checking for input whenever a state transition could
  336. be made.
  337.  
  338. The event-loop style of handling this is to separate the idle
  339. processing state machine from the input handling like so:
  340.  
  341.     quit = false;
  342.     while (!quit) {
  343.     if (peek_event()) {
  344.         event = get_event();
  345.         handle_event(event);
  346.     } else {
  347.         do_idle_routine();
  348.     }
  349.     }
  350.  
  351. where the routines peek_event(), get_event(), and handle_event() do
  352. the input processing.  When no events are available for processing,
  353. the code executes the idle input state machine code.  Obviously the
  354. routine do_idle_processing() shouldn't take a long time because the
  355. program isn't going to respond to input while doing the idle
  356. processing.  However, fractint is already structured this way because
  357. of the frequent calls to getakey() which aborts or suspends any idle
  358. processing based on the key pressed.
  359.  
  360. Eventually some piece of input (or completion of the idle processing
  361. in batch mode) will signal that quit should be set to true, thus
  362. causing the program to terminate.  The above is the structure of every
  363. Win32 application, as well as every X Window System application.  They
  364. process events until the program receives an event (or a condition is
  365. triggered) that causes the program to terminate.
  366.  
  367. I certainly hope you don't get laid off!  I don't know if you're
  368. willing to relocate, but if you know Windows programming (especially
  369. COM), there are two full-time positions open where I work in Salt Lake
  370. City.  Give me a hollar if you are interested in exploring that
  371. possibility.
  372.  
  373. As for the allegro menu system, right now I would concentrate on just
  374. getting a bare-bones interface to work using whatever is most
  375. convenient.  For the "big picture", the differences between
  376. Mac/Win32/X are small enough that the driver interface should be able
  377. to handle them all.  We can always get fancier with the interface
  378. later after we get something basic working, even if the basics are
  379. initially ugly.
  380. --
  381. <http://www.xmission.com/~legalize/>    Legalize Adulthood!
  382.     ``Ain't it funny that they all fire the pistol,     
  383.       at the wrong end of the race?''--PDBT     
  384. legalize@xmission.com    <http://www.xmission.com/~legalize/who/>
  385.  
  386. Thanks for using Fractdev, The Fractint Developer's Discussion List
  387. Post Message:   fractdev@lists.xmission.com
  388. Get Commands:   majordomo@lists.xmission.com "help"
  389. Administrator:  twegner@fractint.org
  390. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  391.  
  392.  
  393. -------------------------------------------------------------------------------
  394.  
  395. From: "Scott D. Boyd" <sdboyd@fastlane.net>
  396. Subject: Xfractint dev. question
  397. Date: 30 May 2000 01:20:42 -0500
  398.  
  399. Hi all,
  400.  
  401. I know it's not in the source, but is fractint.cfg used for *any reason* by
  402. Xfractint? Or is it a moot point (or moot file) since X takes care of the
  403. graphics window?
  404.  
  405. Scott Boyd
  406.  
  407. -- 
  408. email:  sdboyd@fastlane.net
  409. http://www.fastlane.net/~sdboyd/
  410. "Make it idiot-proof, and someone will make a better idiot."
  411.  
  412.  
  413. Thanks for using Fractdev, The Fractint Developer's Discussion List
  414. Post Message:   fractdev@lists.xmission.com
  415. Get Commands:   majordomo@lists.xmission.com "help"
  416. Administrator:  twegner@fractint.org
  417. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  418.  
  419.  
  420. -------------------------------------------------------------------------------
  421.  
  422. From: "Jonathan Osuch" <osuchj@uswest.net>
  423. Subject: Re: Xfractint dev. question
  424. Date: 30 May 2000 19:56:13 -0500
  425.  
  426. Scott,
  427.  
  428. > I know it's not in the source, but is fractint.cfg used for *any reason*
  429. by
  430. > Xfractint? Or is it a moot point (or moot file) since X takes care of the
  431. > graphics window?
  432.  
  433. It is not used for anything and is one of many files that will be
  434. disappearing.  There is a lot of legacy code that will need to be removed
  435. once the integration of the Allegro graphics package is complete.
  436.  
  437. The status of the Allegro integration:  Basic graphics and text windows
  438. work.  No zooming or text cursor.  The help screens and certain other text
  439. screens crash.  The 8, 15, 16, 24, and 32 bpp graphics modes work.  There is
  440. still lots to do.
  441.  
  442. Jonathan
  443.  
  444.  
  445.  
  446. Thanks for using Fractdev, The Fractint Developer's Discussion List
  447. Post Message:   fractdev@lists.xmission.com
  448. Get Commands:   majordomo@lists.xmission.com "help"
  449. Administrator:  twegner@fractint.org
  450. Unsubscribe:    majordomo@lists.xmission.com "unsubscribe fractdev"
  451.  
  452.