Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
xina:p2k [2008/06/17 15:51] – angelegt geraldxina:p2k [2024/02/29 13:36] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 2: Zeile 2:
  
 XINA Background. XINA Background.
- Pinball 2000 is controlled by a personal computer located in the head of the game. The Operating System controlling the PC is called XINA (which stands for It's Not APPLE, {Applied Pinball Programming Language Environment} where APPLE was the operating system used for WPC). XINA is unique in it's command structure (ordinary UNIX / DOS commands do not work). A total of 99 XINA commands are available to view, alter, and execute the parameters surrounding the game.  
- XINA is actually an application layer on top of PC-XINU, a multithreaded operating system originally created by Douglas Comer and documented in a very well known two volume set of books. (XINU information: public.ise.canberra.edu.au/~chrisc/xinu.html) PC-XINU won over other operating systems for a few reasons. For example, making Linux into a real-time system with thread support would involve modifying the kernel, which then obligated Williams into releasing the kernel modifications to the public under the GPL. WMS Legal didn't care much for that. Comer's XINU license was much more friendly to the lawyers; namely, we could do anything we wanted to it with no obligations.  
  
- XINU also turned out to be quite easy to turn into real-time system, and in the end proved to be as easy as Linux or BSD to work with in an embedded application, if not easier +Pinball 2000 is controlled by personal computer located in the head of the gameThe Operating System controlling the PC is called XINA (which stands for It's Not APPLE{Applied Pinball Programming Language Environment} where APPLE was the operating system used for WPC)XINA is unique in it's command structure (ordinary UNIX DOS commands do not work). A total of 99 XINA commands are available to viewalter, and execute the parameters surrounding the game
- It is much easier to interface to the game PC via a keyboard, rather than using the front-door panel (which only has 4 buttons). To hook up a keyboardunlock and remove the backglass panel on the headOn the PC cage plug in a standard IBM PC/AT keyboard into the keyboard port (note that this PC has an old-fashion 5-pin DIN plug rather than the newer 6-pin mini-DIN plug). In most cases, the PC will detect the connection of the keyboard and place the machine into the SHELL mode. Also note that you can capture all printouts / command responses by connecting a PC to the serial port (9600 baud8N, 1) and by having the PC run a terminal program (HyperTerminal). Typing HELP or ? will display the list of commands shown below+
  
- Most XINA commands are common between RFM and SW:E1 gamesthough the XINA level in RFM 1.5 includes communication options and code that are not available in released levels of SW:E1 (it appears that much of the XINA code used on the SW:E1 during the tournament at Pinball Expo 99 was incorporated in XINA 1.17 in RFM 1.3/1.4). In addition there are some game-specific commands in RFM (there were apparently some cool game-specific commands for SW:E1 that were removed for production code build)+XINA is actually an application layer on top of PC-XINUa multithreaded operating system originally created by Douglas Comer and documented in a very well known two volume set of books. (XINU informationpublic.ise.canberra.edu.au/~chrisc/xinu.htmlPC-XINU won over other operating systems for a few reasonsFor example, making Linux into a real-time system with thread support would involve modifying the kernel, which then obligated Williams into releasing the kernel modifications to the public under the GPL. WMS Legal didn't care much for that. Comer's XINU license was much more friendly to the lawyers; namely, we could do anything we wanted to it with no obligations
  
- Many of the XINA commands available in RFM 1.5 are useful for advanced diagnostics or debugging of gameplay only and are of limited general use. During the development of a Pinball 2000 game, many such commands were added by the developers. Not all remain in the release level of code.  +XINU also turned out to be quite easy to turn into a real-time system, and in the end proved to be as easy as Linux or BSD to work with in an embedded application, if not easier. 
- There are three commands that may be of general interest: fb, attack_mars, and scenemgr. Many others are interesting (e.g. pinevents), but these three are likely to be the most commonly used by the average RFM home owner. +  
 +It is much easier to interface to the game PC via a keyboard, rather than using the front-door panel (which only has 4 buttons). To hook up a keyboard, unlock and remove the backglass panel on the head. On the PC cage plug in a standard IBM PC/AT keyboard into the keyboard port (note that this PC has an old-fashion 5-pin DIN plug rather than the newer 6-pin mini-DIN plug). In most cases, the PC will detect the connection of the keyboard and place the machine into the SHELL mode. Also note that you can capture all printouts / command responses by connecting a PC to the serial port (9600 baud, 8, N, 1) and by having the PC run a terminal program (HyperTerminal). Typing HELP or ? will display the list of commands shown below.  
 + 
 +Most XINA commands are common between RFM and SW:E1 games, though the XINA level in RFM 1.5 includes communication options and code that are not available in released levels of SW:E1 (it appears that much of the XINA code used on the SW:E1 during the tournament at Pinball Expo 99 was incorporated in XINA 1.17 in RFM 1.3/1.4). In addition there are some game-specific commands in RFM (there were apparently some cool game-specific commands for SW:E1 that were removed for production code build).  
 + 
 +Many of the XINA commands available in RFM 1.5 are useful for advanced diagnostics or debugging of gameplay only and are of limited general use. During the development of a Pinball 2000 game, many such commands were added by the developers. Not all remain in the release level of code.  
 + 
 +There are three commands that may be of general interest: fb, attack_mars, and scenemgr. Many others are interesting (e.g. pinevents), but these three are likely to be the most commonly used by the average RFM home owner. 
  
 Warning: DO NOT issue commands or alter settings using the XINA command set unless you know what you are doing and understand the implications. Damage can occur by using these commands recklessly.  Warning: DO NOT issue commands or alter settings using the XINA command set unless you know what you are doing and understand the implications. Damage can occur by using these commands recklessly. 
  
- XINA Function Key Commands.+ 
 +XINA Function Key Commands.
    
 <code>F1 - Help  <code>F1 - Help 
Zeile 633: Zeile 638:
    Usage:     Usage: 
    zombie process-id</code>     zombie process-id</code> 
- 
 ====    Networking P2k Games: Adding an Ethernet Card. ==== ====    Networking P2k Games: Adding an Ethernet Card. ====
    
Zeile 664: Zeile 668:
 Press the ENTER key (do it).</code>  Press the ENTER key (do it).</code> 
  
-Replace the PRISM board. +=== Replace the PRISM board. === 
 + 
  
  The default username / password are set to "Pin2000" and "Manager" (respectively, case sensitive), which you may want to change since all RFM machines are initially set to the same values (but who would want to hack into a pinball machine?  The default username / password are set to "Pin2000" and "Manager" (respectively, case sensitive), which you may want to change since all RFM machines are initially set to the same values (but who would want to hack into a pinball machine?
Zeile 680: Zeile 685:
  The web page at http://192.168.1.X ('X' is the number you assigned),  The web page at http://192.168.1.X ('X' is the number you assigned),
  showing high scores.  showing high scores.
 +
 +
 +----
 +
 +
 +pinballz.net-Diskussion: ((http://www.pinballz.net/thread.php?threadid=789))
 +
 +
 +Hiho,
 + 
 + so wie versprochen hier ein kleines update mein wie ich mein RfM über das netz zum server von Jim Askey www.mypinballs.com verlinkt habe.
 + 
 + Jim hat ein system entwickelt welches sich an dem von der pinball expo 1999 anlehnt. d.h. spieler können sich per barcodekarte am jeweiligen RfM anmelden und ein turnierspiel machen. nach abschluss des spiels wird der erspielte score per internet an den server gesendet und in einer öffentlichen liste angezeigt. nach einer software änderung (hab ich noch nicht gemacht - kommt noch) kann auch die hs-list auf dem RfM angezeigt werden. eine ganz lustige geschichte wie ich meine...
 + 
 + um das alles machen zu können sind einige vorbereitungen nötig:
 + 
 + 1) SMC 8415T Ehternetkarte im rechner einbauen (es geht nur diese ethernetkarte keine andere!)
 + eventl. im BIOS onboard sound ausschalten. ich habe gehört das bei manchen rechner es sonst zum irq clash kommt. übrigens Karte hab ich über ebay für ca. 5 euro +v und p bekommen.
 + 
 + 2) Linksys wrt54gl router besorgen (Altelco ca. 60 Euro). diesen mit einer neuen open source firmware flashen (DD-WRT V23 SP2 s. www.dd-wrt.com ). dies notwendig da später einige commands hinzugefügt werden müssen.
 + 
 + soweit so gut...
 + aus meiner sicht wird es dann ein wenig "fummelig". der wrt router muss als (wireless) client an den hauptrouter angeschlossen werden. hierzu gibt es tutorial via Jims HP. wichtig ist hierbei das richtige IP-setup! danach werden die o.g. kommandos in die firewall gespeichert. bei mir war etwas schwierig den RfM in der LAN-liste des WRT zu finden. daher habe ich den DHCP auf maximal 2 ip´s beschränkt - somit wusste ich welche ip der RfM hat. dies lies sich dann auch per ping bestätigen. wichtig ist auch die portfreigabe (port 2069 udp und tcp) auf beiden routern. leider funzte es bei meinen system nicht sofort aber nach umfangreicher hilfe von Jim (er hatte sich zeitweilig auf mein system eingeloggt) klappte es dann gestern erstmalig und ich konnte meinen ersten score in der onlineliste verbuchen. ach ja, natürlich muss auch das game setup unter communications ergänzt werden. auch muss tounament play aktiviert werden.
 + 
 + da ich noch keinen barcode reader installiert habe (s. thread: Suche Barcode Slotreader RS232 f. RfM ) kann ich z. Zt. nur über meiner ip adresse spielen. dies ist etwas lästig da ich jedesmal meine externe ip im profil ändern muss (mein isp vergibt keine statischen ips).
 + 
 + unterm strich alles ziemlich aufwendig - macht aber spaß. ausserdem steckt die ganze sache noch in den "kinderschuhen" wird aber sicherlich wachsen. deswegen um so mehr mitmachen umso mehr spaß.
 + 
 + hier auch nochmals ein großes "thanks Jim" für seine hilfe und den willen ein solche sache auf die beine zu stellen.
 + 
 + Gruß
 + 
 + Hardy
 + P.S. sofern jemand hilfe benötigt und ich als nicht compi futzi helfen kann einfach eine PM oder hier im thread.
 +
 +Gerald:
 + 
 +Mal einige doofe Fragen:
 +
 +Wozu braucht man denn den Linksys-WRT-Router? Warum kann man denn den Flipper nicht direkt an den DSL-Router hängen und dort die Portfreigaben machen? Was heisst, dass 'da später einige commands hinzugefügt werden müssen' und warum?
 + 
 + Weiss das jemand oder kann mir jemand sagen, wo man die technischen Hintergründe nachlesen kann????
 + Danke!
 +
 +hallo gerald,
 + 
 + meistens ist der home router nicht in der nähe des pins. dadurch hast du sozusagen einen wireless anschluss für den RfM.
 + 
 + den wrt braucht man um eine kommandozeile in die firewall zu programmieren (ich glaube linux) und nicht jeder router hat diese schnittstelle. die kommendos beziehen sich auf die packetgroße die angepasst werden muss.
 + 
 + ich kann wir durchaus vorstellen das es eventl. andere router gibt die das auch können - aber welche Confused 
 + 
 + gruß
 + 
 + hardy
 +
 +Hi hardy,
 + 
 + danke für die schnelle Antwort. Das ergibt Sinn.
 + Wireless ist zumindest bei mir kein Problem, da ich Strippen durch ganz Haus gezogen habe. Lediglich am funktionierenden RFM scheitert es im Moment (steht zerlegt in der Ecke).
 + Mit der weit verbreiteten Fritzbox sollte es auch funktionieren. IMHO kann man da zwar die Paketgrösse nicht von Haus aus für jedes angeschlossene Gerät einstellen. Die Fritzboxen basieren jedoch komplett auf Linux und GPL sei dank muss AVM alle Quellcodes offenlegen. Es gibt dafür auch zahlreiche Community-Firmwares und viele Plugins. Außerdem kann man sich eh per Telnet in ne Fritzbox einwählen und dort Befehle absetzen - allein das könnte schon reichen.
 + Weisst du denn, welche Kommandos man für den Linksys braucht???
 +
 +ja, wäre mal interessant ob es mit Fb geht.
 + 
 + der befehl:
 + 
 +<code>iptables -t mangle -I PREROUTING -i br0 -s XXX.XXX.XXX.XXX -j TTL --ttl-set 64</code>
 + 
 + wobei XXX.XXX.XXX.XXX die ip vom RfM sein sollte.
 + 
 + Hardy
 + 
 + p.s. laut dd-wrt läuft die nicht auf der Fb. aber gibt bestimmt was anderes. 
 +
 +Gerald:
 +
 +Hm, soweit ich das verstehe macht der Befehl nur folgendes:
 + Der Router (kann aber auch jeder beliebige Linux-Rechner mit 2 Netzwerkschnittstellen sein) nimmt ein IP-Paket, das vom Flipper kommt und modifiziert den IP-Header und schickt es weiter. 
 + Wenn ein IP-Paket eine maximale Anzahl von von Hops (Stationen) zum Server passiert hat, wird es gelöscht. Das heisst TTL (Time to live). Vermutlich stellt der Flipper nur eine sehr geringe Zahl von TTLs ein, da die Software ja ursprünglich nur fürs LAN gedacht ist; Fürs Internet mit den vielen Zwischenstationen zum Server viel zu wenig. Der Befehl setzt die max. Hops auf 64. Das dürfte auch im hintersten Afghanistan reichen.
 + Müsste man man überlegen, wie man das einfacher verstellen könnte. Am einfachsten natürlich: Firmware des RFM patchen (ist ja nur eine Zahl)
 + 
 + Interessant ist auch, dass die RFMs -meines Wissens nach- nicht per TCP, sondern per UDP mit dem Server kommunizieren. UDP ist ein verbindungsloses Protokoll. Wenn ein Paket verworfen wird (etwa wegen zu gering eingestellter TTL), gibt es keinen weiteren Sendeversuchs dieses Pakets.
 +
 +
 +=== PUB Prism Update Board ===
 +
 +Update via PUB-Karte:
 +
 +{{ :xina:pub_card_user_guide.odt |}}
  
 
Nach oben
xina/p2k.1213717880.txt.gz · Zuletzt geändert: 2024/02/29 13:35 (Externe Bearbeitung)
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0
DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp   Dogecoin Donations Accepted Here    DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp  DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp