/[projet1]/public/atari/demos/defenceforce/savetheearth/chatroom.s
Defence Force logotype

Contents of /public/atari/demos/defenceforce/savetheearth/chatroom.s

Parent Directory Parent Directory | Revision Log Revision Log


Revision 172 - (show annotations)
Sat Nov 28 13:10:37 2009 UTC (10 years ago) by dbug
File size: 19730 byte(s)
Added the source code of "Save The Earth", the Atari STe demo presented at Kindergarden 2009
1
2 IRC_LINE_HEIGHT equ 7
3 IRC_LINE_COUNT equ 20
4 IRC_BOTTOM_POS_Y equ 134
5 IRC_POS_X_TIMESTAMPS equ 16
6 IRC_POS_X_NICKNAMES equ 34
7 IRC_POS_X_MESSAGES equ 88
8 IRC_POS_X_INPUTBOX equ 48
9 IRC_POS_Y_INPUTBOX equ 146
10 IRC_POS_X1_INPUTBOX equ 396
11 IRC_POS_Y1_INPUTBOX equ 153
12
13 IRC_MASK_RANDOM_INPUT equ 3 ; Power of two-1
14 IRC_MIN_DELAY_INPUT equ 2
15
16
17 IRCNICK_SYSTEM equ 0
18 IRCNICK_BEETLEF060 equ 1
19 IRCNICK_DBUG equ 2
20 IRCNICK_DEFJAM equ 3
21 IRCNICK_EVL equ 4
22 IRCNICK_GGN equ 5
23 IRCNICK_GRAZEY equ 6
24 IRCNICK_KEOPS equ 7
25 IRCNICK_MTFELICE equ 8
26 IRCNICK_PARANOID equ 9
27 IRCNICK_PMDATA equ 10
28 IRCNICK_RA equ 11
29 IRCNICK_RAYTSCC equ 12
30 IRCNICK_SSB equ 13
31 IRCNICK_STINGRAY equ 14
32 IRCNICK_XIA equ 15
33
34
35 SECTION TEXT
36
37 even
38
39 ChatRoomInit
40 ; Depack the chatroom picture
41 lea PackInfoChatRoom,a0
42 bsr DepackBlock
43
44 ; Depack audio
45 lea packed_chatroom_sample_start,a0
46 lea big_buffer_start+chatroom_sample_start,a1
47 move.l #chatroom_sample_end-chatroom_sample_start,d0
48 bsr DepackDelta
49
50 bsr ChatRoomInitPalettes
51
52 ; Using the template data, we generate the fullscreen
53 lea PanoramicTemplate_DisplayList,a0
54 lea big_buffer_start+chatroom_fullscreen,a1
55 bsr GenerateOverscan
56 rts
57
58 ChatRoomPlay
59 bsr SequencerPlay
60 bsr ChatRoomUpdateTyping
61 bsr ChatRoomSetScreen
62 rts
63
64 ChatRoomTerminate
65 bsr TerminateFullscreenTimer
66 rts
67
68
69 ChatRoomSetScreen
70 ; Update the display list to point on the correct screen adress
71 move.l #big_buffer_start+chatroom_depacked_picture+32*200,d1
72 lsl.l #8,d1
73 move.l d1,a0
74
75 lea big_buffer_start+chatroom_depacked_picture,a1
76 lea DisplayList,a2
77 move.l #208*256,d0
78 moveq #32,d1
79 bsr DisplayListInit200
80 rts
81
82
83 ; (372,173)-(398,183)
84 ; 2 blocs wide
85 ; 11 lines high
86 ;
87 ; Seconds: colonne 385 (offset 192); pixels 176,177,179,180
88 ; Color Index 4
89 ChatRoomUpdateClock
90 ; Blinking pixel dots
91 lea big_buffer_start+chatroom_depacked_picture+(32*200)+176*208+192,a0
92 move.b time_seconds,d0
93 and.b #1,d0
94 beq.s .seconde_off
95 .seconde_on
96 ; 176
97 or.w #%0100000000000000,(a0)
98 and.w #%1011111111111111,2(a0)
99 and.w #%1011111111111111,4(a0)
100 and.w #%1011111111111111,6(a0)
101 ; 177
102 lea 208(a0),a0
103 or.w #%0100000000000000,(a0)
104 and.w #%1011111111111111,2(a0)
105 and.w #%1011111111111111,4(a0)
106 and.w #%1011111111111111,6(a0)
107 ; 179
108 lea 208*2(a0),a0
109 or.w #%0100000000000000,(a0)
110 and.w #%1011111111111111,2(a0)
111 and.w #%1011111111111111,4(a0)
112 and.w #%1011111111111111,6(a0)
113 ; 180
114 lea 208(a0),a0
115 or.w #%0100000000000000,(a0)
116 and.w #%1011111111111111,2(a0)
117 and.w #%1011111111111111,4(a0)
118 and.w #%1011111111111111,6(a0)
119 bra.s .seconde_done
120
121 .seconde_off
122 ; 176
123 and.w #%1011111111111111,(a0)
124 and.w #%1011111111111111,2(a0)
125 and.w #%1011111111111111,4(a0)
126 and.w #%1011111111111111,6(a0)
127 ; 177
128 lea 208(a0),a0
129 and.w #%1011111111111111,(a0)
130 and.w #%1011111111111111,2(a0)
131 and.w #%1011111111111111,4(a0)
132 and.w #%1011111111111111,6(a0)
133 ; 179
134 lea 208*2(a0),a0
135 and.w #%1011111111111111,(a0)
136 and.w #%1011111111111111,2(a0)
137 and.w #%1011111111111111,4(a0)
138 and.w #%1011111111111111,6(a0)
139 ; 180
140 lea 208(a0),a0
141 and.w #%1011111111111111,(a0)
142 and.w #%1011111111111111,2(a0)
143 and.w #%1011111111111111,4(a0)
144 and.w #%1011111111111111,6(a0)
145 .seconde_done
146
147 ;
148 ; Erase the old segments
149 ;
150 lea big_buffer_start+chatroom_depacked_picture+(32*200)+173*208+184,a2
151 move.l #%11111100011100011111110001110001,d7 ; Horizontal segments for hours - black
152 move.l #%11111011101011101111101110101110,d6 ; Vertical segments for hours- black
153
154 move.l #%11110001110001111111000111000111,d5 ; Horizontal segments for minutes - black
155 move.l #%11101110101110111110111010111011,d4 ; Vertical segments for minutes- black
156
157 ; Top line
158 and.l d7,(a2)
159 and.l d7,4(a2)
160 and.l d5,8+0(a2)
161 and.l d5,8+4(a2)
162 lea 208(a2),a2
163
164 ; Top/bottom section
165 moveq #4-1,d0
166 .loop
167 and.l d6,(a2)
168 and.l d6,4(a2)
169 and.l d6,208*5+0(a2)
170 and.l d6,208*5+4(a2)
171 and.l d4,8+0(a2)
172 and.l d4,8+4(a2)
173 and.l d4,208*5+8+0(a2)
174 and.l d4,208*5+8+4(a2)
175 lea 208(a2),a2
176 dbra d0,.loop
177
178 ; Mid line
179 and.l d7,(a2)
180 and.l d7,4(a2)
181 and.l d5,8+0(a2)
182 and.l d5,8+4(a2)
183 lea 208*5(a2),a2
184
185 ; End line
186 and.l d7,(a2)
187 and.l d7,4(a2)
188 and.l d5,8+0(a2)
189 and.l d5,8+4(a2)
190
191 ;
192 ; Draw the activated segments depending of time
193 ;
194
195 ; First digit of the minutes
196 ; Colomn 384 (offset 192), line 173
197 move.b time_hours,d0
198 lsl.w #8,d0
199 move.b time_minutes,d0 ; HHMM (16 bits)
200
201 lea TableDigitShiftBit,a3
202 lea TableDigitOffset,a4
203
204 moveq #4-1,d7
205 .loop_digit
206 move d0,d1
207 lsr #4,d0
208
209 and #$0f,d1 ; Get nibble for current digit
210
211 moveq #0,d2
212 move.b (a4,d7),d2 ; Get screen offset
213 lea big_buffer_start+chatroom_depacked_picture+(32*200)+173*208+184,a2
214 add.w d2,a2 ; Final screen adress
215
216 moveq #0,d2
217 move.b (a3,d7),d2 ; Shift value
218
219
220 lea TaskBarClockDigits,a0 ; Real number for drawing, 5 entries
221 lsl #3,d1
222 add d1,a0 ; Segment description for this number
223
224 ; Top segment
225 moveq #0,d3
226 move.b (a0)+,d3
227 lsl d2,d3 ; Shift the segment value for the screen
228 or.w d3,208*0(a2) ; Write the top segment value
229
230 ; Top vertical segments
231 moveq #0,d3
232 move.b (a0)+,d3
233 lsl d2,d3 ; Shift the segment value for the screen
234 or.w d3,208*1(a2) ; Write the top segment value
235 or.w d3,208*2(a2) ; Write the top segment value
236 or.w d3,208*3(a2) ; Write the top segment value
237 or.w d3,208*4(a2) ; Write the top segment value
238
239 ; Mid segment
240 moveq #0,d3
241 move.b (a0)+,d3
242 lsl d2,d3 ; Shift the segment value for the screen
243 or.w d3,208*5(a2) ; Write the middle segment value
244
245 ; Bottom vertical segments
246 moveq #0,d3
247 move.b (a0)+,d3
248 lsl d2,d3 ; Shift the segment value for the screen
249 or.w d3,208*6(a2) ; Write the top segment value
250 or.w d3,208*7(a2) ; Write the top segment value
251 or.w d3,208*8(a2) ; Write the top segment value
252 or.w d3,208*9(a2) ; Write the top segment value
253
254 ; Bottom segment
255 moveq #0,d3
256 move.b (a0)+,d3
257 lsl d2,d3 ; Shift the segment value for the screen
258 or.w d3,208*10(a2) ; Write the bottom segment value
259
260 dbra d7,.loop_digit
261
262 rts
263
264
265 ; 7*20=140
266 ChatRoomInitPalettes
267 lea ChatColors+IRCNICK_DBUG*8,a0
268 lea big_buffer_start+chatroom_depacked_picture+IRC_POS_Y_INPUTBOX*32,a1
269 move #7-1,d6
270 .loop_scanline
271 move.l (a0),(a1)
272 move.l 4(a0),4(a1)
273 lea 32(a1),a1
274 dbra d6,.loop_scanline
275 rts
276
277 EraseTopOfTheChat
278 lea big_buffer_start+chatroom_depacked_picture+32*200,a0
279 move.l a0,a1
280 add.l #208*142,a1
281 bsr MemoryClear
282 rts
283
284
285 ChatRoomEraseTypeBox
286 lea big_buffer_start+chatroom_depacked_picture+(32*200)+24+IRC_POS_Y_INPUTBOX*208,a0
287 move #7-1,d0
288 .loop_erase
289 lea 168(a0),a1
290 bsr MemoryClear
291 lea 208(a0),a0
292 dbra d0,.loop_erase
293 rts
294
295 ; a0=message adress
296 ; a1=buffer
297 ChatRoomPrintMessage
298 move #8,character_xpos
299 move #1,character_ypos
300 move.l #big_buffer_start+chatroom_depacked_picture+32*200+8,character_buffer_base
301
302 .loop
303 moveq #0,d0
304 move.b (a0)+,d0 ; Get the current character
305 beq.s .done
306 cmp.b #13,d0
307 beq.s .next_line
308
309 ; d0=character index
310 ; a6=pointer on the font description bloc
311 lea FontSmall,a6
312 bsr CharacterDraw
313 bra.s .loop
314 .done
315 rts
316 .next_line
317 move #8,character_xpos
318 add #7,character_ypos
319 bra.s .loop
320
321
322
323 ChatRoomScrollUp
324 ; Scrollup text
325 lea big_buffer_start+chatroom_depacked_picture+32*200+8,a0
326 lea 208*7(a0),a1
327 move.w #135-1,d0
328 .loop_scroll_lines
329 move.w #200/4-1,d1
330 move.l a0,a2
331 move.l a1,a3
332 .loop_scroll
333 move.l (a3)+,(a2)+
334 dbra d1,.loop_scroll
335 lea 208(a0),a0
336 lea 208(a1),a1
337 dbra d0,.loop_scroll_lines
338
339 ; Erase the old line
340 lea big_buffer_start+chatroom_depacked_picture+32*200+8+IRC_BOTTOM_POS_Y*208,a0
341 move #7-1,d0
342 .loop_erase
343 lea 184(a0),a1
344 bsr MemoryClear
345 lea 208(a0),a0
346 dbra d0,.loop_erase
347
348 ; Scrollup colors
349 lea big_buffer_start+chatroom_depacked_picture,a0
350 move #135-1,d7
351 .loop_scroll_palettes
352 move.l 32*7(a0),(a0)
353 move.l 32*7+4(a0),4(a0)
354 lea 32(a0),a0
355 dbra d7,.loop_scroll_palettes
356 rts
357
358
359 ; Type one character at a type
360 ChatRoomUpdateTyping
361 lea big_buffer_start,a6
362 move.l chatroom_type_start_ptr(a6),a0
363 cmp.l #0,a0
364 beq.s .done ; No current message
365 tst.b chatroom_type_delay(a6)
366 beq.s .new_character
367 subq.b #1,chatroom_type_delay(a6)
368 .done
369 rts
370
371 .new_character
372 bsr NextPRN
373 and #IRC_MASK_RANDOM_INPUT,d0
374 add #IRC_MIN_DELAY_INPUT,d0
375 ;moveq #0,d0
376 move.b d0,chatroom_type_delay(a6) ; Save the delay before the next character
377
378 moveq #0,d0
379 move.b chatroom_type_offset(a6),d0 ; Character offset
380 move.b (a0,d0),d0 ; Next character to display
381 beq.s .typing_done
382
383 addq.b #1,chatroom_type_offset(a6)
384
385 ; Display the new character
386 move.l #big_buffer_start+chatroom_depacked_picture+32*200,character_buffer_base
387 move.w chatroom_type_pos_x(a6),character_xpos
388 move.w #IRC_POS_Y_INPUTBOX,character_ypos
389
390 bsr PlayRandomClickSound
391
392 ; d0=character index
393 ; a6=pointer on the font description bloc
394 lea FontSmall,a6
395 bsr CharacterDraw
396 move.w character_xpos,big_buffer_start+chatroom_type_pos_x
397 ;bra ChatRoomUpdateTyping
398 rts
399
400 ; Reached the zero, need to display the text
401 .typing_done
402 clr.l chatroom_type_start_ptr(a6) ; Clear the type pointer
403 move.w #IRCNICK_DBUG,d0
404 bsr ChatRoomIrcPrintMessageReal ; Display the message in the chat room
405
406 bsr ChatRoomEraseTypeBox ; Erase the message in the box
407 rts
408
409
410 PlayRandomClickSound
411 movem.l d0-a6,-(sp)
412
413 bsr NextPRN
414 and #3,d0
415 add d0,d0
416 add d0,d0
417 lea TableKeyboardSounds,a2
418 add d0,a2
419
420 lea big_buffer_start+chatroom_sample_start,a0
421 move.l a0,a1
422 add (a2)+,a0
423 add (a2)+,a1
424
425 bsr StartReplay
426
427 movem.l (sp)+,d0-a6
428 rts
429
430
431 ; d0=nickname index
432 ; a0=message string
433 ;
434 ; returns a0 pointing on the byte after the 0
435 ChatRoomIrcPrintMessage
436 cmp.w #IRCNICK_DBUG,d0
437 bne.s ChatRoomIrcPrintMessageReal
438
439 ; This is Dbug typing
440 ; Set this as the real message to print
441 lea big_buffer_start,a1
442 move.l a0,chatroom_type_start_ptr(a1)
443 move.w #IRC_POS_X_INPUTBOX,chatroom_type_pos_x(a1)
444 sf.b chatroom_type_offset(a1)
445 sf.b chatroom_type_delay(a1)
446 bsr GetAlignedEndOfString
447 ;.loop_find_end
448 ; tst.b (a0)+
449 ; bne.s .loop_find_end
450 ; return a0 pointing on the last character
451 rts
452
453 ChatRoomIrcPrintMessageReal
454 movem.l d0/a0,-(sp)
455 bsr ChatRoomScrollUp
456 movem.l (sp)+,d0/a0
457
458 ; Positions:
459 ; - 24 -> time stamp
460 ; - xx -> Nicknames
461 ; - yy -> Messages
462 ; Need a vertical separator line between the nick names and the messages
463 move.l #big_buffer_start+chatroom_depacked_picture+32*200,character_buffer_base
464 move #IRC_BOTTOM_POS_Y,character_ypos
465
466
467 ; Set the colors depending of the NickName
468 lea big_buffer_start+chatroom_depacked_picture+(IRC_BOTTOM_POS_Y*32),a1
469 lea ChatColors,a2
470 move d0,d1
471 and #7,d1
472 lsl #3,d1
473 add d1,a2
474 move #7-1,d6
475 .loop_scanline
476 move.l (a2),(a1)
477 move.l 4(a2),4(a1)
478 lea 32(a1),a1
479 dbra d6,.loop_scanline
480
481 move.l a0,-(sp)
482 ; Display the nickname
483 lea ListNickNames,a0
484 add d0,d0
485 add d0,d0
486 move.l (a0,d0),a0
487 move #IRC_POS_X_NICKNAMES,d0
488 add.b (a0)+,d0
489 move d0,character_xpos
490 bsr ChatRoomIrcOutputLine
491 move.l (sp)+,a0
492
493 ; Display the message
494 move #IRC_POS_X_MESSAGES,character_xpos
495 ; ! a0 comes from the caller, don't get it erased
496 bsr ChatRoomIrcOutputLine
497 move.l a0,-(sp)
498
499 ; Display the time stamp
500 moveq #0,d0
501 lea IrcTimeStamp,a0
502 lea HexDigits,a1
503
504 move.b time_minutes,d0
505 move.b d0,d1
506 and #7,d0
507 move.b (a1,d0),4(a0)
508 move.b d1,d0
509 lsr.b #4,d0
510 move.b (a1,d0),3(a0)
511
512 move.b time_hours,d0
513 move.b d0,d1
514 and #7,d0
515 move.b (a1,d0),1(a0)
516 move.b d1,d0
517 lsr.b #4,d0
518 move.b (a1,d0),0(a0)
519
520 move #IRC_POS_X_TIMESTAMPS,character_xpos
521 bsr ChatRoomIrcOutputLine
522
523 ; Restore the chat position
524 move.l (sp)+,a0
525 rts
526
527
528 ChatRoomIrcOutputLine
529 .loop
530 moveq #0,d0
531 move.b (a0)+,d0 ; Get the current character
532 beq.s .done
533 cmp.b #13,d0
534 beq.s .done
535
536 ; d0=character index
537 ; a6=pointer on the font description bloc
538 lea FontSmall,a6
539 bsr CharacterDraw
540 bra.s .loop
541 .done
542 rts
543 .next_line
544 move #8,character_xpos
545 add #7,character_ypos
546 bra.s .loop
547
548
549 SECTION DATA
550
551 IrcTimeStamp
552 ; 01234
553 dc.b "00:00",0
554
555 even
556
557
558 ChatRoomSequencer
559 SEQUENCE_SETPTR _AdrPartVblRoutine,ChatRoomUpdateClock
560
561 SEQUENCE_TEMPORIZE 5
562 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"Topic for #atariscne is: Outline results: http://www.dhs.nu">
563 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"Topic for #atariscne set by evl~an@yada.se">
564 SEQUENCE_SUBTITLE <"Welcome to the modern demoscene!">
565 SEQUENCE_TEMPORIZE 50
566 SEQUENCE_IRC_MESSAGE IRCNICK_EVL,<"Hi _Dbug_ :) How's the demo going?">
567 SEQUENCE_TEMPORIZE 90
568 SEQUENCE_TEMPORIZE 50
569 SEQUENCE_IRC_MESSAGE IRCNICK_DBUG,<"Not that well I fear...">
570 SEQUENCE_TEMPORIZE 70
571 SEQUENCE_IRC_MESSAGE IRCNICK_BEETLEF060,<"Hi Dbg">
572 SEQUENCE_TEMPORIZE 80
573 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"CyranoJ has joined #atariscne">
574 SEQUENCE_TEMPORIZE 50
575 SEQUENCE_IRC_MESSAGE IRCNICK_EVL,<"Oh?">
576 SEQUENCE_TEMPORIZE 60
577 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"Malodix has quit (EOF From client)">
578 SEQUENCE_TEMPORIZE 40
579 SEQUENCE_IRC_MESSAGE IRCNICK_PMDATA,<"Dbug can't debug ?">
580 SEQUENCE_TEMPORIZE 40
581 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"MT-Felice has joined #atariscne">
582 SEQUENCE_TEMPORIZE 40
583 SEQUENCE_IRC_MESSAGE IRCNICK_DBUG,<"Trying to find ideas by watching old demos :-/">
584 SEQUENCE_TEMPORIZE 60
585 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"full pixel? full screen I meant ;D">
586 SEQUENCE_TEMPORIZE 80
587 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"_Paranoid can do a full single pixel plarma, too! :-D">
588 SEQUENCE_TEMPORIZE 40
589 SEQUENCE_IRC_MESSAGE IRCNICK_PARANOID,<"plasma">
590 SEQUENCE_TEMPORIZE 50
591 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"haha">
592 SEQUENCE_TEMPORIZE 80
593 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"StingRay deserves that">
594 SEQUENCE_TEMPORIZE 50
595 SEQUENCE_IRC_MESSAGE IRCNICK_KEOPS,<"No too old I hope, one BITS is enough!">
596 SEQUENCE_TEMPORIZE 60
597 SEQUENCE_IRC_MESSAGE IRCNICK_GGN,<"lol">
598 SEQUENCE_TEMPORIZE 30
599 SEQUENCE_IRC_MESSAGE IRCNICK_XIA,<"You know, possibly Bits are just misunderstood Genius :)">
600 SEQUENCE_TEMPORIZE 50
601 SEQUENCE_IRC_MESSAGE IRCNICK_DBUG,<"Had some ideas, but would be either too boring or too complicated">
602 SEQUENCE_TEMPORIZE 60
603 SEQUENCE_IRC_MESSAGE IRCNICK_EVL,<"I see. Well, good luck!">
604 SEQUENCE_TEMPORIZE 50
605 SEQUENCE_IRC_MESSAGE IRCNICK_KEOPS,<142>
606 SEQUENCE_TEMPORIZE 20
607 SEQUENCE_IRC_MESSAGE IRCNICK_KEOPS,<143>
608 SEQUENCE_TEMPORIZE 50
609 SEQUENCE_IRC_MESSAGE IRCNICK_XIA,<"ASCII Art !">
610 SEQUENCE_TEMPORIZE 50
611 SEQUENCE_TEMPORIZE 40
612 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"indeed ;D">
613
614 SEQUENCE_TEMPORIZE 20
615 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"rather lame demo tho">
616 SEQUENCE_TEMPORIZE 50
617 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"except for that part">
618
619 SEQUENCE_IRC_MESSAGE IRCNICK_MTFELICE,<"Hi everybody.">
620 SEQUENCE_IRC_MESSAGE IRCNICK_DBUG,<":)">
621
622 SEQUENCE_TEMPORIZE 20
623 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<":D">
624 SEQUENCE_TEMPORIZE 50
625 SEQUENCE_IRC_MESSAGE IRCNICK_SSB,<"StingRay, you shouldnt slag off your old work like that!">
626 SEQUENCE_TEMPORIZE 10
627 SEQUENCE_IRC_MESSAGE IRCNICK_SSB,<":)">
628 SEQUENCE_TEMPORIZE 50
629 SEQUENCE_IRC_MESSAGE IRCNICK_SYSTEM,<"Paranoid has quit ('Plantsch!')">
630 SEQUENCE_TEMPORIZE 30
631 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"haha">
632 SEQUENCE_SUBTITLE <"IRC, forums, videos, internet, trolls &",13,"glops, but not much demomaking :(">
633 SEQUENCE_IRC_MESSAGE IRCNICK_DBUG,<"Anyway, sleep time for me. Good night everybody.">
634
635 SEQUENCE_TEMPORIZE 50*6
636
637 SEQUENCE_IRC_MESSAGE IRCNICK_STINGRAY,<"Night bug">
638 SEQUENCE_TEMPORIZE 30
639 SEQUENCE_IRC_MESSAGE IRCNICK_XIA,<"Good night as well.">
640 SEQUENCE_IRC_MESSAGE IRCNICK_GGN,<"cu">
641
642 ; Wait a bit
643 SEQUENCE_TEMPORIZE 50*1
644
645 ; And leave
646 SEQUENCE_GO_NEXT_PART
647
648 SEQUENCE_END
649
650
651 PackInfoChatRoom
652 dc.l packed_picture_chatroom
653 dc.l big_buffer_start+chatroom_depacked_picture
654 dc.l 48000
655
656
657 ; Unpacked: 48000
658 ; Packed: 13032
659 FILE "chatroom.pik",packed_picture_chatroom
660
661 ; Unpacked: 9536
662 ; Packed: 4769
663 FILE "keyboard.dlt",packed_chatroom_sample_start,packed_chatroom_sample_end
664
665 even
666
667
668 ; 2*4=8 bytes per entry
669 ChatColors
670 dc.w $777,$666,$555,$333 ; Grey
671 dc.w $777,$766,$655,$533 ; Red
672 dc.w $777,$676,$565,$353 ; Green
673 dc.w $777,$667,$556,$335 ; Blue
674
675 dc.w $777,$776,$665,$553 ; Yellow
676 dc.w $777,$677,$566,$355 ; Cyan
677 dc.w $777,$767,$656,$535 ; Magenta
678 dc.w $777,$666,$555,$333 ;
679
680
681 TaskBarClockDigits
682 ; 0
683 dc.b %01110
684 dc.b %10001
685 dc.b %00000
686 dc.b %10001
687 dc.b %01110
688 dc.b 0,0,0
689
690 ; 1
691 dc.b %00000
692 dc.b %00001
693 dc.b %00000
694 dc.b %00001
695 dc.b %00000
696 dc.b 0,0,0
697
698 ; 2
699 dc.b %01110
700 dc.b %00001
701 dc.b %01110
702 dc.b %10000
703 dc.b %01110
704 dc.b 0,0,0
705
706 ; 3
707 dc.b %01110
708 dc.b %00001
709 dc.b %01110
710 dc.b %00001
711 dc.b %01110
712 dc.b 0,0,0
713
714 ; 4
715 dc.b %00000
716 dc.b %10001
717 dc.b %01110
718 dc.b %00001
719 dc.b %00000
720 dc.b 0,0,0
721
722 ; 5
723 dc.b %01110
724 dc.b %10000
725 dc.b %01110
726 dc.b %00001
727 dc.b %01110
728 dc.b 0,0,0
729
730 ; 6
731 dc.b %01110
732 dc.b %10000
733 dc.b %01110
734 dc.b %10001
735 dc.b %01110
736 dc.b 0,0,0
737
738 ; 7
739 dc.b %01110
740 dc.b %00001
741 dc.b %00000
742 dc.b %00001
743 dc.b %00000
744 dc.b 0,0,0
745
746 ; 8
747 dc.b %01110
748 dc.b %10001
749 dc.b %01110
750 dc.b %10001
751 dc.b %01110
752 dc.b 0,0,0
753
754 ; 9
755 dc.b %01110
756 dc.b %10001
757 dc.b %01110
758 dc.b %00001
759 dc.b %01110
760 dc.b 0,0,0
761
762 TableDigitShiftBit
763 dc.b 6,0,8,2
764
765 TableDigitOffset
766 dc.b 0,0,8,8
767
768
769 TableKeyboardSounds
770 dc.w 0,1598
771 dc.w 1598,2696
772 dc.w 2696,3922
773 dc.w 3922,5221
774 dc.w 5001,5889
775 dc.w 5861,7041
776 dc.w 6989,8293
777 dc.w 8281,9533
778
779
780 ListNickNames
781 dc.l NickName_system
782 dc.l NickName_beetlef060
783 dc.l NickName_dbug
784 dc.l NickName_defjam
785 dc.l NickName_evl
786 dc.l NickName_ggn
787 dc.l NickName_grazey
788 dc.l NickName_keops
789 dc.l NickName_mtfelice
790 dc.l NickName_paranoid
791 dc.l NickName_pmdata
792 dc.l NickName_ra
793 dc.l NickName_raytscc
794 dc.l NickName_ssb
795 dc.l NickName_stingray
796 dc.l NickName_xia
797
798 NickName_system dc.b 43,"*",0
799 NickName_beetlef060 dc.b 22,"Beetle",0
800 NickName_dbug dc.b 15,"_Dbug_",0
801 NickName_defjam dc.b 10,"defjam",0
802 NickName_evl dc.b 35,"evl",0
803 NickName_ggn dc.b 33,"ggn",0
804 NickName_grazey dc.b 10,"Grazey",0
805 NickName_keops dc.b 22,"Keops",0
806 NickName_mtfelice dc.b 12,"MTFelice",0
807 NickName_paranoid dc.b 12,"Paranoid",0
808 NickName_pmdata dc.b 18,"pmdata",0
809 NickName_ra dc.b 30,"RQ",0
810 NickName_raytscc dc.b 10,"raytscc",0
811 NickName_ssb dc.b 33,"ssb",0
812 NickName_stingray dc.b 12,"StingRay",0
813 NickName_xia dc.b 34,"XiA",0
814
815
816 SECTION BSS
817
818 even
819
820
821
822 ;
823 ; The content of this buffer is going to be stored in
824 ; the big common table.
825 ;
826 rsreset
827 chatroom_type_start_ptr rs.l 1 ; Pointer on the message to type
828 chatroom_type_pos_x rs.w 1 ; Pïxel position of the next character
829 chatroom_type_offset rs.b 1 ; Offset in the message
830 chatroom_type_delay rs.b 1 ; Random delay to wait betwen characters
831 chatroom_fullscreen rs.b Size_PanoramicRoutine_DisplayList
832 chatroom_depacked_picture rs.b 48000
833
834 chatroom_sample_start rs.b 9536
835 chatroom_sample_end rs.b 16 ; Some padding to handle the alignment issues
836
837 update_buffer_size
838
839
840

  ViewVC Help
Powered by ViewVC 1.1.26