@ru_arduino

Страница 6288 из 7737
Dr
05.05.2018
21:20:55
А отбросив смехуйки, то за четверть-полляма

Bastad
05.05.2018
21:20:56
Я за 60 штаны протирал

Dr
05.05.2018
21:21:47
А шансы заранее объявят?

Google
Dr
05.05.2018
21:22:05
А откуда тогда известны?

Генерал
05.05.2018
21:22:19
бля

Andor
05.05.2018
21:22:19
откуда известны-то?

и почему такие ниочень?

желающих чего?

я вот не желаю воевать, а пофлеймить желаю

Генерал
05.05.2018
21:23:08
А шансы заранее объявят?
а в попу бы дал мужику?

за 100к баксов

и потом слизнул?

Bastad
05.05.2018
21:23:27
а в попу бы дал мужику?
Красивому бы дал :3

и потом слизнул?
И отсосал бы с проглотом.

Dr
05.05.2018
21:24:06
а в попу бы дал мужику?
А мужик соответствует моим идеалам мужика?

Leaf
05.05.2018
21:24:22
Красивому бы дал :3
А еще говорите, что тут у вас не катехизис...

Google
Bastad
05.05.2018
21:24:36
Не вижу ничего постыдного, тащемта.

Dr
05.05.2018
21:25:24
+

ДимСерж
05.05.2018
21:25:47
Гыг

Dr
05.05.2018
21:25:54
Ох ебать, с тысячей уже поздравляли?

ДимСерж
05.05.2018
21:25:56
Он с страны вечной войны

А так оплата типа 3к$

Для спеца

Bastad
05.05.2018
21:26:39
Ладно, я спать. 5ч осталось

Бб

ДимСерж
05.05.2018
21:26:47
Элита типа снайперов 10

Dr
05.05.2018
21:27:00
С Японии штоле?

Генерал
05.05.2018
21:29:17
так я бы продолжил, но наш разговор перетечет в не то русло

ДимСерж
05.05.2018
21:29:35
Нерус мой

Граница афгана и таджикистана

Victor
05.05.2018
21:54:50
Господа, я чуть с оффтопиком...

ДимСерж
05.05.2018
21:56:20
И

Victor
05.05.2018
21:56:32
Допустим, есть объявление #define RTC_TR2 *(unsigned char*)0x5141Я могу присваивать что-то типа RTC_TR2 = 0x21, а как мне RTC_TR2 передать в функцию void bcdinc (uint8_t* v, uint8_t max);? Так - bcdinc(&RTC_TR2, 0x59); - не работает.

Стек тратить на конструкцию i = RTC_TR2; bcdinc(&i, 0x59); RTC_TR2 = i; как-то не хочется

Google
Black
05.05.2018
22:23:54
&(RTC_TR1)

Так пробовал?

А точнее скобки надо не вокруг самого места, а в дефайне (если этот заголовок можно менять)

По хорошему дефайны более одного токена должны быть всегда заключены в скобки

Victor
05.05.2018
22:26:11
дефайны нельзя менять - это из SPL

я пока сделал так: __asm__("ldw x,#0x5141\npush #0x59\npushw x\ncall _bcdinc\naddw sp, #3\n");

:)

Со скобками тоже не катит, вот что в итоге получается: ; functions.c: 158: bcdinc(&(RTC_TR2), 0x59); push #0x59 push #0x41 push #0x00 call _bcdinc

Ещё вариант bcdint((uint8_t*)0x5141, 0x59), но не хочу числа использовать, непереносимо получается

Victor
05.05.2018
22:31:16
конечно неверно! смотри, ккой адрес в стэк запихивается

0x0041 вместо 0x5141

Black
05.05.2018
22:32:05
Ну

Там RTC_TR2 и я не знаю какое у неё число

Т.е. сделать локальную переменную как конст, её компилятор не оптимизирует нормально ли?

Victor
05.05.2018
22:33:47
сейчас попробую

Black
05.05.2018
22:33:51
На нормальном компиляторе она будет заинлайнена и никакого стека

Victor
05.05.2018
22:35:13
; functions.c: 158: const uint8_t i = RTC_TR2; ldw x, #0x5141 ld a, (x) ld (0x01, sp), a ; functions.c: 159: bcdinc(&i, 0x59); ldw x, sp incw x push #0x59 pushw x call _bcdinc addw sp, #3

через стек тоже делает

Google
Black
05.05.2018
22:37:03
Это ты смотришь со включеными оптимизациями же?

Admin
ERROR: S client not available

Black
05.05.2018
22:37:05
Кстати

Компилятор точно кривой, проверил на GCC

И сейчас ещё на паре других

Victor
05.05.2018
22:37:29
у sdcc по-моему не выключается оптимизация

и не особо настраивается

Black
05.05.2018
22:37:44
Victor
05.05.2018
22:37:58
с const?

а

не совсем понимаю почему

Black
05.05.2018
22:38:28
Без конста

https://godbolt.org/ я вот тут смотрел

Victor
05.05.2018
22:38:34
фактически дефайн - это разыменованный поинтер

Black
05.05.2018
22:38:56
Ну дефайн должен подставляться прямо как текст в код

Кстати

А если ты туда вот так напишешь

&(*(unsigned char*)12345)

То результат тоже неверный?

Ну, вместо 12345 подставить туда твоё число

Google
Black
05.05.2018
22:40:34
На выходе должен быть просто (unsigned char*)0x5140 (очевидно), вообще говоря компилятору должно быть полностью всё-равно там есть дефайн или его нету

Victor
05.05.2018
22:40:44
; functions.c: 161: bcdinc(&(*(unsigned char*)0x5141), 0x59); push #0x59 push #0x41 push #0x00 call _bcdinc

Black
05.05.2018
22:41:04
А если теперь убрать &(*

Victor
05.05.2018
22:41:12
откуда он берёт адрес 0x0041?

Black
05.05.2018
22:41:14
bcdinc((unsigned char*)0x5141, 0x59);

Victor
05.05.2018
22:41:33
если убрать, будет нормально

я выше писал

Black
05.05.2018
22:41:43
Ок

Здесь какое-то адище творится х)

Страница 6288 из 7737