TGM 10 years! I celebrate this with a custom arcade machine!

Thread in 'Discussion' started by LOst, 5 Jan 2008.

  1. 10 year anniversary of Tetris The Grand Master. 1998-2008. I began playing TGM back in 2001 after seeing the Tetrismaster videos.

    ZiNc was the only option. I couldn't let got of the game design. I became GM 2006 after special training by colour thief and jago in 2005.


    But I am ready to do it again. Begin from the beginning. I may be GM in an emulator using keyboard. But not on the real hardware, and not with a stick! And after seeing KAN and other Japanese super players playing using sticks, that is the only right thing to do!


    So here it begins! I have spent 4 whole days building a custom computer only designed to play TGM without any frame lag or input delays.

    The choice was simple! I use the same technique as the Taito TypeX arcade machine uses to play Tetris Terror Instinct.



    I call my arcade machine the "LOst TypeY Prototype".


    The computer is a Celeron 1.2 GHz CPU with enough RAM, and a 3D accelerated graphics card capable of outputting the display to a Television. I actually had a Geforce 4 at first, but the s-video of newer graphics cards don't seem to work by themselves, so I switched to my old Geforce 2. Still enough power to drive ZiNc.


    The more exclusive thing is the operating system. The operating system is Windows XP Embedded SP2. Componentized to only execute ZiNc with exclusive access to all hardware resources. Can't get any smaller or faster.


    I had to spend 2 days understanding how Windows XP Embedded worked. And 2 days to build a shell to execute ZiNc as well as building a ZiNc plugin to read my stick with 60 frame accuracy.


    What I get for free is this:

    - Being able to play TGM without waiting for other processes to finish or block resources.

    - Having the S-video cable directly hooked up to my DVD recorder to save my best games. This is done without taking any CPU from my arcade machine, leaving the game in 60fps.

    - Forced to play with the stick because the keyboard and mouse have been removed from the configuration. So I can only become better with stick from now on [​IMG]

    And I love the result. Once I am done playing, I can leave the system on to "attract mode" any other residents of my house. Or I can hit the power button to automatically shutdown the system and at the same time save the hiscore list to the harddisk.




    Here is a video of how it looks like, from the users perspective, as well from within the screen:

    http://www.logotypes.se/TypeY/typey.avi



    Here are some screen shots showing the hardware configuration:

    [​IMG]

    [​IMG]


    If you have a computer laying around and want to do as me. I can assist in transforming it into a TGM arcade maching. Windows XP Embedded is free from Microsoft. My XP Embedded image is just below 100 MB.


    If you are a VIRTUA STICK High Grade user like me, you will be happy when I'll release my ZiNc plugin. It's awesome!


    Actually all this is awesome. But most of all, the TGM game is awesome! Never give up!
     
  2. Muf

    Muf

    50fps, actually, since you're in PAL land. The video you linked to is 50fps as well. [​IMG]
     
  3. jujube

    jujube Unregistered

    details, details [​IMG] i think the important thing is "full speed." i'd take me some full speed.
     
  4. I've heard that most recent PAL TVs support 60Hz signals. Even if it's rendering at 60 though, it'll be interlaced (arcade monitors display the complete progressive signal). Still looks pretty sweet though!
     
  5. tepples

    tepples Lockjaw developer

    True, especially in Brazil where the native TV system is a Frankenstein mix of PAL and NTSC. Officially it's called PAL/M, but you might call it TV ACE [​IMG]

    Standard-resolution (15.7 kHz) arcade monitors, especially those connected to a PS1-based PCB such as Capcom ZN series or Konami System 573, commonly display a 240p or 288p signal. If Zinc supports high-res rendering, the 480i or 576i signal may look better than original, just as In The Groove on PS2 looks better than arcade In The Groove.
     
  6. Yea, it is 50Hz. It's a little side effect but it works out pretty well. It could be much worse.
     
  7. Amnesia

    Amnesia Piece of Cake


    My poor LOst ..If I had been your Master during this period instead of c_t and jago, you would have been Gm 1,5 years ago.. [​IMG]
     
  8. Muf

    Muf

    You know... I was just thinking. TGM's 10th anniversary isn't until 07/10/2008. You're a couple months early! [​IMG]
     
  9. my humble respects to you skills doing those stuff. especially coding a zinc plugin. how did you do that ? compiling with visual studio, then transferring the binary to your windows xp embedded pc? via usb stick? i never touched windows xp embedded and find it most interesting what you did! what about graphics drivers for your gforce 2? are they special to windows xp embedded? or just the usual xp default vga drivers?
     
  10. Programming a plugin for ZiNc was was kinda hard because I had never programmed a Dynamic Link Library (DLL) before. Also ZiNc tries to work on both Windows and Linux which makes some stuff seem too simple to work. There is no way to quit ZiNc from the plugin except from Linux which has a special support for just that.

    The actual wonder of the plugin (which you can download here: http://www.tetrisconcept.com/forum/view ... 5198#15198) is my controller code which I developed for my game engine. It's around 6.000 lines of C++ code and detects the names of the buttons, as well as the device name and attributes automatically. Microsoft has support for that stuff, but I didn't like their system. Wasn't enough of "game console" over it.


    Windows XP Embedded is the same as Windows XP professional except you build the image yourself using components. There are over 10.000 components within the base package to choose from, such as drivers, to shell UI components.

    You can download Windows XP Embedded free from Microsoft here: http://www.microsoft.com/windows/embedd ... trial.mspx

    Choosing the Geforce 2 default driver was easy. It's part of the driver components. You just seach for it.

    Applying the Windows XP Embedded image to another computer is the hard part. You can't just install it like normal Windows. You must copy its harddrive image onto the harddrive of the other computer. Since i use NTFS to be able to shutdown the computer without harming the disk too much, I needed a special build of Windows XP called Preinstalled Environment. Based on the "MiniNT", it is a Windows XP running from RAM instead of the harddisk, sp that I can boot it up on any computer just by having the boot CD-ROM option in the BIOS enabled. Accessing FAT, NTFS... and all other formats are easy from Windows PE.

    Transfering the XP Embedded image using a CD-RW, and it was done.



    However, many factors made this project fail in the longer run, such as the monitor going blank after 10 minutes, and ZiNc failing to exit propperly, showing a error message. Else it would have worked pretty well.



    EDIT: Yea forgot how to get TGM. You can create components for Windows XP Embedded as well.
     
  11. Leffe

    Leffe Unregistered

    Congratulations to a project well done L0st! Really interesting stuff!


    I have been thinking of having a dedicated smaller machine just to run TGM in a similar way with an arcade joystick (I own a Hanaho Hotrod which is just a Ps/2 emulating device), but your execution of the idea totally rocks and by far surpasses what I had in mind.


    It's sweet that the computer starts directly into the game when you power on and quits when powering off, with no way for a user to mess things up. I used your improved controller code last day for some rounds and I like it a lot. Soft dropping feels way more safe, the risk of accidentally locked pieces and following bad language are heavily reduced here [​IMG]

    I have a few questions:


    How do you start your controller code in that cool way without going through the config menu?


    Is it possible to change the variables when using the plugin normally available through the regular ZiNc in 24 Tetris The Grand Master (JP980710)_zinc.cfg? Where does the plugin read those values?


    Where in Sweden do you live? We should have a coke or some other beverage together one day. I don't know any other TGM player living reasonably close, my friends up here all refuse to play any tetris on our occasional arcade emulation evenings. I'm from Ume, s hinna ge ne ba ja som begrijp tejtrisen! [​IMG]

    Keep up the good work,

    cheers!
     

  12. I have always used ZiNc without a gui so I don't know exactly how controller settings are made up to work.

    My plugin is forced to be used only with Tetris The Grand Master, and not with other games for ZiNc. It was specially designed for my arcade machine, and I don't plan to make it work any better.


    But my way is very private. I use my own code and settings in the same manners as in my own developed game engine. The config files are named in the same name as the DirectInput controller device name, and stored as cfp files in the cfg directory.


    The TGMZiNc.exe program starts ZiNc with a special CreateProcess flag that hides any console windows. That's why you won't see the console window when starting ZiNc from the controller dialog. This is to make it more like an arcade machine, but it will not say any error messages because those will be hidden.


    Ume is not close [​IMG] I live in the Stockholm area. But I have the same problem as you. My friends refuse to play TGM. One of my friends play Tetris DS. I don't.


    For me to travel to Ume for another reason than meeting you would be crazy. That's like spending a night on the train. But someday you will probably get down to Stockholm. You are free to drop by at any time [​IMG]
    Heh, not saying that Stockholm has more to offer than Ume. They are possibly equal for education and export.

    I am a true TGM fan. And right now I am devoting my time to develop TGM stuff. The controller plugin was just the beginning.

    There are two other Swedish players. I'll PM you with info.


    Every now and then I am trying to beat your current record in TGM. But that is easier said than done.
     
  13. Leffe

    Leffe Unregistered

    Yo L0st!


    I start ZiNc with a batch file (could probably use a shortcut instead) which just fires TGM up with correct parameters, using no gui. Only game one really need [​IMG]

    You are definitely right, there's probably more reason for me to go to Stockholm. Unless you are going to our university here for some reason, Ume isn't much to see. There's a summer ahead and if nothing else, I wouldn't mind going to Stockholm for a few good games. True TGM fans are few and far between up here.


    I am sure you will kick my record any time soon, it's just a few seconds and that's like one soft drop too much or similar. Besides, you have your achievements recorded. It's really interesting to see how different we play in some situations, but end up with a similar time.


    Laters!
     
  14. So true, so true [​IMG]
    It's very interesting that we end up so close in the ranking. And none of us can really see how the other one's doing [​IMG]
    Yes, summer is coming. Maybe there will be a bigger TGM meeting. If you save cash now, maybe more people can meet. Who knows [​IMG]
     
  15. Muf

    Muf

    I'm coming after you LOst!!

    [​IMG]

    Yes, that is a laptop with a broken backlight and no keyboard [​IMG]. It has a TV-out so it's going to be perfect as a Type-Y!
     
  16. Zaphod77

    Zaphod77 Resident Misinformer

    I'd like to see a guide on how to do this.


    even better i'd like a guide on how to make a bootable CD that will boot this streamlined OS.


    One problem. the free download is a trial only? won't it expire?
     
  17. Muf

    Muf

    Preliminary outlook: not too good.


    [​IMG]

    The CPU appears to be an Athlon XP-M 2200+ and it can't run MAME at full speed. And after digging through my collection of cables and signal convertors I managed to get picture over the TV-out... But it's greyscale. I could probably run TGM1 and Heboris on this but TAP is sadly not part of the options. Of course I'll have to try after getting rid of all the spyware, virus scanners and firewalls that plague this WinXP Home install (read: install XP Pro or XP embedded over it), but my 2400+ desktop can't run MAME smoothly either.


    EDIT:

    Seems I'm going to have to write a macro that turns the TV-out on in the control panel every time at bootup. The graphics card is an S3 ProSavageDDR which apparently doesn't have a function to always have the TV-out enabled. Thank you, cheapskate chinese engineers!


    In more positive news the CPU is strong enough for Zinc and I played some black&white TGM. I haven't had this much fun in black&white since my parents still had a black&white TV!


    [​IMG]
     
  18. tepples

    tepples Lockjaw developer

    I take it you didn't play Game Boy.
     

  19. The Pocket at least. The original Game Boy was more dark and light green.
     
  20. Muf

    Muf

    I didn't have a game boy, but I played a lot of super mario land on a friend's gameboy. But that's grey on green, not black and white.
     

Share This Page