File tree 1 file changed +56
-60
lines changed
1 file changed +56
-60
lines changed Original file line number Diff line number Diff line change @@ -1344,8 +1344,8 @@ _Ellipse:
1344
1344
ld (ix - el_comp_a) , hl
1345
1345
inc hl
1346
1346
sbc hl , bc
1347
- ld bc , (ix - el_a2)
1348
- call _MultiplyHLBC
1347
+ ld de , (ix - el_a2)
1348
+ call _MultiplyHLDE
1349
1349
ld bc , (ix - el_b2)
1350
1350
add hl , bc
1351
1351
add hl , bc
@@ -1358,13 +1358,13 @@ _Ellipse:
1358
1358
sbc hl , hl
1359
1359
inc hl
1360
1360
sbc hl , de
1361
- ld bc , (ix - el_fb2)
1362
- call _MultiplyHLBC
1361
+ ld de , (ix - el_fb2)
1362
+ call _MultiplyHLDE
1363
1363
ld (ix - el_sigma_2) , hl ; int sigma_add_2 = fb2 * (1 - a);
1364
1364
1365
1365
ld hl , (ix - el_a2)
1366
- ld bc , (ix - el_y)
1367
- call _MultiplyHLBC
1366
+ ld de , (ix - el_y)
1367
+ call _MultiplyHLDE
1368
1368
ld (ix - el_comp_b) , hl
1369
1369
1370
1370
wait_quick
@@ -1437,16 +1437,16 @@ _ellipse_loop_draw_2 := $-3
1437
1437
mlt de
1438
1438
inc hl
1439
1439
sbc hl , de
1440
- ld bc , (ix - el_b2)
1441
- call _MultiplyHLBC
1440
+ ld de , (ix - el_b2)
1441
+ call _MultiplyHLDE
1442
1442
ld de , (ix - el_a2)
1443
1443
add hl , de
1444
1444
add hl , de
1445
1445
ld (ix - el_sigma) , hl
1446
1446
1447
1447
ld hl , (ix - el_b2)
1448
- ld bc , (ix - el_temp1)
1449
- call _MultiplyHLBC
1448
+ ld de , (ix - el_temp1)
1449
+ call _MultiplyHLDE
1450
1450
ld (ix - el_comp_b) , hl
1451
1451
1452
1452
.main_loop2:
@@ -4324,15 +4324,15 @@ _FillTriangle:
4324
4324
ld hl , (ix - 12 )
4325
4325
or a , a
4326
4326
sbc hl , bc
4327
- ld bc , (ix - 30 )
4328
- call _MultiplyHLBC ; sa = dx12 * (y - y1);
4327
+ ld de , (ix - 30 )
4328
+ call _MultiplyHLDE ; sa = dx12 * (y - y1);
4329
4329
ld (ix - 15 ) , hl
4330
4330
ld bc , (ix + 9 )
4331
4331
ld hl , (ix - 12 )
4332
4332
or a , a
4333
4333
sbc hl , bc
4334
- ld bc , (ix - 21 )
4335
- call _MultiplyHLBC ; sb = dx02 * (y - y0);
4334
+ ld de , (ix - 21 )
4335
+ call _MultiplyHLDE ; sb = dx02 * (y - y0);
4336
4336
ld (ix - 18 ) , hl
4337
4337
jp .secondloopstart ; for(; y <= y2; y++)
4338
4338
.secondloop:
@@ -6448,66 +6448,62 @@ _DivideHLBC:
6448
6448
ret
6449
6449
6450
6450
;-------------------------------------------------------------------------------
6451
- _MultiplyHLDE:
6451
+ if 0
6452
+ _MultiplyHLBC:
6452
6453
; Performs (un)signed integer multiplication
6453
6454
; Inputs:
6454
6455
; HL : Operand 1
6455
- ; DE : Operand 2
6456
+ ; BC : Operand 2
6456
6457
; Outputs:
6457
- ; HL = HL*DE
6458
- push de
6459
- pop bc
6458
+ ; HL = HL*BC
6459
+ push bc
6460
+ pop de
6461
+ end if
6460
6462
6461
6463
;-------------------------------------------------------------------------------
6462
- _MultiplyHLBC:
6464
+ ; identical to __imulu_fast, but BC and DE are swapped
6465
+ _MultiplyHLDE:
6463
6466
; Performs (un)signed integer multiplication
6464
6467
; Inputs:
6465
6468
; HL : Operand 1
6466
- ; BC : Operand 2
6469
+ ; DE : Operand 2
6467
6470
; Outputs:
6468
- ; HL = HL*BC
6469
- push iy
6470
- push hl
6471
- push bc
6471
+ ; HL = HL*DE
6472
+ ld b , d
6473
+ ld c , h
6474
+ mlt bc
6475
+ ld a , c
6476
+ dec sp
6472
6477
push hl
6473
- ld iy , 0
6474
- ld d , l
6475
- ld e , b
6476
- mlt de
6477
- add iy , de
6478
- ld d , c
6479
- ld e , h
6480
- mlt de
6481
- add iy , de
6482
- ld d , c
6483
- ld e , l
6478
+ push de
6479
+ inc sp
6480
+ pop bc
6481
+ ld c , l
6482
+ mlt bc
6483
+ add a , c
6484
+ pop bc
6485
+ ld c , e
6486
+ mlt bc
6487
+ add a , c
6488
+ ld b , e
6489
+ ld c , l
6490
+ ld l , b
6491
+ ld e , c
6484
6492
mlt de
6485
- ld c , h
6486
6493
mlt bc
6487
- ld a , c
6488
- inc sp
6489
- inc sp
6490
- pop hl
6491
6494
mlt hl
6492
- add a , l
6493
- pop hl
6494
- inc sp
6495
- mlt hl
6496
- add a , l
6497
- ld b , a
6498
- ld c , 0
6499
- lea hl , iy + 0
6500
- add hl , bc
6501
- add hl , hl
6502
- add hl , hl
6503
- add hl , hl
6504
- add hl , hl
6505
- add hl , hl
6506
- add hl , hl
6507
- add hl , hl
6508
- add hl , hl
6509
- add hl , de
6510
- pop iy
6495
+ add hl , de
6496
+ add a , h
6497
+ ld h , a
6498
+ add hl , hl
6499
+ add hl , hl
6500
+ add hl , hl
6501
+ add hl , hl
6502
+ add hl , hl
6503
+ add hl , hl
6504
+ add hl , hl
6505
+ add hl , hl
6506
+ add hl , bc
6511
6507
ret
6512
6508
6513
6509
;-------------------------------------------------------------------------------
You can’t perform that action at this time.
0 commit comments