uk.co.javagear
Class JavaGearFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by uk.co.javagear.JavaGearFrame
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public final class JavaGearFrame
extends javax.swing.JFrame
implements java.awt.event.ActionListener

JavaGear application user interface.

Version:
18th January 2003
Author:
Copyright (C) 2002-2003 Chris White
See Also:
"JavaGear Final Project Report", Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  boolean cartLoaded
          Has a cartridge been loaded.
private  Controllers controllers
          Controller emulation.
private  javax.swing.JFrame debugger
          Debugger frame.
private  java.lang.String directory
          Directory for ROMs.
private  EmulateLoop emulateLoop
          Main emulation loop.
private  java.awt.Image gameGear
          Game Gear image.
private  KeyFrame keyFrame
          Keyboard configuration frame.
private  Memory mem
          Memory and paging emulation.
private  javax.swing.JRadioButtonMenuItem ntscItem
          Global, as must be selected for Game Gear.
private  Ports port
          Port emulation.
private  Screen screenpanel
          Java screen display.
private  Setup setup
          Pointer to general parameters.
private  boolean showFps
          Show FPS counter.
private  SN76496 sn76496
          SN76596 Emulation.
private  java.awt.Image splash
          Splash image.
private  Vdp vdp
          VDP emulation.
private  VdpDebugFrame vdpDebugFrame
          VDP debugger frame.
private  Z80 z80cpu
          Z80 CPU emulation.
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
JavaGearFrame()
          JavaGearFrame constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent evt)
          Invoked when a menu item is selected.
private static javax.swing.JMenu makeMenu(java.lang.Object parent, java.lang.Object[] items, java.awt.event.ActionListener listener)
          Building Menu Method.
From: Core Java Volume 1 (1999 Sun Microsystems) P 489.
Builds a JMenu with the items and listener specified.
private static javax.swing.JMenuItem makeMenuItem(java.lang.Object item, java.awt.event.ActionListener listener)
          Building Menu Method.
From: Core Java Volume 1 (1999 Sun Microsystems) P 489
Builds a JMenuItem with the listener specified.
 void openCart(java.net.URL filename)
          Open cartridge and start emulation.
 java.net.URL openDialog()
          Invoke Dialog to select cartridge image.
 void paint(java.awt.Graphics g)
          Paint splash screen and Game Gear image.
 void terminate()
          Terminate JavaGear.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

mem

private Memory mem
Memory and paging emulation.


sn76496

private SN76496 sn76496
SN76596 Emulation.


port

private Ports port
Port emulation.


z80cpu

private Z80 z80cpu
Z80 CPU emulation.


controllers

private Controllers controllers
Controller emulation.


emulateLoop

private EmulateLoop emulateLoop
Main emulation loop.


vdp

private Vdp vdp
VDP emulation.


screenpanel

private Screen screenpanel
Java screen display.


showFps

private boolean showFps
Show FPS counter.


keyFrame

private KeyFrame keyFrame
Keyboard configuration frame.


debugger

private javax.swing.JFrame debugger
Debugger frame.


vdpDebugFrame

private VdpDebugFrame vdpDebugFrame
VDP debugger frame.


setup

private Setup setup
Pointer to general parameters.


directory

private java.lang.String directory
Directory for ROMs.


cartLoaded

private boolean cartLoaded
Has a cartridge been loaded.


gameGear

private java.awt.Image gameGear
Game Gear image.


splash

private java.awt.Image splash
Splash image.


ntscItem

private javax.swing.JRadioButtonMenuItem ntscItem
Global, as must be selected for Game Gear.

Constructor Detail

JavaGearFrame

public JavaGearFrame()
JavaGearFrame constructor.

Method Detail

paint

public void paint(java.awt.Graphics g)
Paint splash screen and Game Gear image.

Overrides:
paint in class java.awt.Container
Parameters:
g - The graphics context to use for painting.

openCart

public void openCart(java.net.URL filename)
Open cartridge and start emulation.

Parameters:
filename - URL of cartridge image.

openDialog

public java.net.URL openDialog()
Invoke Dialog to select cartridge image.

Returns:
URL of chosen cartridge

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent evt)
Invoked when a menu item is selected.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
evt - an ActionEvent for one of the JMenuItems.

terminate

public void terminate()
Terminate JavaGear.


makeMenu

private static javax.swing.JMenu makeMenu(java.lang.Object parent,
                                          java.lang.Object[] items,
                                          java.awt.event.ActionListener listener)
Building Menu Method.
From: Core Java Volume 1 (1999 Sun Microsystems) P 489.
Builds a JMenu with the items and listener specified. The parent may be a String or JMenu. If it is a String, then the JMenu is built for you, otherwise the instance passed is used. Similarly, the items array may contain JMenuItems or Strings. null items are replaced by JSeparators.

Parameters:
parent - either an instance of String or JMenu.
items - an array of Strings or JMenuItems.
listener - an ActionListener to register in the JMenuItems. May be null.
Returns:
a JMenu that contains all the items specified.

makeMenuItem

private static javax.swing.JMenuItem makeMenuItem(java.lang.Object item,
                                                  java.awt.event.ActionListener listener)
Building Menu Method.
From: Core Java Volume 1 (1999 Sun Microsystems) P 489
Builds a JMenuItem with the listener specified. The item may be a String or JMenuItem. If it is a String, then the JMenuItem is built for you, otherwise the instance passed is used.

Parameters:
item - either an instance of String or JMenu.
listener - the ActionListener to add to the JMenuItem. May be null.
Returns:
a JMenuItem with the specified ActionListener.


Copyright © 2007 JavaGear. All Rights Reserved.