Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Dolu1990
    @Dolu1990
    hmmm
    emard
    @emard
    It's probably propery of my eth switch or PC that tests it
    I found a bug in mcpclock, setting it to 1970-01-01 makes garbled year "d0" instead of "70"
    Dolu1990
    @Dolu1990
    I will have to investigate MAC / Sdcard performances, to see where linux is losing time
    Cool anyway ^^
    emard
    @emard
    Yes when it works out_of_the_box it is very comfortable to boot and login
    emard
    @emard
    mcpclock.c epoch years bug fixed and pushed - if in distribution, I recommend update :)
    @pnru_gitlab small bugfix, probaby your hwclock still has it :)
    -  v = tvp->tm_year; v -= 100; v = (((v/10)<<4) + (v%10));
    +  v = tvp->tm_year; v %= 100; v = (((v/10)<<4) + (v%10));
    e2kgh
    @e2kgh
    @lawrie : what is the magics of making the DTB files automatically? So far I get all my stuff to compile here for my green 85F, but the dtb, I stil have to copy from your GIT ...
    emard
    @emard
    @lawrie closing " in README :)
    date -s "2020-10-03 11:23
    Paul Ruiz
    @pnru_gitlab
    @emard thanks for the heads-up. For the Cortex RTC clock there are a bunch of updates that I need to do. By the way, has anybody ever tested the i2c link to the GDPI connector / monitor?
    My focus for the Cortex right now is mostly to make networking comfortable. Some of this stuff will also be needed for connecting it to a Blit.
    Lawrie Griffiths
    @lawrie
    @e2kgh Currently the dts for 2 and 4-core systems have to be edited by hand. You need to move the start of the commented-out code down here and here, and then run saxon_buildroot_dts.
    If you have 64MB od SDRAM, you have to change this line.
    emard
    @emard
    i2c works for monitor, it can read its EDID conent. Probably it can write it back to monitor and brick it :). Parsing or even generating new edid is much longer story of potential hax.
    @pnru_gitlab you can try RMII too, if a packet is buffered to 2K BRAM and read slower by tms99xx, it could work to get you tcpip wired
    But take a look at your board, boards from skriptarnica don''t have PCA9306A i2c levelshifter chip should be below GPDI connector. It can be easily ordered from mouser and soldered
    Paul Ruiz
    @pnru_gitlab

    @emard thanks for i2c info. I think my 12F board is skriptarnica from the early 2019 run, so I will check. My 85F is a blue Wattenrott.

    My current ping time is 600ms, but I think I have a reasonable chance to get that down to 300ms. This is better than the Arpanet backbone from 1980, which had 1 second ping times (although "ping" did not exist yet). However, back then on a LAN ping times of about 50ms were achieved, using dedicated boards, that often had their own buffer memory and DMA circuits.

    I'm thinking about using a ENC28J60 PMOD. This is available in a 28 pin 0.1" pin-through-hole package for a future retro board and the TI990 chips have a "cru" I/O bus that is pretty similar to SPI. Another route could be to run the ESP32 PPP link at 115K2 or something like that and use a sram (bram) buffer. I am too fond of the self-contained aspect of the ESP32 solution to let it go easily.

    emard
    @emard
    @pnru_gitlab aha ok 28J60 would work too :) ESP32 with 115200 PPP is good, we have tried it on saxonsoc. I can normally work with prompt and copy few short files. Blue 85F has i2c chip it could R and on some monitors possibly also W EDID. I recommend backup :). If forgotten, Linux X11 used to write EDID in syslog so there may already be some emergency hex backup
    emard
    @emard
    @lawrie is on lcc tests the example for reading keyboard, remember unfinished tetris and I wanted some select call replacement that reads char and timeouts, I see there's console.c, seems to work
    Lawrie Griffiths
    @lawrie
    Yes console.c was by attempt to do what you need, but I have not looked at it for a while. When I looked at your tetris, it did not seem to be write to the screen correctly, so I thought I would leave it to you to get it working.
    There are now lots of system calls implemented, but they don't currently all have the wrappers that they need. For example, there is pselect6 and ppoll, but not select and poll wrappers.
    Paul Ruiz
    @pnru_gitlab

    Is select/poll necessary? I thought that the original game just placed stdin into raw + nonblocking mode, which I think was tested to work. Output is to an ansi screen and is from a practical point of view not blocking the game's event loop. Is there more work to do other than debugging the game?

    Of course we need the wrappers for select and poll at some time, but for this game I think it is not needed.

    emard
    @emard
    @lawrie tetris must be run from xterm, actually it needs a terminal that supports vt52 mode
    select is not really needed and even it wouldn't allow game to speed up as it progress, but in this case it would consume least CPU. I can get along with console.c, with 20ms usleep it consumes only 10% cpu what is very acceptable
    Paul Ruiz
    @pnru_gitlab
    @emard If you set VMIN to 0 and VTIME to 1 or 2 you get behaviour that is very similar to using select() and hopefully gets the cpu load down to a few percent.
    Paul Ruiz
    @pnru_gitlab
    If you use VTIME, don't use non-blocking at the same time.
    emard
    @emard
    yes yes that could be great, even more if I can dynamically change timeout there
    emard
    @emard
    @pnru_gitlab Yeees that was exactly I was looking for!! This approach is even lighter than select(), and speed range cc_c[VTIME]= 1-10 is exactly what is needed
    derekmulcahy
    @derekmulcahy
    Newbie question, does the SD card latch? I tried giving it a firm, but gentle push, and it doesn't click in. I once spent two hours with another board trying to get a SD card to latch and then found that the card holder slid a bit and then flipped open, clamshell like. So what is the correct procedure with this one?
    emard
    @emard
    yes you need to first insert it forward then slightly pull it back and you should hear click for not hinged SD slots.
    for hinged, push hinge slightly forward, open hinge insert SD, close and pull it back
    very gentle with hinged, it's fragile
    Lawrie Griffiths
    @lawrie
    @emard How were you planning to run tetris on saxonsoc then? If I run xterm on my host, then ssh to saxonsoc and run it, the screen is OK.
    emard
    @emard
    Yes exactly like this for now. Maybe source should be edited later and vt52 replaced with vt100 sequences, that should be wider compatible
    derekmulcahy
    @derekmulcahy
    Haha this IS one of those slide it and open up. Did the Snickerdoodle have one of these? At least this didn't take two hours. Yes I could easily push it past that little nub which prevents pushing it in directly. Works great, thanks.
    emard
    @emard
    "xterm" or kde "konsole" run vt52 for tetris correctly. gnomes "terminal" not.
    @derekmulcahy no problem! I wish hinged SD slots should be forbidden and only non-hinged availabe on mouser again ....
    emard
    @emard
    @lawrie I made it playable somehow :) still its rough and few things need some fix https://github.com/emard/tetris4terminals
    Lawrie Griffiths
    @lawrie
    It needs some sound effects :)
    emard
    @emard
    eheheeheeee :))) I'm currently trying to make speed increase with level
    emard
    @emard
    Now game speed advances and double-chars drawn for better view with 8x16 chars. CPU usage very small mostly around 1%
    emard
    @emard
    TETRIS now works in VT100 mode https://github.com/emard/tetris4terminals so saxonsoc framebuffer can be used like this:
    ./tetris > /dev/tty1
    Lawrie Griffiths
    @lawrie
    Or even ./tetris >/dev/tty0 to get it on the HDMI monitor.
    I see, both of those go to the HDMI monitor.
    emard
    @emard
    I have added sound (beep ctrl-g :)
    tty0 is currently viewed, ttyN is specific one maybe
    Lawrie Griffiths
    @lawrie
    With vt100 control codes, you could probably make the blocks coloured.