Current Server Time: 09:30 (Central Europe)

#apertus IRC Channel Logs

2020/05/12

Timezone: UTC


02:11
berto_bxl
joined the channel
02:17
berto_bxl
left the channel
03:27
illwieckz
left the channel
03:50
Bertl
off to bed now ... have a good one everyone!
03:50
Bertl
changed nick to: Bertl_zZ
04:01
illwieckz
joined the channel
04:05
futarisIRCcloud
joined the channel
04:31
Dest123
left the channel
05:17
BAndiT1983|away
changed nick to: BAndiT1983
06:25
futarisIRCcloud
left the channel
07:11
BAndiT1983
hi metal_dent[m], how is it going?
07:13
metal_dent[m]
Hi, morning!
07:14
metal_dent[m]
to remove the fixed position of ImageButton, I created two x and y variables which will be initialised in the screens along with the icon data
07:15
BAndiT1983
why screens?
07:15
BAndiT1983
have you committed your code yet?
07:15
metal_dent[m]
yes, i have
07:15
BAndiT1983
if you place such data in the screens, then you're breaking up the responsibility area
07:16
BAndiT1983
as image buttons belong to button bar topic, it should be handled there
07:16
BAndiT1983
or do you use it differently now?
07:17
metal_dent[m]
okay, i thought as x and y are the parameters of ImageButton so i can initialise them along the icon data
07:17
BAndiT1983
nope, let's take a step back and check the state
07:18
BAndiT1983
the home button is usually placed in the left button bar, which takes care of position
07:19
BAndiT1983
what i see in the code additionally are attributes starting with capital letter, e.g. _X, this is not according to the guidelines
07:20
BAndiT1983
the button is still fixed in size, but now it's tied to the icon size, the goal is to have button of any size higher than the icon, like 200x100 and icon centered for now
07:23
metal_dent[m]
ouuu, now i get it; before i thought why would we need a button greater than the icon size but we may need if we want to create a button with icon and text (for eg.)
07:24
BAndiT1983
yes, also the image button or image button with text could be placed at the bottom or top bar, and there it has to be wider
07:25
metal_dent[m]
yes yes
07:25
se6ast1an
good day
07:25
BAndiT1983
buttons size should be variable, icon sizes are predefined as 24x24 for now, at least for button bars on the sides
07:25
BAndiT1983
hi
07:26
BAndiT1983
when the conversion to the .h file is ready, we have also to think about larger icons, e.g. if you look at the knob image in the video of WB screen from C firmware
07:33
se6ast1an
<BAndiT1983> what i see in the code additionally are attributes starting with capital letter, e.g. _X, this is not according to the guidelines <- what BAndiT1983 means is that there are certain naming conventions for variables and member fields, all members start with "_" and are follow by a lower case letter
07:33
se6ast1an
followed by https://en.wikipedia.org/wiki/Camel_case naming
07:34
metal_dent[m]
okay, got it! thanks!
07:34
BAndiT1983
you can refer to this stub of guidelines -> https://wiki.apertus.org/index.php/OpenCine.Coding_Guidelines
07:35
se6ast1an
we should copy those guidelines to the remote readme
07:36
BAndiT1983
hope we are not overloading the file, maybe we should use multiple MD ones
07:42
se6ast1an
also an option CodingGuidelines.md ?
07:46
se6ast1an
- Private attributes should be prefixed with an underscore ( _ ). <- do you want to differenciate between private, protected, ublic here or just all?
07:46
BAndiT1983
usually we shouldn'T have public attributes, as everything should happen through setter/getter
07:46
BAndiT1983
but protected and private should start with _
07:47
se6ast1an
and the term is member variable or member field not "attribute" no?
07:47
BAndiT1983
if public attrbiutes ar present, e.g. struct are public by default, then the attributes have to start with capital letter, e.g. Icon struct -> Width, Height etc.
07:48
BAndiT1983
variables in classes are called attributes
07:48
BAndiT1983
https://stackoverflow.com/questions/18282330/c-is-it-correct-to-call-class-member-variables-attributes
07:49
se6ast1an
"The C++ standard, however, does not use these terms (apart from attributes of course, as explained above). If you don't want to risk anything and always be correct, use "data members" and "member functions"."
07:49
BAndiT1983
attributes and methods are the usual terms for me when speaking about classes, of course the mileage can vary, like stackoverflow thread shows
07:49
se6ast1an
https://en.wikipedia.org/wiki/Member_variable
07:49
se6ast1an
https://docs.microsoft.com/en-us/cpp/cpp/attributes?view=vs-2019
07:50
BAndiT1983
that's not C++ from microsoft, but the hybrid for .NET interoperation
07:51
se6ast1an
I just googled "c++ attribute"
07:51
BAndiT1983
haven't used their version for quite some time, as they have some properties there, which are not standard at all
07:52
BAndiT1983
http://www.fredosaurus.com/notes-cpp/oop-classes/oopterms.html
07:53
BAndiT1983
am sticking to method and attribute, as that's what we use at work also
07:53
BAndiT1983
and it's the third company i work for, since my career start
07:53
se6ast1an
feel free to update, extend/improve: https://github.com/apertus-open-source-cinema/AXIOM-Remote/blob/dev/CodingGuidelines.md
07:55
BAndiT1983
oops, the file crashed my vscode, when i've tried to open markdown preview
07:55
se6ast1an
also added reference to readme: https://github.com/apertus-open-source-cinema/AXIOM-Remote/blob/dev/README.md
08:07
BAndiT1983
formatted the page
08:14
BAndiT1983
the order in the guidelines has to be adjusted a bit, as naming is at the bottom, but can be done a bit later, have to do my regular work first
08:22
se6ast1an
sure
10:25
BAndiT1983
metal_dent[m]: any news?
10:26
metal_dent[m]
i have a ques:
10:26
metal_dent[m]
should there be any constraint on the length of the makefile?
10:27
BAndiT1983
depends on what has to be done, why?
10:28
metal_dent[m]
as i need to add the commands for the xbm to header file conversion so i was thinking maybe the makefile might look messy / long so i can make another script which is called from the makefile
10:31
BAndiT1983
will wait for your commit, otherwise it's hard to make a conclusion
10:31
metal_dent[m]
alright! will be completed by today..
11:41
Bertl_zZ
changed nick to: Bertl
11:41
Bertl
morning folks!
12:28
futarisIRCcloud
joined the channel
15:03
metal_dent[m]
i kinda underestimated this task ':D, maybe it will take a little longer... sorry for that
15:06
BAndiT1983
that's the goal of gsoc, to learn what it takes to accomplish some tasks, and this won't be the last one, bootloader is a playground full of fun, sharp razors and bloody mess
15:11
Bertl
wasn't a bloody mess last time I checked ... what happened? :)
15:11
metal_dent[m]
yes, by doing this i got to know a lot of things about makefile and bash scripts
15:13
metal_dent[m]
> wasn't a bloody mess last time I checked ... what happened? :)
15:13
metal_dent[m]
i'm trying to get the info from the xbm file and saving in variable in makefile but that's not working ; the sed command is correct as it's working on the terminal ; something missing in the assignment i guess
15:14
BAndiT1983
Bertl: was just a figurative speech, as the results are not that obvious when doing some things related to hardware, especially when you don't have that many output options, but USB-UART worked well
15:14
BAndiT1983
and was solely about the bootloader, not about metal_dent[m]s code
15:14
metal_dent[m]
ohh sry, i thought Bertl asked me ':D
15:14
BAndiT1983
metal_dent[m]: can you upload your code?
15:19
metal_dent[m]
here -> https://pastebin.com/raw/Y6BzVx1N
15:24
BAndiT1983
does it require the $(call ...) syntax?
15:24
BAndiT1983
ah, it's a script at the top
15:26
BAndiT1983
how does your sample.h look like, by the way?
15:27
metal_dent[m]
like the header file structure we have but without the data
15:28
BAndiT1983
what's the output when you execute it?
15:29
metal_dent[m]
.h files are created but the WIDTH, HEIGHT's values are blank
15:30
metal_dent[m]
but when i execute the sed command it gives the correct value
15:31
metal_dent[m]
*execute in the terminal
15:32
BAndiT1983
haven't used sed that much yet, but isn't there > missing to route into file?
15:32
BAndiT1983
https://unix.stackexchange.com/questions/283407/can-sed-save-its-output-to-a-file
15:33
metal_dent[m]
no, i'm saving the values in the variables ; will place the values in .h with different sed commands later
15:34
BAndiT1983
and why not directly?
15:34
metal_dent[m]
like:
15:34
metal_dent[m]
`sed -i "/data_icon\[/ s/1/$(WIDTH)/" $(1)`
15:35
metal_dent[m]
> and why not directly?
15:35
metal_dent[m]
because there are multiple places where width and height need to be placed
15:35
BAndiT1983
multiple places? what do you mean?
15:39
metal_dent[m]
in the data[width*height] and also in the icon_name = {width, height, {data} }
15:41
BAndiT1983
have you tried to fill your structure manually, as my impression is, that it doesn't need to be complicated
15:42
BAndiT1983
inherit from Icon and try to do it manually first, to see if it is required to init it over multiple layers
15:43
metal_dent[m]
this is the sample file -> https://pastebin.com/raw/FJFD0UZz
15:45
BAndiT1983
why do you use 1 instead of placeholders? second thing, it's still not deriving from Icon, which provides generic structure
15:51
metal_dent[m]
yes, it's the same as the one which we have now ; okay i'll derive it from Icon
15:53
BAndiT1983
first you should add placeholders, otherwise i cannot recognize what you are replacing
15:53
BAndiT1983
e.g. uint16_t Width = $WIDTH$;
15:53
metal_dent[m]
okay, noted!
15:53
BAndiT1983
although when deriving, you don'T have to do type etc.
15:53
BAndiT1983
*-do +add
15:53
BAndiT1983
this is why i tell you to try it manually first, before doing conversion
16:54
BAndiT1983
changed nick to: BAndiT1983|away
17:37
Bertl
off for now ... bbl
17:37
Bertl
changed nick to: Bertl_oO
17:58
anuejn
Bertl_oO: we have got working hdmi with our nmigen gateware now :)
17:59
anuejn
works glitch-free at 1080p60 with my monitor
18:29
BAndiT1983|away
changed nick to: BAndiT1983
20:11
se6ast1an
hurray!, great anuejn!!!
20:27
BAndiT1983
changed nick to: BAndiT1983|away
21:14
anuejn
with some tweaking it also seems to work with 2304×1440@60Hz (218.75Mhz pixel clock)
21:15
anuejn
or ~2.2Gbit/s line rate
21:48
Bertl_oO
that is impressive!
21:49
Bertl_oO
does the code work on both platforms (beta and micro)?
22:22
anuejn
didnt try (yet?) on the beta
22:28
anuejn
but somehow we are struggeling to convince the camlink 4k to accept any signal :(
22:28
anuejn
even with the exact advertized modelines it doesnt work
22:28
anuejn
neither at 640x480 nor at full hd
22:29
Bertl_oO
are you generating RGB or YCrCb?
22:30
anuejn
rgb
22:30
anuejn
but should the monitor be able to detect what we are sending?
22:30
Bertl_oO
yes, the problem with YCrCb/YUV is that it requires specific data islands
22:31
Bertl_oO
I've also had problems with the CamLink4K and any output from the Beta
22:31
anuejn
in the horizontal / vertical blanking?
22:32
Bertl_oO
I suspect that the firmware does check certain settings in the HDMI chip and/or the HDMI chip does check/require certain settings
22:33
Bertl_oO
yes, data islands are part of HDMI (not defined for DVI)
22:34
anuejn
ah ok i see
22:37
anuejn
do you know how the hdmi source gets to know if they have to do YCrCb or RGB?
22:37
anuejn
bc. i cant find it in the modeline
22:40
Bertl_oO
good question
22:42
Bertl_oO
Display Type field bits 3-4 maybe?
22:43
Bertl_oO
(edid structure, byte 24)
22:43
vup
https://edid.tv/edid/660/
22:43
vup
I think that says RGB color display
22:44
Bertl_oO
good point
22:55
Bertl_oO
maybe check the ITE status?
22:56
Bertl_oO
I2C registers should be available via USB
22:56
anuejn
with the stock firmware?
22:56
Bertl_oO
yup
22:57
anuejn
how?
22:57
Bertl_oO
let me dig out my notes ...
22:57
anuejn
thanks :)
23:15
RexOrCine
left the channel
23:16
vup
atleast according to the hdmi spec: All HDMI Sources and Sinks shall be capable of supporting RGB 4:4:4 pixel encoding.
23:17
Bertl_oO
good to know
23:26
RexOrCine
joined the channel