HI-TECH Z80 C Compiler 7.80PL2

Postby deathsoft » 21 Mar 2016, 17:19

DimkaM wrote:унрил показал

Ты видимо неверно измерял. Замер надо делать при отключенных прерываниях, грузить надо bin файл в отладчик унриала по alt+r, измерять нужно только цикл в котором делается вывод, весь код до этого нужно прошагать мимо, а когда PC убдет на начале цикла переставить курсор после цикла и нажать F4, потом можно нажать num lock чтобы не ждать 15 минут.
User avatar
deathsoft
 
Posts: 4744
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby deathsoft » 21 Mar 2016, 17:20

DimkaM wrote:а это у тебя без констант походу, я размер бинаря писал

Ну т.к. товарищь на гяф не выложил font.c, то вместо этого шрифта был использован массив из нулей.
User avatar
deathsoft
 
Posts: 4744
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby deathsoft » 21 Mar 2016, 17:21

DimkaM wrote:колись какие параметры у тебя плиз в htc

Компилил через gui, параметры были - максимальная оптимизация (все галки) и уровень глобальной оптимизации 9.

Все тестировалось в конфигурации стандартного пентагона.
User avatar
deathsoft
 
Posts: 4744
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby DimkaM » 21 Mar 2016, 18:14

deathsoft wrote:Замер надо делать при отключенных прерываниях, грузить надо bin файл в отладчик унриала по alt+r, измерять нужно только цикл в котором делается вывод, весь код до этого нужно прошагать мимо, а когда PC убдет на начале цикла переставить курсор после цикла и нажать F4, потом можно нажать num lock чтобы не ждать 15 минут.

ага, всё так и было. тока инициализацыю и вывод времени тожа щитал
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

Postby DimkaM » 21 Mar 2016, 18:20

deathsoft wrote: уровень глобальной оптимизации 9.

а вот девятку я пока ненашол куда воткнуть.
Code: Select all
4.1.53 -Zg: Global Optimization
The -Zg option invokes global optimization during the code generation pass. This can result in
significant reductions to code size and RAM usage.

deathsoft wrote:вместо этого шрифта был использован массив из нулей.

мож она задетектила нули и тупо скипала чтение из массива? :)
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

Postby DimkaM » 21 Mar 2016, 18:31

ага, получилось. -Zg9 в доке не написано что там нада цыфири ставить
1650 мегатактов
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

Postby DimkaM » 21 Mar 2016, 18:36

код прадва на 200 байт толще вышел чем в иаре
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

Postby DimkaM » 21 Mar 2016, 18:42

ахуительно компилит
HTC
Code: Select all
;main.c: 59: for(i=0;i<8;i++)
   ld   d,0
   jp   z,l18
l14:
;main.c: 60: {
;main.c: 61: q = (*dest)&0xf0;
   ld   a,(bc)
   and   -16
   ld   l,a
;main.c: 62: *dest = q | ((*src++)&0x0f);
   ld   a,(iy+0)
   and   0Fh
   or   l
   ld   (bc),a
   inc   iy
;main.c: 63: dest+=256;
   ld   hl,0100h
   add   hl,bc
   push   hl
   pop   bc
;main.c: 64: }
   inc   d
   ld   a,d
   cp   08h
   jp   c,l14
;main.c: 65: }
   jp   l1
IAR
Code: Select all
?0019:
   LD   A,D
   CP   8
   JR   NC,?0023
?0020:
; 58.                       for(i=0;i<8;i++)
; 59.                       {
   LD   L,(IX-6)
   LD   H,(IX-5)
   LD   A,(HL)
   AND   240
; 60.                           q = (*dest)&0xf0;
   PUSH   AF
   LD   A,(IY+0)
   AND   15
   LD   B,A
   POP   AF
   OR   B
   LD   (HL),A
; 61.                           *dest = q | ((*src++)&0x0f);
   LD   A,1
   ADD   A,(IX-5)
   LD   (IX-5),A
   INC   D
; 62.                           dest+=256;
; 63.                       }
   INC   IY
   JR   ?0019
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

Postby deathsoft » 21 Mar 2016, 19:27

При оптимизации по размеру кода иару нет равных (всякие sdcc и прочая хуета - сосут):
http://sdcc.sourceforge.net/mediawiki/index.php/Z80_code_size
User avatar
deathsoft
 
Posts: 4744
Joined: 07 Apr 2007, 00:58
Group: Registered users

Postby DimkaM » 21 Mar 2016, 19:48

deathsoft wrote:http://sdcc.sourceforge.net/mediawiki/index.php/Z80_code_size

нда, табличка впечатляет.
N>"Идите нахуй" со своей политикой...
DimkaM
 
Posts: 1011
Joined: 24 Mar 2010, 12:42
Location: г.Щёлково М.О.
Group: Registered users

PreviousNext

Return to ZX Spectrum

Who is online

Users browsing this forum: No registered users and 5 guests

cron