OpenCores
URL https://opencores.org/ocsvn/1664/1664/trunk

Subversion Repositories 1664

[/] [1664/] [trunk/] [arci/] [1664/] [inclui/] [0.SO.memoria.1664] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 mrdmkg
;ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
2
.defina memoria_asinia_comensa_alinia {4 1024 * 1 -}
3
 
4
eticeta_datos memoria_asinia_comensa_desloca
5
.ds {SO_pila_desloca memoria_asinia_comensa_alinia + memoria_asinia_comensa_alinia .- 1 - &}
6
 
7
eticeta_datos memoria_asinia_cuantia_intera
8
.ds {1024 1024 1 * *}
9
 
10
;.defina memoria_asinia_unia_grandia {sinia_bitio 3 >>}
11
 
12
;ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
13
 
14
.defina bool_memoria_limpa 1
15
.defina bool_memoria_nova_limpa 1
16
.defina bool_memoria_libri_limpa {bool_memoria_limpa bool_memoria_nova_limpa 0 == &&}
17
 
18
;-------------------------------------------------------------------------------
19
eticeta_opera memoria_mapa_tradui ;mapa, desloca, cuantia
20
                                  ;(0) desloca_real
21
;-------------------------------------------------------------------------------
22
puia sREVENI
23
str 0 3
24
str 1 sT1
25
str 2 sT2
26
ldri sT3 -8
27
ldr_r sT4 s_n
28
ldri sT5 sinia_grandia
29
plu 2 1
30
str 2 sT0
31
 
32
@sicle_trova
33
ldm [3+]
34
cmp 0 s_0
35
z yli memoria_mapa_tradui@fini
36
and 0 sT3
37
str 0 2
38
ldm [3+]
39
cmp 0 sT1
40
c plu 3 sT5
41
c yli memoria_mapa_tradui@sicle_trova
42
ldr 1 0
43
plu 1 2
44
cmp 1 sT1
45
dep_or o z
46
o plu 3 sT5
47
o yli memoria_mapa_tradui@sicle_trova
48
sutr 0 sT1
49
str 0 sT5
50
ldm [3]
51
plu 0 sT5
52
sut 2 sT5
53
cmp 2 sT2
54
dep_or c z
55
c str 0 sT4
56
 
57
@fini
58
tira_ 1
59
ldr 0 sT4
60
str 1 sIP
61
 
62
;-------------------------------------------------------------------------------
63
eticeta_opera memoria_asinia_mapa_sesion_libri ;mapa, desloca_real
64
;-------------------------------------------------------------------------------
65
puia sREVENI
66
str 0 3
67
str 1 sT0
68
ldri sT2 sinia_grandia
69
ldr 2 s_n
70
 
71
@sicle_trova
72
str 3 sT1
73
ldm [3+]
74
cmp 0 s_0
75
z yli memoria_asinia_mapa_sesion_libri@sicle_trova_finia
76
plu 3 sT2
77
ldm [3+]
78
cmp 0 sT0
79
z ldr 2 sT1
80
yli memoria_asinia_mapa_sesion_libri@sicle_trova
81
 
82
@sicle_trova_finia
83
cmp 2 s_n
84
z yli memoria_asinia_mapa_sesion_libri@fini
85
ldr 3 sT1
86
ldm [3]
87
stm [2+]
88
eor 0 0
89
stm [3+]
90
ldm [3+]
91
stm [2+]
92
ldm [3]
93
stm [2]
94
 
95
ldr 0 sT0
96
yl memoria_asinia_libri
97
eor 2 2
98
 
99
@fini
100
ldr 0 2
101
tira 1
102
str 1 sIP
103
 
104
;-------------------------------------------------------------------------------
105
eticeta_opera memoria_asinia_mapa_sesion_ajunta ;mapa, desloca_real, cuantia
106
 ;(0) mapa, (1) memoria_desloca_virtual
107
;-------------------------------------------------------------------------------
108
puia sREVENI
109
entra
110
depende_inoria
111
str 0 sR0
112
str 1 sR1
113
 
114
ldri 0 -sinia_grandia
115
and 2 0
116
str 2 sR2
117
 
118
ldri sR3 {sinia_grandia 3 *}
119
eor 2 2
120
ldr 3 sR0
121
 
122
@sicle_mapa_grandia
123
plu 2 s_1
124
ldm [3]
125
plu 3 sR3
126
cmp 0 s_0
127
n yli memoria_asinia_mapa_sesion_ajunta@sicle_mapa_grandia
128
 
129
ldr 3 2
130
shl 3 s_1
131
plu 3 2
132
plu 3 s_1
133
ldri 1 sinia_bitio_sh_
134
shl 3 1
135
ldr 0 3
136
yl memoria_asinia_nova ;*__ eror: memoria nondisponable
137
str 0 2
138
str 0 sR5
139
ldr 3 sR0
140
ldri sT0 -8
141
ldri sR4 usor_datos_desloca
142
 
143
@sicle_copia
144
ldm [3+]
145
cmp 0 s_0
146
z yli memoria_asinia_mapa_sesion_ajunta@sicle_copia_fini
147
stm [2+]
148
and 0 sT0
149
str 0 sT1
150
ldm [3+]
151
stm [2+]
152
plu 0 sT1
153
cmp 0 sR4
154
c str 0 sR4
155
ldm [3+]
156
stm [2+]
157
yli memoria_asinia_mapa_sesion_ajunta@sicle_copia
158
 
159
@sicle_copia_fini
160
ldri 0 {1 umm_permete_leje << | 1 umm_permete_scrive << |}
161
plu 0 sR2
162
stm [2+]
163
ldr 0 sR4
164
stm [2+]
165
ldr 0 sR1
166
stm [2+]
167
eor 0 0
168
stm [2]
169
 
170
ldr 0 sR0
171
yl memoria_asinia_libri
172
 
173
ldr 0 sR5
174
ldr 1 sR4
175
departi
176
tira 3
177
str 3 sIP
178
 
179
;-------------------------------------------------------------------------------
180
eticeta_opera memoria_copia ;destina, fonte, cuantia
181
;-------------------------------------------------------------------------------
182
depende_influe
183
str 0 3
184
puia sREVENI
185
ldri 0 {sinia_grandia 1 -}
186
str 0 sT0
187
and 0 2
188
sut 2 0
189
str 2 sT1
190
str 0 2
191
cmp 2 s_0
192
z yli memoria_copia@sicle_bait_fini
193
 
194
@sicle_bait
195
ldm [1+] 1
196
stm [3+] 1
197
sut 2 s_1
198
n yli memoria_copia@sicle_bait
199
 
200
@sicle_bait_fini
201
ldr 2 sT1
202
cmp 2 s_0
203
z yli memoria_copia@fini
204
ldri 0 sinia_bitio_sh_
205
shr 2 0
206
 
207
@sicle_sinia
208
ldm [1+]
209
stm [3+]
210
sut 2 s_1
211
n yli memoria_copia@sicle_sinia
212
 
213
@fini
214
tira 1
215
str 1 sIP
216
 
217
;-------------------------------------------------------------------------------
218
eticeta_opera memoria_asinia_ajunta_libri
219
;-------------------------------------------------------------------------------
220
depende_inoria
221
puia sREVENI
222
 
223
ldri 3 memoria_asinia_comensa_desloca
224
ldm [3]
225
str 0 3
226
str 0 2
227
ldri sT0 {-1 1 >>}
228
ldri sT1 sinia_grandia
229
 
230
@sicle_trova
231
ldm [3+]
232
cmp 0 s_0
233
z yli memoria_asinia_ajunta_libri@fini
234
 
235
@sicle_trova_a
236
str 0 1
237
ldb 0 {sinia_bitio 1 -}
238
and 1 sT0
239
plu 3 1
240
z str 3 2
241
z yli memoria_asinia_ajunta_libri@sicle_trova
242
ldm [3+]
243
cmp 0 s_0
244
z yli memoria_asinia_ajunta_libri@fini
245
ldb 0 {sinia_bitio 1 -}
246
z yli memoria_asinia_ajunta_libri@sicle_trova_a
247
and 0 sT0
248
plu 0 1
249
plu 0 sT1
250
stm [2]
251
str 2 3
252
yli memoria_asinia_ajunta_libri@sicle_trova
253
 
254
@fini
255
tira_ 1
256
str 1 sREVENI
257
 
258
;-------------------------------------------------------------------------------
259
eticeta_opera memoria_asinia_inisia
260
;-------------------------------------------------------------------------------
261
ldri 3 memoria_asinia_comensa_desloca
262
ldm [3]
263
str 0 3
264
ldri 2 {sinia_grandia 2 *}
265
ldri 1 memoria_asinia_cuantia_intera
266
ldm [1]
267
sut 0 2
268
stm [3]
269
plu 3 1
270
ldri 0 sinia_grandia
271
sut 3 0
272
eor 0 0
273
stm [3]
274
reveni
275
 
276
;-------------------------------------------------------------------------------
277
eticeta_opera memoria_asinia_divide ;desloca, cuantia
278
;-------------------------------------------------------------------------------
279
depende_inoria
280
str 0 3
281
ldri 0 sinia_grandia
282
str 0 sT0
283
sut 0 s_1
284
plu 1 0
285
eor 0 s_n
286
and 1 0
287
ldm [3]
288
 
289
;==
290
cmp 0 1
291
z stb 0 {sinia_bitio 1 -}
292
z stm [3]
293
z rev opera_rev_reveni
294
 
295
;<{sinia_grandia 2 *}
296
str 0 sT1
297
sut 0 1
298
str 0 2
299
ldri 0 {sinia_grandia 2 *}
300
sutr 0 2
301
ldb 0 {sinia_bitio 1 -}
302
z ldr 0 sT1
303
z stb 0 {sinia_bitio 1 -}
304
z stm [3]
305
z rev opera_rev_reveni
306
 
307
;>={sinia_grandia 2 *}
308
dep_set 0
309
ldr 0 1
310
stb 0 {sinia_bitio 1 -}
311
stm [3+]
312
plu 3 1
313
ldr 0 2
314
sut 0 sT0
315
stm [3]
316
reveni
317
 
318
;-------------------------------------------------------------------------------
319
eticeta_opera memoria_asinia_nova ;cuantia
320
;-------------------------------------------------------------------------------
321
puia sREVENI
322
puia sR0
323
str 0 sR0
324
yl memoria_asinia_nova_prima
325
cmp 0 s_0
326
n yli memoria_asinia_nova@fini
327
yl memoria_asinia_ajunta_libri
328
ldr 0 sR0
329
yl memoria_asinia_nova_prima
330
 
331
@fini
332
tira sR0
333
tira 1
334
str 1 sIP
335
 
336
;-------------------------------------------------------------------------------
337
eticeta_opera memoria_asinia_nova_prima ;cuantia
338
;-------------------------------------------------------------------------------
339
depende_inoria
340
str 0 2
341
puia sREVENI
342
puia sR0
343
ldri 3 memoria_asinia_comensa_desloca
344
ldm [3]
345
str 0 3
346
ldri sT0 sinia_grandia
347
ldr 1 s_n
348
shr 1 s_1
349
 
350
@sicle_trova_libri
351
ldm [3]
352
cmp 0 s_0
353
z yli memoria_asinia_nova_prima@fini ;eror: memoria nondisponable
354
ldb 0 {sinia_bitio 1 -}
355
and 0 1
356
str 3 sR0
357
plu 3 0
358
plu 3 sT0
359
z yli memoria_asinia_nova_prima@sicle_trova_libri
360
cmp 0 2
361
o yli memoria_asinia_nova_prima@sicle_trova_libri
362
 
363
{%.{bool_memoria_nova_limpa 0 ==}
364
ldr 1 2
365
ldri 0 {sinia_grandia 1 -}
366
plu 1 0
367
eor 0 s_n
368
and 1 0
369
ldri 0 sinia_bitio_sh_
370
shr 1 0
371
eor 0 0
372
ldr 3 sR0
373
 
374
depende_influe
375
@sicle_limpa
376
stm [+3]
377
sut 1 s_1
378
n yli memoria_asinia_nova_prima@sicle_limpa
379
depende_inoria
380
}
381
 
382
ldr 0 sR0
383
ldr 1 2
384
yl memoria_asinia_divide
385
ldri 0 sinia_grandia
386
plu 0 sR0
387
 
388
@fini
389
tira sR0
390
tira 1
391
str 1 sIP
392
 
393
;-------------------------------------------------------------------------------
394
eticeta_opera memoria_asinia_libri ;desloca
395
;-------------------------------------------------------------------------------
396
depende_inoria
397
str 0 3
398
puia sREVENI
399
ldri sT2 sinia_grandia
400
ldm [-3]
401
dep_eor z z
402
stb 0 {sinia_bitio 1 -}
403
str 0 sT1
404
str 3 2
405
plu 3 0
406
ldm [+3]
407
cmp 0 s_0
408
z stb 0 {sinia_bitio 1 -} ;fini
409
ldb 0 {sinia_bitio 1 -}
410
z ldr 0 sT1
411
dep_inv z
412
z plu 0 sT1
413
z plu 0 sT2
414
stm [2]
415
 
416
{%.{bool_memoria_libri_limpa 0 ==}
417
ldr 1 sT1
418
ldri 0 sinia_bitio_sh_
419
shr 1 0
420
eor 0 0
421
 
422
depende_influe
423
@sicle_limpa
424
stm [+2]
425
sut 1 s_1
426
n yli memoria_asinia_libri@sicle_limpa
427
depende_inoria
428
}
429
 
430
tira 1
431
str 1 sIP

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.