home *** CD-ROM | disk | FTP | other *** search
/ Trixter's Scene Collection / trixter.zip / trixter / Demos / SCIFIMAG.ZIP / SCIFIMAG.ASM < prev    next >
Assembly Source File  |  1993-10-06  |  35KB  |  692 lines

  1. comment |
  2. -----------------------------------------------------------------------------
  3.   Sourcecode für das Preview.
  4. -----------------------------------------------------------------------------
  5. █████████████████████████████████████████████████████████████████████████████
  6. ███████ 4D - Vektors   : HSMF / publicNMI   █████████████████████████████████
  7. ███████ Code 32        : Tran / Renaissance █████████████████████████████████
  8. ███████ Header-Remix   : Räd-Äd / publicNMI █████████████████████████████████
  9. █████████████████████████████████████████████████████████████████████████████|
  10.  
  11.         Ideal                          ; :)   
  12.         P386                           ;Protected Mode Befehle einschalten
  13.         Jumps                          ;Jump Offsets fixen
  14. segment code32 para public use32
  15.         assume cs:code32, ds:code32, ss:code32
  16.  
  17. ;----------------------------------------------------------------------------
  18. ; Alle Externals für's Code32 - Interface
  19. ;----------------------------------------------------------------------------
  20. extrn   v86r_ah:byte, v86r_al:byte, v86r_bh:byte, v86r_bl:byte
  21. extrn   v86r_ch:byte, v86r_cl:byte, v86r_dh:byte, v86r_dl:byte
  22. extrn   v86r_ax:word, v86r_bx:word, v86r_cx:word, v86r_dx:word
  23. extrn   v86r_si:word, v86r_di:word, v86r_bp:word, v86r_flags:word
  24. extrn   v86r_ds:word, v86r_es:word
  25. extrn   _totalextmem:word, _code16a:dword, _code32a:dword, _hextbl:byte
  26. extrn   _lomembase:dword, _lomemtop:dword, _himembase:dword, _himemtop:dword
  27.  
  28. extrn   _putdosmsg:near, _getvect:near, _setvect:near, _exit:near
  29. extrn   _getmem:near, _getlomem:near, _gethimem:near, _lomemsize:near
  30. extrn   _himemsize:near, _ret:near
  31.  
  32. ; Move realatively adjusted pointer to reg
  33. macro   @rlp reg, ptr
  34.         mov ®,&ptr
  35.         sub ®,_code32a
  36. endm
  37.  
  38. ; Output a byte to DX
  39. macro   @outb val
  40.         mov al,&val
  41.         out dx,al
  42. endm
  43.  
  44. ; Output a word to DX
  45. macro   @outw val
  46.         mov ax,&val
  47.         out dx,ax
  48. endm
  49.  
  50. ;----------------------------------------------------------------------------
  51. ; Hier gehts los....
  52. ;----------------------------------------------------------------------------
  53.  
  54. public  _main
  55.  
  56. _main:
  57.  
  58.     mov ax, _DATA    ;Segment-Adresse des Datensegments in AX laden...
  59.     xor ax, ax       ;...und wegschmeißen (Flat model kennt keine
  60.                   Segmente =B-> )
  61.         call init_4d     ;4D-Vektoren initalisieren...
  62.         jc   4d_ok       ;... ok ? Wenn ja, dann
  63.  
  64. ████████████████████████████████████████████████████████████████████████████████
  65. ████████████████████████████████████████████████████████████████████████████████
  66. ████████████████████████████████████████████████████████████████████████████████
  67. ████████████ Y E A H   Y O U   W I S H    L A M E R S   ! ! ! ██████████████████
  68. ████████████████████████████████████████████████████████████████████████████████
  69. ████████████████████████████████████████████████████████████████████████████████
  70. ████████████████████████████████████████████████████████████████████████████████
  71. ████████████████████████████████████████████████████████████████████████████████
  72. ████████████...This is only : ██████████████████████████████████████████████████
  73. ████████████████████████████████████████████████████████████████████████████████
  74. ████████████████████████████████████████████████████████████████████████████████
  75.                                                                               
  76.  
  77.           ┌──────────────────────────────┐
  78.          ┌───┐│     THE  "READ.ME"  FIlε     │┌───┐
  79.          └──┘│╘═╤═╤══════════════════════╤╤══╛│└──┘
  80.         ┌───┐└──┘ │  A Drama in 4 Acts   │└───┘┌───┐
  81.         └──┘└────┐╘══╤════════════════╤══╛┌────┘└──┘
  82.              ├───┘                └───┤
  83.                  ┌───┴────────────────────────┴───┐
  84.                  │┌──────────────────────────────┐│
  85.                   ││ 1...................The Past ││
  86.                  ├┤ 2................The Present ├┤
  87.              ││ 3.................The Future ││
  88.                  └┤ 4..........Another Dimension ├┘
  89.                   ╘══════════════════════════════╛
  90.  
  91.  
  92. ────────────────────╖
  93.       THE PAST      ║
  94. ────────────────────╨────────────╖
  95.  A brief history of public NMI : ║
  96. ═════════════════════════════════╝
  97.  
  98.   Out of an article for a diskmag [never released :-)]:
  99.   ─────────────────────────────────────────────────────
  100.     "public NMI was founded last summer (as far as I remember). We first
  101.   named ourselves 'Teacherbutchers', and then WE decided who is WE. Well, we
  102.   are still not sure today... So anyhow after the 'Hobby & Electronic 92' we
  103.   renamed into public NMI, spoken 'public non maskable interrupt'. Note that
  104.   it does NOT mean Public Enemy !!!!. We are no rappers (nore rippers) !!!!
  105.  
  106.     I had known that a thing like a scene existed for quite a while (about
  107.   5 years) from the C64 already, but the others only got little contact with
  108.   those things called demos. That was mainly because they had a PC, and I
  109.   had a C64.
  110.  
  111.     Anyhow, at the time I was trying to build up group contacts to the
  112.   C64-scene, but although that is a scene MUCH larger than the PC-scene
  113.   (with about 500 groups ) it is very hard to get into it if you live away
  114.   from the others of your group (Now that I am wiser and older I found out
  115.   that it is like this in the REAL world also.) I had just found out that
  116.   the C64- group 'Alive' lived near me, and I came just in time to see how
  117.   they jumped over to Amiga... tough luck ! But then I heard that they were
  118.   going to go to a thing called 'The Party 92', and that there was a
  119.   competition for PC-Demos there...
  120.  
  121.     Allright, we decided do to a demo for that compo, because HSMF had
  122.   already coded a few cool effects, like BIG Vectors, a fast Landscape and
  123.   fast Shadebobs. As we still had lots of time until the party (about 1½
  124.   months) we decided to rest from the work all this deciding-stuff had
  125.   caused us...
  126.  
  127.     In the meantime I got a PC, too (27th of Nov. 92), but I did the GFX
  128.   still on my C64 and then converted them. Well, so a week before the party
  129.   we 'fixed' the demo. Ok, it is one giant BUG !!! We set up a list of
  130.   things that could be improved in a few minutes or sometimes with a few
  131.   ASM-instructions, and if we had improved those bugs, the demo could
  132.   actually have looked quite ok. But, well, there is that fixer of ours who
  133.   was (!) unable to fix. For reasons of fairness i won't tell you who it is
  134.   (but take a glance at the memberlist... He is not on it anymore ). All
  135.   that can be done now is to forget that demo as fast as possible (and the
  136.   fixer, too ).
  137.  
  138.     In late January a friend of mine found out that another friend of mine
  139.   is a good composer... I mean a FUCKING GOOD composer. He is unable to
  140.   achieve simple tasks like deleting WINDOWS 3.1 from his hard-disk, but his
  141.   .mods are among the best I have ever heard. But you must judge for
  142.   yourself, of course. Our 'fixer' had got one of those wonderful things
  143.   called modems and managed to talk a sysop on a local BBS into installing a
  144.   public NMI support area on his box. Then he talked us into doing a
  145.   BBS-Intro for this support area (and his BBS, ofcoz), and we did. I think
  146.   that Intro is quite well done, especially the sound, the vector-bob-
  147.   scroll, the logo, the scrolltext and the bob :-)... but unfortunately this
  148.   CERTAIN fixer did the fixing and the ANSI-screen after the intro. It is a
  149.   waste of precious space to lose a single word about his inability to do
  150.   fixing or ANSI-screens or to write public NMI correctly....
  151.  
  152.     This intro release is now about half a year ago. The fixer was thrown
  153.   out, not really because he was lame, but because he actively HINDERED our
  154.   work instead of supporting it (Talk of group spirit or what...). Well, he
  155.   found another group and went his own ways...
  156.  
  157.     So, currently public NMI constists of two active members: HSMF and The
  158.   Räd-Äd. Our composer YO!hann (who renamed into "Captain Holiday" !) left
  159.   school and wants to become a hotel-manager. This is why we do not have the
  160.   contact with him we liked to have anymore. But we shall see how the things