Subversion Repositories Kolibri OS

Rev

Rev 2475 | Rev 2538 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2475 Rev 2476
Line 3... Line 3...
3
;*     DESKTOP ICON MANAGER     *
3
;*     DESKTOP ICON MANAGER     *
4
;*                              *
4
;*                              *
5
;*  Compile with flat assembler *
5
;*  Compile with flat assembler *
6
;*                              *
6
;*                              *
7
;********************************
7
;********************************
-
 
8
; version:	2.11
-
 
9
; last update:  19/03/2012
-
 
10
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
-
 
11
; changes:      The program uses only 140 Kb memory is now.
-
 
12
;               Some speedup.
8
;---------------------------------------------------------------------
13
;---------------------------------------------------------------------
9
; version:	2.1
14
; version:	2.1
10
; last update:  17/03/2012
15
; last update:  17/03/2012
11
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
16
; changed by:   Marat Zakiyanov aka Mario79, aka Mario
12
; changes:      Global optimization! The program uses
17
; changes:      Global optimization! The program uses
Line 31... Line 36...
31
; last update:  22|02|2005
36
; last update:  22|02|2005
32
; changed by:   Willow and Mario79
37
; changed by:   Willow and Mario79
33
; changes:      modified for work with new multi-thread ICON.
38
; changes:      modified for work with new multi-thread ICON.
34
;******************************************************************************
39
;******************************************************************************
35
ICON_SIZE equ 32*32*3
40
ICON_SIZE equ 32*32*3
36
RAW_SIZE equ ICON_SIZE*32	;350000
41
;RAW_SIZE equ ICON_SIZE*32	;350000
37
GIF_SIZE equ 12*1024	;45000
42
;GIF_SIZE equ 12*1024	;45000
38
REC_SIZE equ 80
43
REC_SIZE equ 80
39
ICONS_DAT equ '/sys/ICONS.DAT'
44
ICONS_DAT equ '/sys/ICONS.DAT'
40
ICON_APP equ '/sys/ICON'
45
ICON_APP equ '/sys/ICON'
41
ICON_STRIP equ '/sys/ICONSTRP.GIF'
46
ICON_STRIP equ '/sys/ICONSTRP.GIF'
42
;------------------------------------------------------------------------------
47
;------------------------------------------------------------------------------
Line 57... Line 62...
57
include 'gif_lite.inc'
62
include 'gif_lite.inc'
58
;include 'debug.inc'
63
;include 'debug.inc'
59
purge newline
64
purge newline
60
;------------------------------------------------------------------------------
65
;------------------------------------------------------------------------------
61
START:		; start of execution
66
START:		; start of execution
-
 
67
	mcall	68,11
-
 
68
; get size of file ICONSTRP.GIF
62
	mcall	70,finfo
69
	mcall	70,finfo
63
	cmp	ebx,GIF_SIZE
70
	test	eax,eax
64
	ja	close
71
	jnz	close
-
 
72
; get memory for ICONSTRP.GIF
-
 
73
	mov	ecx,[process_table+32]
-
 
74
	mov	[finfo.size],ecx
-
 
75
	mcall	68,12
-
 
76
	mov	[finfo.point],eax
-
 
77
; load ICONSTRP.GIF
-
 
78
	mov	[finfo],dword 0
-
 
79
	mcall	70,finfo
-
 
80
	test	eax,eax
-
 
81
	jnz	close
-
 
82
; calculate and get memory for RAW data	
65
	mov	esi,gif_file
83
	mov	esi,[finfo.point]
-
 
84
	movzx	eax,word [esi+6]	;x
-
 
85
	movzx	edi,word [esi+8]	;y
-
 
86
	imul	eax,edi		;x*y
-
 
87
	lea	edi,[eax+eax*2]	; multiply x3
-
 
88
	mov	ecx,edi
-
 
89
	mcall	68,12
66
	mov	edi,strip_file
90
	mov	[strip_file],eax
67
	mov	eax,icon_data
91
	mov	edi,eax
-
 
92
; convert GIF to RAW
68
	call	ReadGIF
93
	call	ReadGIF
-
 
94
; back memeory to system
-
 
95
	mcall	68,13,[finfo.point]
-
 
96
 
69
	mov	eax,dword[edi+4]
97
	mov	eax,dword[edi+4]
70
	shr	eax,5
98
	shr	eax,5
71
	mov	[icon_count],eax
99
	mov	[icon_count],eax
-
 
100
; load ICON.DAT
72
	call	load_ic
101
	call	load_ic
73
boot_str:
102
boot_str:
74
	cmp	[I_Param],dword 'BOOT'
103
	cmp	[I_Param],dword 'BOOT'
75
	je	load_icon_list2
104
	je	load_icon_list2
76
	call	load_icon_list
105
	call	load_icon_list
Line 235... Line 264...
235
	db 0
264
	db 0
236
	dd finfo.path
265
	dd finfo.path
237
;------------------------------------------------------------------------------
266
;------------------------------------------------------------------------------
238
align 4
267
align 4
239
finfo:
268
finfo:
-
 
269
	dd 5
240
	dd 0
270
	dd 0
241
	dd 0
271
	dd 0
242
	dd 0
-
 
243
	dd GIF_SIZE
272
.size	dd 0	;GIF_SIZE
244
	dd gif_file
273
.point	dd process_table	;gif_file
245
.path:
274
.path:
246
	db ICON_STRIP,0
275
	db ICON_STRIP,0
247
	rb 31-($-.path)
276
	rb 31-($-.path)
248
;------------------------------------------------------------------------------
277
;------------------------------------------------------------------------------
249
align 4
278
align 4
Line 325... Line 354...
325
	mov	ebx,24*65536+250+8*14
354
	mov	ebx,24*65536+250+8*14
326
	mcall	4,,0xc0ff0000,rem_text,,0xffffff
355
	mcall	4,,0xc0ff0000,rem_text,,0xffffff
Line 327... Line 356...
327
	
356
	
328
	mcall	10
357
	mcall	10
329
	cmp	eax,3
358
	cmp	eax,3
Line 330... Line 359...
330
	jne	no_f;ound
359
	jne	no_f
331
 
360
 
332
	mcall	17
361
	mcall	17
333
	shr	eax,8
362
	shr	eax,8
Line 473... Line 502...
473
;--------------------------------------
502
;--------------------------------------
474
align 4
503
align 4
475
ldl1:
504
ldl1:
476
	movzx	ebx,byte [esi+1]
505
	movzx	ebx,byte [esi+1]
477
	sub	ebx,65
506
	sub	ebx,65
478
;	imul	ebx,10
-
 
479
; multiply x10
507
; multiply x10
480
	shl	ebx,1		; multiply x2
508
	shl	ebx,1		; multiply x2
481
	lea	ebx,[ebx+ebx*4] ; multiply x5
509
	lea	ebx,[ebx+ebx*4] ; multiply x5
482
	movzx	eax,byte [esi]
510
	movzx	eax,byte [esi]
483
	add	ebx,eax
511
	add	ebx,eax
Line 745... Line 773...
745
.nou:
773
.nou:
746
	mov	eax,[cur_band]
774
	mov	eax,[cur_band]
747
	and	eax,0xfffffff8
775
	and	eax,0xfffffff8
748
	push	eax
776
	push	eax
749
	imul	eax,ICON_SIZE
777
	imul	eax,ICON_SIZE
750
	lea	ebx,[strip_file+8+eax]
778
	mov	ebx,[strip_file]
-
 
779
	lea	ebx,[ebx+8+eax]
751
	mov	ecx,8
780
	mov	ecx,8
752
	mov	edx,(33-18) shl 16+238
781
	mov	edx,(33-18) shl 16+238
753
;--------------------------------------
782
;--------------------------------------
754
align 4
783
align 4
755
.nxt:
784
.nxt:
Line 942... Line 971...
942
 
971
 
943
	mov	edx,ebp
972
	mov	edx,ebp
944
	mov	dword[ebp-4],esi
973
	mov	dword[ebp-4],esi
945
	mcall	51,1,thread
974
	mcall	51,1,thread
946
	add	ebp,0x100
-
 
947
 
975
	add	ebp,0x100
948
; change to next thread if mutex is blocked
976
; change to next thread if mutex is blocked
949
	mov	eax,68
977
	mov	eax,68
950
	mov	ebx,1
978
	mov	ebx,1
951
;--------------------------------------
979
;--------------------------------------
Line 969... Line 997...
969
	mcall
997
	mcall
970
;------------------------------------------------------------------------------
998
;------------------------------------------------------------------------------
971
; esp-28 = start of thread stack
999
; esp-28 = start of thread stack
972
; esp-24 = ???
1000
; esp-24 = ???
973
; esp-20 = 'AA-F' or...
1001
; esp-20 = 'AA-F' or...
974
; esp-16 = ???  SHL greedy maniac mode on!
1002
; esp-16 = ebp-4 - area of f. 15.6
975
; esp-12 = ebp+0 = X
1003
; esp-12 = ebp+0 = X
976
; esp-8  = ebp+4 = Y
1004
; esp-8  = ebp+4 = Y
977
; esp-4  = ebp+8 = adress of icon_data
1005
; esp-4  = ebp+8 = adress of icon_data
978
;------------------------------------------------------------------------------
1006
;------------------------------------------------------------------------------
979
align 4
1007
align 4
980
thread:
1008
thread:
981
	sub	esp,12
1009
	sub	esp,12
982
	mov	ebp,esp
1010
	mov	ebp,esp
983
	sub	esp,16
1011
	sub	esp,16
984
	call	shape_window
-
 
985
	call	draw_window2
1012
	call	draw_window2
986
	mov	[create_thread_event],1
1013
	mov	[create_thread_event],1
987
	mcall	40,010101b
1014
	mcall	40,010101b
988
;------------------------------------------------------------------------------
1015
;------------------------------------------------------------------------------
989
align 4
1016
align 4
Line 1067... Line 1094...
1067
	jmp	still2
1094
	jmp	still2
1068
;------------------------------------------------------------------------------
1095
;------------------------------------------------------------------------------
1069
align 4
1096
align 4
1070
fill_paths:
1097
fill_paths:
1071
	push	esi edi
1098
	push	esi edi
1072
;	dps	'>'
-
 
1073
	movzx	ecx,byte[str_lens+ebx]
1099
	movzx	ecx,byte[str_lens+ebx]
1074
	add	esi,[positions+ebx*4]
1100
	add	esi,[positions+ebx*4]
1075
	push	esi
1101
	push	esi
1076
	add	esi,ecx
1102
	add	esi,ecx
1077
;--------------------------------------
1103
;--------------------------------------
Line 1092... Line 1118...
1092
	rep	movsb
1118
	rep	movsb
1093
;--------------------------------------
1119
;--------------------------------------
1094
align 4
1120
align 4
1095
.noms:
1121
.noms:
1096
	and	byte[edi],0
1122
	and	byte[edi],0
1097
;	call	debug_outstr
-
 
1098
;	dps	<'<',13,10>
-
 
1099
	pop	edi esi
1123
	pop	edi esi
1100
	ret
1124
	ret
1101
;--------------------------------------
1125
;--------------------------------------
1102
align 4
1126
align 4
1103
atoi:
1127
atoi:
Line 1141... Line 1165...
1141
	loop	.l0
1165
	loop	.l0
1142
	ret
1166
	ret
1143
;------------------------------------------------------------------------------
1167
;------------------------------------------------------------------------------
1144
align 4
1168
align 4
1145
draw_picture:
1169
draw_picture:
-
 
1170
	mcall	15,6
-
 
1171
	test	eax,eax
-
 
1172
	jnz	@f
-
 
1173
	mcall	68,1
-
 
1174
	jmp	draw_picture
-
 
1175
@@:
-
 
1176
	mov	[ebp-4],eax
1146
	mov	[image],image_area
1177
	mov	[image],image_area
Line 1147... Line 1178...
1147
 
1178
 
1148
	mov	edi,[ebp+8]
1179
	mov	edi,[ebp+8]
1149
	lea	esi,[edi+12]
1180
	lea	esi,[edi+12]
Line 1152... Line 1183...
1152
	ja	toponly.ex
1183
	ja	toponly.ex
1153
;	imul	eax,(32*3*32)
1184
;	imul	eax,(32*3*32)
1154
	lea	eax,[eax+eax*2]	; multiply x3
1185
	lea	eax,[eax+eax*2]	; multiply x3
1155
	shl	eax,10		; multiply x1024
1186
	shl	eax,10		; multiply x1024
Line 1156... Line 1187...
1156
	
1187
	
1157
	lea	edi,[eax+strip_file+8]
1188
	mov	edi,[strip_file]
1158
	xor	ebx,ebx
1189
	lea	edi,[eax+edi+8]
1159
	xor	ecx,ecx
1190
	xor	ecx,ecx
Line 1160... Line 1191...
1160
	mov	esi,edi
1191
	mov	esi,edi
1161
 
1192
 
1162
	mov	[pixpos],0
1193
	mov	[pixpos],0
-
 
1194
;--------------------------------------
-
 
1195
; loop Y start
-
 
1196
align 4
-
 
1197
new_line:	
-
 
1198
	push	ecx	; Y
-
 
1199
	xor	ebx,ebx
1163
;--------------------------------------
1200
;--------------------------------------
1164
; loop start
1201
; loop X start
1165
align 4
1202
align 4
1166
newb:
1203
newb:
Line 1167... Line 1204...
1167
	push	ebx
1204
	mov	ecx,[esp]
1168
	push	ecx
1205
	push	ebx	; X
1169
 
1206
 
1170
	cmp	ebx,10
1207
	cmp	ebx,10
Line 1202... Line 1239...
1202
	movzx	ebx,word [scrxy]
1239
	movzx	ebx,word [scrxy]
1203
	div	ebx
1240
	div	ebx
1204
	imul	eax,[bgrx]
1241
	imul	eax,[bgrx]
1205
	push	eax
1242
	push	eax
1206
	mov	eax,[ebp+0]
1243
	mov	eax,[ebp+0]
1207
	add	eax,[esp+8]
1244
	add	eax,[esp+4]
1208
	imul	eax,[bgrx]
1245
	imul	eax,[bgrx]
1209
	cdq
1246
	cdq
1210
	movzx	ebx,word [scrxy+2]
1247
	movzx	ebx,word [scrxy+2]
1211
	div	ebx
1248
	div	ebx
1212
	add	eax,[esp]
1249
	add	eax,[esp]
Line 1224... Line 1261...
1224
	div	ebx
1261
	div	ebx
1225
	mov	eax,edx
1262
	mov	eax,edx
1226
	imul	eax,[bgrx]
1263
	imul	eax,[bgrx]
1227
	push	eax
1264
	push	eax
1228
	mov	eax,[ebp+0]
1265
	mov	eax,[ebp+0]
1229
	add	eax,[esp+8]
1266
	add	eax,[esp+4]
1230
	movzx	ebx,word [bgrxy+2]
1267
	movzx	ebx,word [bgrxy+2]
1231
	cdq
1268
	cdq
1232
	div	ebx
1269
	div	ebx
1233
	mov	eax,edx
1270
	mov	eax,edx
1234
	add	eax,[esp]
1271
	add	eax,[esp]
1235
	add	esp,4
1272
	add	esp,4
1236
;--------------------------------------
1273
;--------------------------------------
1237
align 4
1274
align 4
1238
notiled:
1275
notiled:
1239
	lea	ecx,[eax+eax*2]
1276
	lea	ecx,[eax+eax*2]
-
 
1277
	add	ecx,[ebp-4]
1240
	mcall	39,2
1278
	mov	eax,[ecx]
1241
;--------------------------------------
1279
;--------------------------------------
1242
align 4
1280
align 4
1243
nobpix:
1281
nobpix:
1244
	pop	ecx
-
 
1245
	pop	ebx
-
 
1246
 
-
 
1247
	mov	edx,eax
1282
	mov	edx,eax
1248
	mov	eax,[image]
1283
	mov	eax,[image]
Line 1249... Line 1284...
1249
 
1284
 
1250
	mov	[eax],dl
1285
	mov	[eax],dl
Line 1257... Line 1292...
1257
	
1292
	
Line 1258... Line 1293...
1258
	mov	[eax],dl
1293
	mov	[eax],dl
1259
	
1294
	
-
 
1295
	inc	eax
-
 
1296
	mov	[image],eax
-
 
1297
 
1260
	inc	eax
1298
	pop	ebx
Line 1261... Line 1299...
1261
	mov	[image],eax
1299
 
1262
	inc	ebx
1300
	inc	ebx
1263
	
1301
	
1264
	mov	eax,[yw]
1302
	mov	eax,[yw]
Line 1265... Line 1303...
1265
	inc	eax
1303
	inc	eax
Line 1266... Line 1304...
1266
	cmp	ebx,eax
1304
	cmp	ebx,eax
1267
	jb	newb
1305
	jb	newb
1268
	
1306
 
Line 1279... Line 1317...
1279
	je	toponly
1317
	je	toponly
1280
;--------------------------------------
1318
;--------------------------------------
1281
align 4
1319
align 4
1282
notop:
1320
notop:
1283
	cmp	ecx,52
1321
	cmp	ecx,52
1284
	jnz	newb
1322
	jnz	new_line
1285
;--------------------------------------
1323
;--------------------------------------
1286
align 4
1324
align 4
1287
toponly:
1325
toponly:
-
 
1326
	mcall	15,7,[ebp-4]
-
 
1327
	test	eax,eax
-
 
1328
	jnz	@f
-
 
1329
	mcall	68,1
-
 
1330
	jmp	toponly
-
 
1331
@@:
1288
	xor	edx,edx
1332
	xor	edx,edx
1289
	mcall	7,image_area,<52,52>
1333
	mcall	7,image_area,<52,52>
1290
;--------------------------------------
1334
;--------------------------------------
1291
align 4	
1335
align 4	
1292
.ex:
1336
.ex:
Line 1362... Line 1406...
1362
;   *******  WINDOW DEFINITIONS AND DRAW ********
1406
;   *******  WINDOW DEFINITIONS AND DRAW ********
1363
;   *********************************************
1407
;   *********************************************
1364
align 4
1408
align 4
1365
draw_window2:
1409
draw_window2:
1366
	mcall	12,1
1410
	mcall	12,1
1367
 
-
 
1368
	; DRAW WINDOW
1411
	; DRAW WINDOW
1369
	xor	eax,eax		; function 0 : define and draw window
1412
	xor	eax,eax		; function 0 : define and draw window
1370
	mov	ebx,[ebp+0-2]
1413
	mov	ebx,[ebp+0-2]
1371
	mov	ecx,[ebp+4-2]
1414
	mov	ecx,[ebp+4-2]
1372
	mov	bx,[yw]		; [x start] *65536 + [x size]
1415
	mov	bx,[yw]		; [x start] *65536 + [x size]
Line 1409... Line 1452...
1409
	call	draw_picture
1452
	call	draw_picture
1410
	call	draw_text
1453
	call	draw_text
1411
	mcall	12,2
1454
	mcall	12,2
1412
	ret
1455
	ret
1413
;------------------------------------------------------------------------------
1456
;------------------------------------------------------------------------------
1414
shape_window:
-
 
1415
; give the shape reference area
-
 
1416
	mcall	50,0,shape_reference
-
 
1417
; give the shape scale  32 x 32  ->  128 x 128  ecx = 2
-
 
1418
; you dont have to give this, scale is 1:1 by default
-
 
1419
;	mcall	50,1,2
-
 
1420
	ret
-
 
1421
;------------------------------------------------------------------------------
-
 
1422
shape_reference:	;  32 x 32 ( window_size_X + 1 ) * ( window_size_Y + 1 )
-
 
1423
 
-
 
1424
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1425
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1426
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1427
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1428
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1429
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1430
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1431
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1432
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1433
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1434
 
-
 
1435
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1436
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1437
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1438
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1439
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1440
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1441
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1442
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1443
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1444
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1445
 
-
 
1446
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1447
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1448
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1449
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1450
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1451
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1452
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1453
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1454
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1455
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1456
 
-
 
1457
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1458
db 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0
-
 
1459
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1460
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1461
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1462
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1463
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1464
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1465
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1466
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1467
 
-
 
1468
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1469
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1470
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1471
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1472
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1473
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1474
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1475
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1476
db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
-
 
1477
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1478
 
-
 
1479
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
 
1480
db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 
-
 
1481
;------------------------------------------------------------------------------
-
 
1482
tl	dd 8
1457
tl	dd 8
1483
yw:	dd 51
1458
yw:	dd 51
1484
ya	dd 0
1459
ya	dd 0
1485
cur_btn	dd 40
1460
cur_btn	dd 40
Line 1515... Line 1490...
1515
addr	dd ?
1490
addr	dd ?
1516
cur_str		dd ?
1491
cur_str		dd ?
1517
cur_band	dd ?
1492
cur_band	dd ?
1518
sel_icon1	rd 1
1493
sel_icon1	rd 1
1519
icon_count	rd 1
1494
icon_count	rd 1
-
 
1495
strip_file	rd 1
1520
;------------------------------------------------------------------------------
1496
;------------------------------------------------------------------------------
1521
align 4
1497
align 4
1522
param_str	rb 31
1498
param_str	rb 31
1523
;------------------------------------------------------------------------------
1499
;------------------------------------------------------------------------------
1524
align 4
1500
align 4
1525
gif_file	rb	GIF_SIZE
-
 
1526
;------------------------------------------------------------------------------
-
 
1527
align 4
-
 
1528
strip_file	rb	RAW_SIZE
-
 
1529
;------------------------------------------------------------------------------
-
 
1530
align 4
-
 
1531
process_table:
1501
process_table:
1532
	rb 0x400
1502
	rb 0x400
1533
;------------------------------------------------------------------------------	
1503
;------------------------------------------------------------------------------	
1534
align 4
1504
align 4
1535
icon_data:
1505
icon_data:
Line 1549... Line 1519...
1549
;------------------------------------------------------------------------------
1519
;------------------------------------------------------------------------------
1550
align 4
1520
align 4
1551
image_area:
1521
image_area:
1552
	rb 52*52*3
1522
	rb 52*52*3
1553
;------------------------------------------------------------------------------
1523
;------------------------------------------------------------------------------
1554
;align 4
-
 
1555
;shape_reference_0:
-
 
1556
;	rb 52*52	;  ( window_size_X + 1 ) * ( window_size_Y + 1 )
-
 
1557
;------------------------------------------------------------------------------ 
-
 
1558
I_END:
1524
I_END: