Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Does anyone know how to talk to a memory stick?

Does anyone know how to talk to a memory stick?

Scheduled Pinned Locked Moved The Lounge
hardwareperformancequestionhtmljson
43 Posts 27 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Daniel Pfeffer

    Memory sticks use the USB protocol, which is available at [www.usb.org](http://www.usb.org). The higher-level software protocol is typically USB attached SCSI (UAS), available from the same place. I don't know what protocol is used for mice, keyboards, or hubs, but I'm sure that you can find it on the site as well.

    Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

    D Offline
    D Offline
    Dan Neely
    wrote on last edited by
    #23

    yup, and AIUI it's a fairly complex protocol to implement properly; you can't just bitbang it via a simple GPIO pin on a microcontroller. To bridge a retroPC to a USb stick what you probably would need to do is to have an RPi/etc that speaks both RS232 (or that can bit-bang whatever retro-protocol that the target computer expects to get its IO on) and USB; and then write an application on it that can translate from USB to retro IO.

    Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt

    C 1 Reply Last reply
    0
    • R realJSOP

      Whatever you do, during the conversation, don't mention it's size. Memory sticks hate that. Also, avoid the question "Does my capacity look big in this USB port?" It's a trick question that can never be answered to the memory stick's satisfaction.

      ".45 ACP - because shooting twice is just silly" - JSOP, 2010
      -----
      You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
      -----
      When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

      C Offline
      C Offline
      CodeWraith
      wrote on last edited by
      #24

      That's not the worst. Memory sticks never forget any of your mistakes and also store the exact date and time of every (non)event. Just forget any one of them and you suddently must sleep on your couch or in the dog house.

      I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

      1 Reply Last reply
      0
      • F Forogar

        Quote:

        "wrong way - flip me over"?

        I had a girlfriend say that to me once, long, long ago.

        - I would love to change the world, but they won’t give me the source code.

        C Offline
        C Offline
        CodeWraith
        wrote on last edited by
        #25

        If this were not the place it is, I would now ask you by which coordinate axis you flipped her over and if that was the right choice.

        I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

        F K 2 Replies Last reply
        0
        • D Dan Neely

          yup, and AIUI it's a fairly complex protocol to implement properly; you can't just bitbang it via a simple GPIO pin on a microcontroller. To bridge a retroPC to a USb stick what you probably would need to do is to have an RPi/etc that speaks both RS232 (or that can bit-bang whatever retro-protocol that the target computer expects to get its IO on) and USB; and then write an application on it that can translate from USB to retro IO.

          Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt

          C Offline
          C Offline
          CodeWraith
          wrote on last edited by
          #26

          Dan Neely wrote:

          To bridge a retroPC to a USb stick what you probably would need to do is to have an RPi/etc that speaks both RS232 (or that can bit-bang whatever retro-protocol that the target computer expects to get its IO on) and USB; and then write an application on it that can translate from USB to retro IO.

          Look at the adapter module that I posted the link to. It's actually intended to be used with a Raspy. The conversion magic is done in the lonely chip on the small board. On one side you have the USB port and on the other side you have the four signals for a UART plus ground, at TTL/CMOS levels and not shifted to RS232 levels. That should work with any UART, 8 bit computer or not. Provided that works as advertised, the big question is what I will have to send over my UART and what response I will get. Maybe I should look for some Raspy users to tell me what they use the adapter for and how they access the USB devices with it.

          I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

          1 Reply Last reply
          0
          • C CodeWraith

            I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

            I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

            Richard Andrew x64R Offline
            Richard Andrew x64R Offline
            Richard Andrew x64
            wrote on last edited by
            #27

            Forgive me, but how exactly do you think that USB interface device will help you? That interface device functions as a USB client. What you need is a device that can function as a USB host. The memory stick would be the client and the host device is what would talk to it and relay the information to your 8-bit.

            The difficult we do right away... ...the impossible takes slightly longer.

            C 1 Reply Last reply
            0
            • Richard Andrew x64R Richard Andrew x64

              Forgive me, but how exactly do you think that USB interface device will help you? That interface device functions as a USB client. What you need is a device that can function as a USB host. The memory stick would be the client and the host device is what would talk to it and relay the information to your 8-bit.

              The difficult we do right away... ...the impossible takes slightly longer.

              C Offline
              C Offline
              CodeWraith
              wrote on last edited by
              #28

              Thanks. I had to find the datasheet of the chip on the adapter to finally find out what it is for. Like you say, the USB side goes to a PC, which then is the host and the UART side of the adapter goes to a client that only has a UART and can then act as a USB client. It would have been too easy. Back to plan B then. PS/2 for keyboard and mouse, serial ATA to access compact flash memory cards.

              I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

              1 Reply Last reply
              0
              • C CodeWraith

                I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                J Offline
                J Offline
                Jacquers
                wrote on last edited by
                #29

                [USBlyzer - USB Protocol Analyzer and USB Traffic Sniffer for Windows](https://www.usblyzer.com)

                1 Reply Last reply
                0
                • C CodeWraith

                  I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                  I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                  I Offline
                  I Offline
                  Igor Coretti
                  wrote on last edited by
                  #30

                  The device in the link is something very different than what you are looking for. Remember that USB has devices with Master role; tose are usally the hosts that initate and manage all the comunication on the bus. Then there are Slave devices that respond to master's requests and send out data in an orderly manner, when instructed to do so. The device you are referring is of the latter type; it can only reply to a host requests and it can't talk to other USB devices. What you want to implement is a master node. As you may have understood, the master has very complex tasks to accomplish, since the USB bus is a Plug 'n play thing. One of the first things the master has to do is to enumerate the devices that are on the bus, and it has to do it dynamically, since a device can be added at any time. Then it has to manage the configuration of the device (if needed) and then set up the comunication. Things gets soon very complicated even for a simple comunication with a mass storage. In this case, after the USB 'low level' protocol, you will have to deal also with the "Mass storage" layer. All I remember is that on the Microchip knowledge base there was some application note with a very simple implementation of basic usb protocol master made to be run on a their smallest microcontrollers, but i regret to say that I don't have any link to it anymore. Whatever you do, it will be a huge work, and probably lot of fun ;-). Good luck !

                  K 1 Reply Last reply
                  0
                  • I Igor Coretti

                    The device in the link is something very different than what you are looking for. Remember that USB has devices with Master role; tose are usally the hosts that initate and manage all the comunication on the bus. Then there are Slave devices that respond to master's requests and send out data in an orderly manner, when instructed to do so. The device you are referring is of the latter type; it can only reply to a host requests and it can't talk to other USB devices. What you want to implement is a master node. As you may have understood, the master has very complex tasks to accomplish, since the USB bus is a Plug 'n play thing. One of the first things the master has to do is to enumerate the devices that are on the bus, and it has to do it dynamically, since a device can be added at any time. Then it has to manage the configuration of the device (if needed) and then set up the comunication. Things gets soon very complicated even for a simple comunication with a mass storage. In this case, after the USB 'low level' protocol, you will have to deal also with the "Mass storage" layer. All I remember is that on the Microchip knowledge base there was some application note with a very simple implementation of basic usb protocol master made to be run on a their smallest microcontrollers, but i regret to say that I don't have any link to it anymore. Whatever you do, it will be a huge work, and probably lot of fun ;-). Good luck !

                    K Offline
                    K Offline
                    kalberts
                    wrote on last edited by
                    #31

                    If the idea of the project is to prove that you can do it on that aged CPU, just for fun, I guess you'll have to do the big work of implementing a USB host. If you have a problem that requires a solution, one way or the other, you could use one of the tinier Arduions as a relay: Your old CPU talk through an RS232 interface to an Arduino that acts as a USB host through e.g. The Arduino USB Host Shield[^], forwarding the data to the USB devices. Making the two boards cooperate is a nice challenge as well: You will have to do some protocol development to synchronize activities under two quite different OSes. Not too hard, but well above what you would give as a homework assignment to a freshman CS student. I am sure that there are similar Raspberry Pi solutions, but Pi solutions tend to be more ambitious, larger, more expensive. Arduino solutions are often more limited, but much simpler to handle if all you need is a very simple solution. If you are a soldering iron person: That Arduino web page refers to the MAX3421E[^] chip on the shield. You may of course try to get hold of one of those and add to your setup, avoiding the complexities of an Arduino. You can probably pick up a lot of useful info from the Documentation tab on the Arduino page (such as the diagram for the shield).

                    1 Reply Last reply
                    0
                    • C CodeWraith

                      I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                      I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                      G Offline
                      G Offline
                      Gary Wheeler
                      wrote on last edited by
                      #32

                      CodeWraith wrote:

                      Remember what Commodore did with the C64's floppy drives?

                      I had a TRS-80 Model 100, along with the external floppy drive. The drive used RS-232 at a whopping 19.2K baud to talk to the drive, which held an amazing 100K.

                      Software Zen: delete this;

                      1 Reply Last reply
                      0
                      • D dandy72

                        lw@zi wrote:

                        I talk to it sometimes. Something along these lines: "Just get in to the slot you little..."

                        Has it ever responded with, "wrong way - flip me over"?

                        M Offline
                        M Offline
                        milo xml
                        wrote on last edited by
                        #33

                        Twice, ironically. :laugh:

                        1 Reply Last reply
                        0
                        • C CodeWraith

                          I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                          I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                          T Offline
                          T Offline
                          Tim Kirk
                          wrote on last edited by
                          #34

                          Converters like the one mentioned are typically only for connecting slave devices to host computers. If you are trying to be the host and use a memory stick, you need a USB Host or OTG peripheral. Something along the lines of the Arduino Host shield if you want a pre-made solution. Arduino USB Host Shield[^]

                          1 Reply Last reply
                          0
                          • D dandy72

                            lw@zi wrote:

                            I talk to it sometimes. Something along these lines: "Just get in to the slot you little..."

                            Has it ever responded with, "wrong way - flip me over"?

                            O Offline
                            O Offline
                            obermd
                            wrote on last edited by
                            #35

                            dandy72 wrote:

                            Has it ever responded with, "wrong way - flip me over"?

                            Daily. I think my USB sticks need the Jeep warning: If you can read this, flip me over.

                            1 Reply Last reply
                            0
                            • C CodeWraith

                              If this were not the place it is, I would now ask you by which coordinate axis you flipped her over and if that was the right choice.

                              I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                              F Offline
                              F Offline
                              Forogar
                              wrote on last edited by
                              #36

                              It was the X coord. :cool: I really miss The Soapbox sometimes. :sigh:

                              - I would love to change the world, but they won’t give me the source code.

                              1 Reply Last reply
                              0
                              • C CodeWraith

                                If this were not the place it is, I would now ask you by which coordinate axis you flipped her over and if that was the right choice.

                                I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                                K Offline
                                K Offline
                                Kent K
                                wrote on last edited by
                                #37

                                :laugh: Whew, glad you didn't ask. :)

                                1 Reply Last reply
                                0
                                • F Forogar

                                  Quote:

                                  "wrong way - flip me over"?

                                  I had a girlfriend say that to me once, long, long ago.

                                  - I would love to change the world, but they won’t give me the source code.

                                  D Offline
                                  D Offline
                                  dandy72
                                  wrote on last edited by
                                  #38

                                  I was trying to be subtle...

                                  1 Reply Last reply
                                  0
                                  • C CodeWraith

                                    I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                                    I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                                    F Offline
                                    F Offline
                                    FredWah
                                    wrote on last edited by
                                    #39

                                    I think it's meant to be used the other way. You talk to the usb part and out comes TTL

                                    R 1 Reply Last reply
                                    0
                                    • F FredWah

                                      I think it's meant to be used the other way. You talk to the usb part and out comes TTL

                                      R Offline
                                      R Offline
                                      rjmoses
                                      wrote on last edited by
                                      #40

                                      didi dodidi didi dodidi dodi do do didididi didi dodi dodido dido dodi dodidodo dodido dodi di didodo dodo dododo didodi dididi di dodidodi dododo dodidi di dido dodi dodidodo dodo dododo didodi di (The secret language of ancient hackers.)

                                      1 Reply Last reply
                                      0
                                      • C CodeWraith

                                        I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                                        I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                                        A Offline
                                        A Offline
                                        ACRowland
                                        wrote on last edited by
                                        #41

                                        Have you seen Mark of RetroClinic's DataCentre (RetroClinic DataCentre - USB on your Beeb[^]) for the BBC Micro? The DataCentre is discontinued, but I expect he would be willing to discuss any questions you have.
                                        I seem to recall that one of the big issues was the Beeb's 16-bit address bus, which meant only accessing a fraction of, say, an SD card's capacity, but I have no idea what the solution was.

                                        1 Reply Last reply
                                        0
                                        • C CodeWraith

                                          I mean the low level protocol, not some framework, API or driver. In my ongoing quest to interface modern devices to very old 8 bit computers I have stumbled over this: DEBO USB TTL: Raspberry Pi -USB-TTL-Schnittstellenwandler, CH340G bei reichelt elektronik[^] Not really rocket science. With this I can send and receive bytes from a USB device with a simple UART. This would solve a few problems at once. A simple cheap memory stick would be all the hard disk' an 8 bit computer would ever need. Don't worry about speed. Mass storage is for many reasons a relatively slow affair on 8 bit computers, beginning with their low bandwith on the bus. Remember what Commodore did with the C64's floppy drives? I could also use a USB keyboard or a mouse. So, with that converter and a UART I can now talk to USB devices. Can I also hook up a USB hub to it and access several USB devices over the same UART? How do I select devices? How do I request or send bytes? Some kind of USB protocol with an embedded device specific protocol?

                                          I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.

                                          B Offline
                                          B Offline
                                          bence98
                                          wrote on last edited by
                                          #42

                                          USB is complicated. Trust me. I would highly discourage you to implement your own. That said, the protocol you're looking for is the USB Mass Storage CDC (Common Device Class). You're probably going to have to toush USB Attached SCSI as well. If you want to do that though, this CH340 won't do, because it is a USB **device** and not a **host**. You'll need something with either a USB ROOT hub (like a RasPi), or USB OTG (I heard some AT90's and PIC16F's are capable of this, but I never found anything like that, so dunno). You also don't "select" devices per se. When a USB device is connected, the USB hub sends you (the ROOT hub) a message. Let's say, it was hub #5. Then you instruct said hub to reset it. This will make the newly attached device assume an address of "5.0". Now, you send a GET DESCRIPTOR followed by a SET ADDRESS to USB address "5.0.0", which is the CONTROL endpoint of the new device. In SET ADDRESS, you give it a permanent address that it can use moving forward. Now, why did I say you don't really "select" devices? Because, even though you *can* address individual devices, *all* attached USB devices will hear the ROOT's messages, and it is up to them to decide whether to activate or not. If you misconfigure a device and cause an address collision, you're screwed. I could go on and on about USB, but I think you get the point: Don't Implement Your Own. For your purposes, I'd use a SD/microSD card instead, as these can be used in SPI transfer mode, which is a cakewalk to implement, as opposed to the pain-in-the-backyard you're gonna have if you try to implement a USB host yourselves. "I don't think about dying. It is the last thing I want to do. :) " - theoldfool

                                          C 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups