Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Lawrie Griffiths
    @lawrie
    @emard Autorepeat works well
    emard
    @emard
    @lawrie for most controllers usb 1.0 8-byte report just change symlink
    usbh_report_decoder.v -> usb/report_decoder/usbh_report_decoder_darfon.v
    For usb 1.1 controllers and different report size, like xbox360 besides symlink edit top.v
      parameter C_usb_speed=0,  // 0:6 MHz USB1.0, 1:48 MHz USB1.1, -1: USB disabled,
      // xbox360 : C_report_bytes=20, C_report_bytes_strict=1
      // darfon  : C_report_bytes= 8, C_report_bytes_strict=1
      parameter C_report_bytes=8, // 8:usual joystick, 20:xbox360
      parameter C_report_bytes_strict=1, // 0:when report length is variable/unknown
      parameter C_autofire_hz=10,
    emard
    @emard
    @rthorntn I guess PMOD for LED panels occupies one whole side, so you'd have 28 GPIO left. ADC is 1MSa/s and that is shared with all enabled channels so it would be too slow for normal VGA but if you can feed 100 kHz pixel rate and have few minutes refresh time, OK
    rthorntn
    @rthorntn
    thanks
    Lawrie Griffiths
    @lawrie
    @emard I built the saitek version and the OSD works fine with my cyborg rumble controller. Unfortunately, the games do not run. it seems rather hit or miss whether the games run with any particular build at the moment. I am currently on the 12F.
    emard
    @emard
    @lawrie tonight I'll check what happens with 12F. Sometimes I experiment with -abc9 option in the makefile
    Lawrie Griffiths
    @lawrie
    The last build had -abc9, so I will try it without.
    emard
    @emard
    Yes without is slower compiling but may produce something with different routing
    Lawrie Griffiths
    @lawrie
    Yes, that saitek build worked.
    emard
    @emard
    I guess NES code has to be completely reviewed and cleaned up from altera-style and C constructs
    Rangel Ivanov
    @ironsteel
    Yup, I left a bit of a mess and a lot of duct taped pieces....
    emard
    @emard
    you can maybe label them "FIXME" comment if you remember where they are
    emard
    @emard
    @lawrie at my 12F it only works if I select OSD with PCB buttons using C_osd_usb=0, after loading I can use USB joystick. I tried C_osd_usb=1 with and without -abc9 but neither works for mx 12F
    Lawrie Griffiths
    @lawrie
    I have a complete set of working versions now: darfon and saitek for 12f and 85f. Not sure what I did differently to you.
    Felipe Corrêa da Silva Sanches
    @felipesanches
    is there a way to keep the ULX3S configured with a given bitstream across power cycles?
    or do I have to always program the device after powering it up?
    emard
    @emard
    @felipesanches of course fujprog -j flash bitstream.bit and after power it will autoload immediatealy
    @lawrie I think it may differs between 12F boards. I have only one so among many some will work some wont
    Felipe Corrêa da Silva Sanches
    @felipesanches
    thanks!
    Felipe Corrêa da Silva Sanches
    @felipesanches
    Another World color palettes being displayed on HDMI
    Another World color palettes being displayed on HDMI
    kost
    @kost
    Just released v4.1 of fujprog: https://github.com/kost/fujprog/releases Now you can specify image type (svf, bit, img, etc) by taking -T option
    Also, interesting option is to pipe bitstream to fujprog. For example:
    curl https://github.com/kost/ulx3s-next186/releases/download/v2020.01.02/ulx3s_45f_next186.bit
    | fujprog
    if you want to force bitstream load even if idcode does not match, you can force it with (-z):
    fujprog -z bitstream-idcode-invalid.bit
    emard
    @emard
    @kost it works! fujprog 4.1 accepts stdin and programs the device!
    @felipesanches wonderful colors!
    @lawrie I changed something unimportant in toplevel and now I get 12F and 85F build to work with darfon
    Lawrie Griffiths
    @lawrie
    @emard I have been playing with Apple II again. I am currently going through the retro game implementations to see which ones work for me.
    I have your Disk server working and can load a game from disk2.py. I have been trying tetris48k.nib with a usb keyboard. It runs but is not playable as it hardly responds to the keyboard.
    The version of the OSD for the apple 2 only works when button 1 is held down. I can select files, but it does not seem to start a game.
    Lawrie Griffiths
    @lawrie
    Were you planning on updating the Apple II OSD to make it more like the NES version?
    Why is it that the Amiga OSD does not need an ESP32 server like the others do?
    emard
    @emard
    @lawrie if we are satisfied with nes OSD I can port it to apple. Selecting a disk won't immediately start, you usually need to type something at the prompt or press reset depending what's disk made for
    *6<ctrl-P><enter>
    ]PR#6
    ...
    ]CATALOG
    ]BRUN FILENAME
    ]RUN FILENAME
    amiga has inside a second 68K CPU that does things similar to ESP32. Porting to ESP32 would free up some LUTs and make it hopfully synthesize more reliable
    emard
    @emard
    But I to port amiga, I need to collect sufficient information about protocol. I think it's also SPI but even that I'm not sure
    There's interesting https://github.com/rkrajnc he has recent amiga rework, also some nes etc stuff
    Lawrie Griffiths
    @lawrie
    @emard I have also just played with the Galaksija. The implementation of that is similar to my ZX80 and Jupiter Ace. They use the same CPU implementation and are all simple Z80 computers. I tried the python program I used with the Apple 1 to type programs in using the uart. The Galaksija seems to have a fault where, if the same character is typed twice, the second one is ignored (e.g &FF becomes &F). That made it a bit difficult to type in and execute an assembly program, but I eventually managed an assembly program that cleared the screen.
    The Galakija implementation could do with a PS/2 keyboard and the uart bug fixing. And then a way to load programs. The font is nice on the Galaksija.
    Lawrie Griffiths
    @lawrie
    I am pretty happy with the way the OSD works for the NES.
    Lawrie Griffiths
    @lawrie
    The main problem I had with the Apple ][ implementation of the OSD is that I had to keep button 1 pressed to see the OSD and when I selected the program to run and pressed the right direction key nothing happened. I only had one nib file on the disk - tetris48k.nib. When I selected that from disk.py it started running immediately.
    That is doing d=disk2("/sd/apple2/tetris48k.nib") worked but selecting it from the OSD didn't seem to. Anyway, it will be different if you port the nes version.
    emard
    @emard
    @lawrie I will fix apple2 to have same OSD interface as nes. I will try to support both btn's and joystick if synthesis keeps stable. apple2 depending on its revision ROMs, at power up, reset and previous content of RAM, may try to load and autostart floppy file. Generally it isn't always so. Some games set RAM magic vector ID so you can't exit by reset anymore etc.
    For orao (and maybe galaksija) I can try to dump a tape file. Hrvoje Cavrak sent me long time ago a mail how actually TAP format ban be just bitbanged and some mmaped address is read and in proper timing it should read 0 or 1, then tape will be loaded