<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://wikiti.brandonw.net/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wikiti.brandonw.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Buckeye+Dude</id>
		<title>WikiTI - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wikiti.brandonw.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Buckeye+Dude"/>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Special:Contributions/Buckeye_Dude"/>
		<updated>2026-04-05T15:35:26Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.23.5</generator>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:BCALLs:42B5</id>
		<title>83Plus:BCALLs:42B5</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:BCALLs:42B5"/>
				<updated>2014-04-05T13:42:45Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Created page with 'LCDSetXAutoInc LCDSetXAutoInc 42B5 - LCDSetXAutoInc == Synopsi…'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:BCALLs:By Name|LCDSetXAutoInc]]&lt;br /&gt;
[[Category:83Plus:BCALLs:By Name:Display|LCDSetXAutoInc]]&lt;br /&gt;
[[Category:83Plus:BCALLs:By Address|42B5 - LCDSetXAutoInc]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Unofficial Name:''' LCDSetXAutoInc&lt;br /&gt;
&lt;br /&gt;
'''BCALL Address:''' 42B5&lt;br /&gt;
&lt;br /&gt;
LCD cursor is set to auto increment along the X axis.&lt;br /&gt;
&lt;br /&gt;
=== Inputs ===&lt;br /&gt;
* None&lt;br /&gt;
&lt;br /&gt;
=== Outputs ===&lt;br /&gt;
* LCD cursor mode is changed.&lt;br /&gt;
&lt;br /&gt;
=== Registers Destroyed ===&lt;br /&gt;
* None&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
This checks and makes sure its safe to write to the LCD.&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:BCALLs:42B2</id>
		<title>83Plus:BCALLs:42B2</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:BCALLs:42B2"/>
				<updated>2014-04-05T13:41:51Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Created page with 'LCDSetYAutoInc LCDSetYAutoInc 42B2 - LCDSetYAutoInc == Synopsi…'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:BCALLs:By Name|LCDSetYAutoInc]]&lt;br /&gt;
[[Category:83Plus:BCALLs:By Name:Display|LCDSetYAutoInc]]&lt;br /&gt;
[[Category:83Plus:BCALLs:By Address|42B2 - LCDSetYAutoInc]]&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Unofficial Name:''' LCDSetYAutoInc&lt;br /&gt;
&lt;br /&gt;
'''BCALL Address:''' 42B2&lt;br /&gt;
&lt;br /&gt;
LCD cursor is set to auto increment along the Y axis.&lt;br /&gt;
&lt;br /&gt;
=== Inputs ===&lt;br /&gt;
* None&lt;br /&gt;
&lt;br /&gt;
=== Outputs ===&lt;br /&gt;
* LCD cursor mode is changed.&lt;br /&gt;
&lt;br /&gt;
=== Registers Destroyed ===&lt;br /&gt;
* None&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
This checks and makes sure its safe to write to the LCD.&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Ports:28</id>
		<title>83Plus:Ports:28</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Ports:28"/>
				<updated>2011-06-29T06:34:14Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:Ports:By Address|28 - Block Memory Mapping 8000h]]&lt;br /&gt;
[[Category:83Plus:Ports:By Name|Block Memory Mapping 8000h]]&lt;br /&gt;
{{SE-Only Port|00}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 28h&lt;br /&gt;
&lt;br /&gt;
'''Function:''' Block Memory Mapping 8000h&lt;br /&gt;
&lt;br /&gt;
By an order of 64 bytes per block, this port can re-map data from RAM page 1 to the memory addresses 8000h - BFFFh without regard to the contents of port 7. This port does not map the entire page but only 64 bytes times the value in this port. It maps it starting from low memory (8000h) to high (BFFFh).&lt;br /&gt;
&lt;br /&gt;
=== Read Values ===&lt;br /&gt;
* This port reads the last value written to it.&lt;br /&gt;
&lt;br /&gt;
=== Write Values ===&lt;br /&gt;
* [00h - FFh]: The value times 64 equals the number of bytes that get re-mapped starting from 8000h. So a vaule of 18h would re-map data in 8000h - 85FFh.&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
I can image this port having slightly more purpose than port 27, however it is still unusual.&lt;br /&gt;
&lt;br /&gt;
calc84maniac says: This port seems to have no effect whatsoever during memory map mode 1, but I may be wrong about that.&lt;br /&gt;
&lt;br /&gt;
== Credits and Contributions ==&lt;br /&gt;
* '''James Montelongo'''&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[83Plus:Ports:27|Port 27]]&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=83Plus:Ports:27</id>
		<title>83Plus:Ports:27</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=83Plus:Ports:27"/>
				<updated>2011-06-29T06:33:58Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:83Plus:Ports:By Address|27 - Block Memory Mapping C000h]][[Category:83Plus:Ports:By Name|Block Memory Mapping C000h]]&lt;br /&gt;
{{SE-Only Port|07}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
'''Port Number:''' 27h&lt;br /&gt;
&lt;br /&gt;
'''Function:''' Block Memory Mapping C000h&lt;br /&gt;
&lt;br /&gt;
By an order of 64 bytes per block, this port can re-map data from ram page 0 to reflect the memory C000h - FFFFh addresses without regard to the contents of port 5. This port does not map the entire page, but only 64 bytes times the value in this port. It maps it starting from high memory (FFFFh) to low.&lt;br /&gt;
&lt;br /&gt;
=== Read Values ===&lt;br /&gt;
* This port reads the last value written to it.&lt;br /&gt;
&lt;br /&gt;
=== Write Values ===&lt;br /&gt;
* [00h - 12h]: The value times 64 equals the number of bytes that get re-mapped starting from FFFFh. So a value of 12h would re-map data in FB80h - FFFFh.&lt;br /&gt;
&lt;br /&gt;
* [13h - FFh]: Any value 13h or greater will only re-map data in FB64h - FFFFh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
I have no clue why TI thinks it may be necessary to make 1180 bytes from ram page 0 at FB64h, but who knows it could be useful. This also bares more than resemblance to port 28h so I guess they were meant to be used together.&lt;br /&gt;
&lt;br /&gt;
== Credits and Contributions ==&lt;br /&gt;
* '''James Montelongo'''&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[83Plus:Ports:28|Port 28]]&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Z80_Routines:Optimized:reverseA</id>
		<title>Z80 Routines:Optimized:reverseA</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Z80_Routines:Optimized:reverseA"/>
				<updated>2011-05-22T05:11:07Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Commented the black magiks&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Z80 Routines:Optimized|ReverseA]]&lt;br /&gt;
[[Category:Z80 Routines:Graphic|ReverseA]]&lt;br /&gt;
[[Category:Z80 Routines|ReverseA]]&lt;br /&gt;
This is a faster/smaller (and also obfuscated) replacement for the normal reverse a.&lt;br /&gt;
&lt;br /&gt;
Typical routine:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;;input: b&lt;br /&gt;
;output: a&lt;br /&gt;
;25 bytes, 96 clock cycles&lt;br /&gt;
typicalreversea:&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	rr b&lt;br /&gt;
	rla&lt;br /&gt;
	ret&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Better routine:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;;- Reverse a&lt;br /&gt;
;input:	byte in A&lt;br /&gt;
;output: Reversed byte in A&lt;br /&gt;
;destroys B&lt;br /&gt;
;18 bytes and 66 clock cycles&lt;br /&gt;
;author: calcmaniac84&lt;br /&gt;
ReverseA:&lt;br /&gt;
	ld b,a 		;b=ABCDEFGH&lt;br /&gt;
	rrca 		;a=HABCDEFG&lt;br /&gt;
	rrca 		;a=GHABCDEF&lt;br /&gt;
	xor b \ and %10101010 \ xor b 	;a=GBADCFEH&lt;br /&gt;
	ld b,a 		;b=GBADCFEH&lt;br /&gt;
	rrca 		;a=HGBADCFE&lt;br /&gt;
	rrca 		;a=EHGBADCF&lt;br /&gt;
	rrca 		;a=FEHGBADC&lt;br /&gt;
	rrca 		;a=CFEHGBAD&lt;br /&gt;
	xor b \ and %01100110 \ xor b 	;a=GFEDCBAH&lt;br /&gt;
	rrca 		;a=HGFEDCBA&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Category:Emulators</id>
		<title>Category:Emulators</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Category:Emulators"/>
				<updated>2010-12-30T01:07:53Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:PC Software|Emulators]]&lt;br /&gt;
&lt;br /&gt;
A software emulator allows computer programs to run on a platform (computer architecture and/or operating system) other than the one for which they were originally written. Unlike a simulation, which only attempts to reproduce a program's behaviour, an emulation attempts to precisely model the state of the device being emulated.&lt;br /&gt;
&lt;br /&gt;
[http://www.wikipedia.org Source: wikipedia]&lt;br /&gt;
&lt;br /&gt;
==Advantages==&lt;br /&gt;
Why using an emulator instead of the ''real'' calculator? There are several reasons for this:&lt;br /&gt;
* When crashing, you can recover the emulator with the ease of one/two-clicks.&lt;br /&gt;
* Sending files is a matter of drag 'n' dropping the file.&lt;br /&gt;
* Test on different calcs.&lt;br /&gt;
* Access to powerful debugging tools.&lt;br /&gt;
* Ability to take screen-shots.&lt;br /&gt;
&lt;br /&gt;
==TI Emulators==&lt;br /&gt;
There are four major emulators available for the z80 series of calcs.&lt;br /&gt;
* [[Emulators:PindurTI|PindurTI]] (also known as PTI)&lt;br /&gt;
* [[Emulators:Virtual TI|Virtual TI]] (also known as VTI)&lt;br /&gt;
* [[Emulators:TilEm|TilEm]]&lt;br /&gt;
* [[Emulators:TI Flash Debugger|TI Flash Debugger]]&lt;br /&gt;
* [[Emulators:Wabbitemu|Wabbitemu]]&lt;br /&gt;
&lt;br /&gt;
[[Emulators:PindurTI|PindurTI]] is one of the latest additions to emulators and has the most accurate emulation of all emulators available. However, its author, Patai Gergley has discontinued it due to lack of time, and the emergence of [[Emulators:Wabbitemu|Wabbitemu]]. Wabbitemu is the latest upcoming z80 emulator, emulating almost all z80 calcs.  It is available for Windows and Mac, with a Linux version in progress. Linux users can use [[Emulators:TilEm|TilEm]]. [[Emulators:Virtual TI|Virtual TI]] is the oldest and most used emulator at the moment. It has however a lot problems because of incorrect emulation. &lt;br /&gt;
&lt;br /&gt;
The major emulator for the m68k series is [[Emulators:TiEmu|TiEmu]], which supports all the 68k calcs.&lt;br /&gt;
&lt;br /&gt;
==External info==&lt;br /&gt;
[http://www.ticalc.org/programming/emulators/software.html ticalc.org Emulators list]&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Emulators:Wabbitemu</id>
		<title>Emulators:Wabbitemu</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Emulators:Wabbitemu"/>
				<updated>2010-12-30T01:05:44Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Updated links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Emulators]]&lt;br /&gt;
'''Wabbitemu''' &lt;br /&gt;
&lt;br /&gt;
Wabbitemu is the most complete Z80 TI emulator to date, although it is the most recent of the TI Z80 emulators. It emulates the TI-73, TI-82, TI-83, TI-83 Plus, TI-83 Plus Silver Edition, TI-84 Plus, TI-84 Plus Silver Edition, TI-85, and TI-86. It was initially developed by Spencer Putt and James Montelongo and development by Chris Shappell and Spencer is currently active. More documentation can be found on the official website, http://wabbit.codeplex.com &lt;br /&gt;
&lt;br /&gt;
Forum : http://www.revsoft.org/phpBB3/viewforum.php?f=32&lt;br /&gt;
&lt;br /&gt;
Source Code : http://wabbit.svn.codeplex.com/Wabbitstudio/Source/Wabbitemu&lt;br /&gt;
&lt;br /&gt;
Current stable version (December 2010) : http://www.wabbit.codeplex.com (Windows and Mac)&lt;br /&gt;
&lt;br /&gt;
Linux Test Version: http://code.google.com/p/wxwabbitemu/&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
* Send and receive files to and from the emulated calculator via drag and drop&lt;br /&gt;
* Run up to 8 running calculators at once&lt;br /&gt;
* Connect virtual calculators to each other&lt;br /&gt;
* Click buttons on beautifully rendered skins for each calculator model&lt;br /&gt;
* Use built-in screenshot recording to capture the display&lt;br /&gt;
* Grayscale support for 2-12 levels of gray&lt;br /&gt;
* Configurable options for all aspects of the emulator&lt;br /&gt;
* Copy output from TIOS&lt;br /&gt;
* Instantly save and restore compressed states of the calculator&lt;br /&gt;
* View the variables currently on each calculator&lt;br /&gt;
* Adjust the speed of the calculator from 1%-1600%&lt;br /&gt;
* Listen to sound output from the linkport&lt;br /&gt;
* A Graphical Debugger specifically for assembly programmers&lt;br /&gt;
** Place execution and data breakpoints&lt;br /&gt;
** View and change any part of the core cpu (registers, &lt;br /&gt;
** View up to five points in memory simultaneously&lt;br /&gt;
** Stack viewer for easy monitoring of the hardware stack&lt;br /&gt;
** Load label files from SPASM for easy debugging&lt;br /&gt;
** Rewinding up to 5 seconds of instructions&lt;br /&gt;
&lt;br /&gt;
== Keys == &lt;br /&gt;
Left Shift = 2nd&lt;br /&gt;
&lt;br /&gt;
Right Shift = Clear &lt;br /&gt;
&lt;br /&gt;
Ctrl = Alpha &lt;br /&gt;
&lt;br /&gt;
Esc = Mode &lt;br /&gt;
&lt;br /&gt;
F1 = Y=&lt;br /&gt;
&lt;br /&gt;
F2 = Window&lt;br /&gt;
&lt;br /&gt;
F3 = Zoom&lt;br /&gt;
&lt;br /&gt;
F4 = Trace&lt;br /&gt;
&lt;br /&gt;
F5 = Graph &lt;br /&gt;
&lt;br /&gt;
F7 = Variable Tree &lt;br /&gt;
&lt;br /&gt;
F8 = Toggle 400% speed&lt;br /&gt;
&lt;br /&gt;
F10 = Load File &lt;br /&gt;
&lt;br /&gt;
F11 = Debugger&lt;br /&gt;
&lt;br /&gt;
F12 = On  &lt;br /&gt;
&lt;br /&gt;
Space = 0 &lt;br /&gt;
&lt;br /&gt;
Insert = VARS &lt;br /&gt;
&lt;br /&gt;
Home = Math &lt;br /&gt;
&lt;br /&gt;
Page Up = Apps &lt;br /&gt;
&lt;br /&gt;
Page Down = Programs &lt;br /&gt;
&lt;br /&gt;
End = Stats &lt;br /&gt;
&lt;br /&gt;
Backspace = Save screenshot &lt;br /&gt;
&lt;br /&gt;
+/= = X,T,theta,n &lt;br /&gt;
&lt;br /&gt;
-/_ = negative &lt;br /&gt;
&lt;br /&gt;
//? = negative &lt;br /&gt;
&lt;br /&gt;
Numpad 1 = Stats &lt;br /&gt;
&lt;br /&gt;
Numpad 2 = Down &lt;br /&gt;
&lt;br /&gt;
Numpad 3 = Programs &lt;br /&gt;
&lt;br /&gt;
Numpad 4 = Right &lt;br /&gt;
&lt;br /&gt;
Numpad 6 = Left &lt;br /&gt;
&lt;br /&gt;
Numpad 7 = Math &lt;br /&gt;
&lt;br /&gt;
Numpad 8 = Up &lt;br /&gt;
&lt;br /&gt;
Numpad 9 = Apps &lt;br /&gt;
&lt;br /&gt;
Numpad 0 = Vars&lt;br /&gt;
&lt;br /&gt;
Numpad + = +&lt;br /&gt;
&lt;br /&gt;
Numpad – = –&lt;br /&gt;
&lt;br /&gt;
Numpad * = *&lt;br /&gt;
&lt;br /&gt;
Numpad / = / &lt;br /&gt;
&lt;br /&gt;
A = Math&lt;br /&gt;
&lt;br /&gt;
B = Apps&lt;br /&gt;
&lt;br /&gt;
C = Programs&lt;br /&gt;
&lt;br /&gt;
D = x^-1&lt;br /&gt;
&lt;br /&gt;
E = sin(&lt;br /&gt;
&lt;br /&gt;
F = cos(&lt;br /&gt;
&lt;br /&gt;
G = tan(&lt;br /&gt;
&lt;br /&gt;
H = ^&lt;br /&gt;
&lt;br /&gt;
I = x^2&lt;br /&gt;
&lt;br /&gt;
J = ,&lt;br /&gt;
&lt;br /&gt;
K = (&lt;br /&gt;
&lt;br /&gt;
L = )&lt;br /&gt;
&lt;br /&gt;
M = /&lt;br /&gt;
&lt;br /&gt;
N = log(&lt;br /&gt;
&lt;br /&gt;
O = 7&lt;br /&gt;
&lt;br /&gt;
P = 8&lt;br /&gt;
&lt;br /&gt;
Q = 9&lt;br /&gt;
&lt;br /&gt;
R = *&lt;br /&gt;
&lt;br /&gt;
S = ln(&lt;br /&gt;
&lt;br /&gt;
T = 4&lt;br /&gt;
&lt;br /&gt;
U = 5&lt;br /&gt;
&lt;br /&gt;
V = 6&lt;br /&gt;
&lt;br /&gt;
W = –&lt;br /&gt;
&lt;br /&gt;
X = sto&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y = 1&lt;br /&gt;
&lt;br /&gt;
Z = 2&lt;br /&gt;
&lt;br /&gt;
0 = 0&lt;br /&gt;
&lt;br /&gt;
1 = 1&lt;br /&gt;
&lt;br /&gt;
2 = 2&lt;br /&gt;
&lt;br /&gt;
3 = 3&lt;br /&gt;
&lt;br /&gt;
4 = 4&lt;br /&gt;
&lt;br /&gt;
5 = 5&lt;br /&gt;
&lt;br /&gt;
6 = 6&lt;br /&gt;
&lt;br /&gt;
7 = 7&lt;br /&gt;
&lt;br /&gt;
8 = 8&lt;br /&gt;
&lt;br /&gt;
9 = 9&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=IDEs</id>
		<title>IDEs</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=IDEs"/>
				<updated>2010-10-21T16:50:53Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Added links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Stub}}&lt;br /&gt;
&lt;br /&gt;
== Z80 ==&lt;br /&gt;
* [http://www.ticalc.org/archives/files/fileinfo/158/15892.html Assembly Studio 8x]&lt;br /&gt;
* [http://www.benryves.com/products/latenite Latenite]&lt;br /&gt;
* z80 ASM IDE&lt;br /&gt;
* [http://wabbit.codeplex.com/releases/view/45275 WabbitCode]&lt;br /&gt;
== M68K ==&lt;br /&gt;
* none&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Emulators:Wabbitemu</id>
		<title>Emulators:Wabbitemu</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Emulators:Wabbitemu"/>
				<updated>2010-09-19T08:28:34Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Emulators]]&lt;br /&gt;
'''Wabbitemu''' &lt;br /&gt;
&lt;br /&gt;
Wabbitemu is the most complete Z80 TI emulator to date, although it is the most recent of the TI Z80 emulators. It emulates the TI-73, TI-82, TI-83, TI-83 Plus, TI-83 Plus Silver Edition, TI-84 Plus, TI-84 Plus Silver Edition, TI-85, and TI-86. It was initially developed by Spencer Putt and James Montelongo and development by Chris Shappell and Spencer is currently active. More documentation can be found on the official website, http://wabbit.codeplex.com &lt;br /&gt;
&lt;br /&gt;
Forum : http://www.revsoft.org/phpBB2/viewforum.php?f=32&lt;br /&gt;
&lt;br /&gt;
Development version : http://wabbit.svn.codeplex.com/Wabbitstudio/Source/Wabbitemu&lt;br /&gt;
&lt;br /&gt;
Current stable version (September 2010) : http://www.wabbit.codeplex.com (Windows)&lt;br /&gt;
&lt;br /&gt;
Latest version: http://group.revsoft.org/wabbitemu.exe (Windows)&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
* Send and receive files to and from the emulated calculator via drag and drop&lt;br /&gt;
* Run up to 8 running calculators at once&lt;br /&gt;
* Connect virtual calculators to each other&lt;br /&gt;
* Click buttons on beautifully rendered skins for each calculator model&lt;br /&gt;
* Use built-in screenshot recording to capture the display&lt;br /&gt;
* Grayscale support for 2-12 levels of gray&lt;br /&gt;
* Configurable options for all aspects of the emulator&lt;br /&gt;
* Copy output from TIOS&lt;br /&gt;
* Instantly save and restore compressed states of the calculator&lt;br /&gt;
* View the variables currently on each calculator&lt;br /&gt;
* Adjust the speed of the calculator from 1%-1600%&lt;br /&gt;
* Listen to sound output from the linkport&lt;br /&gt;
* A Graphical Debugger specifically for assembly programmers&lt;br /&gt;
** Place execution and data breakpoints&lt;br /&gt;
** View and change any part of the core cpu (registers, &lt;br /&gt;
** View up to five points in memory simultaneously&lt;br /&gt;
** Stack viewer for easy monitoring of the hardware stack&lt;br /&gt;
** Load label files from SPASM for easy debugging&lt;br /&gt;
** Rewinding up to 5 seconds of instructions&lt;br /&gt;
&lt;br /&gt;
== Keys == &lt;br /&gt;
Left Shift = 2nd&lt;br /&gt;
&lt;br /&gt;
Right Shift = Clear &lt;br /&gt;
&lt;br /&gt;
Ctrl = Alpha &lt;br /&gt;
&lt;br /&gt;
Esc = Mode &lt;br /&gt;
&lt;br /&gt;
F1 = Y=&lt;br /&gt;
&lt;br /&gt;
F2 = Window&lt;br /&gt;
&lt;br /&gt;
F3 = Zoom&lt;br /&gt;
&lt;br /&gt;
F4 = Trace&lt;br /&gt;
&lt;br /&gt;
F5 = Graph &lt;br /&gt;
&lt;br /&gt;
F7 = Variable Tree &lt;br /&gt;
&lt;br /&gt;
F8 = Toggle 400% speed&lt;br /&gt;
&lt;br /&gt;
F10 = Load File &lt;br /&gt;
&lt;br /&gt;
F11 = Debugger&lt;br /&gt;
&lt;br /&gt;
F12 = On  &lt;br /&gt;
&lt;br /&gt;
Space = 0 &lt;br /&gt;
&lt;br /&gt;
Insert = VARS &lt;br /&gt;
&lt;br /&gt;
Home = Math &lt;br /&gt;
&lt;br /&gt;
Page Up = Apps &lt;br /&gt;
&lt;br /&gt;
Page Down = Programs &lt;br /&gt;
&lt;br /&gt;
End = Stats &lt;br /&gt;
&lt;br /&gt;
Backspace = Save screenshot &lt;br /&gt;
&lt;br /&gt;
+/= = X,T,theta,n &lt;br /&gt;
&lt;br /&gt;
-/_ = negative &lt;br /&gt;
&lt;br /&gt;
//? = negative &lt;br /&gt;
&lt;br /&gt;
Numpad 1 = Stats &lt;br /&gt;
&lt;br /&gt;
Numpad 2 = Down &lt;br /&gt;
&lt;br /&gt;
Numpad 3 = Programs &lt;br /&gt;
&lt;br /&gt;
Numpad 4 = Right &lt;br /&gt;
&lt;br /&gt;
Numpad 6 = Left &lt;br /&gt;
&lt;br /&gt;
Numpad 7 = Math &lt;br /&gt;
&lt;br /&gt;
Numpad 8 = Up &lt;br /&gt;
&lt;br /&gt;
Numpad 9 = Apps &lt;br /&gt;
&lt;br /&gt;
Numpad 0 = Vars&lt;br /&gt;
&lt;br /&gt;
Numpad + = +&lt;br /&gt;
&lt;br /&gt;
Numpad – = –&lt;br /&gt;
&lt;br /&gt;
Numpad * = *&lt;br /&gt;
&lt;br /&gt;
Numpad / = / &lt;br /&gt;
&lt;br /&gt;
A = Math&lt;br /&gt;
&lt;br /&gt;
B = Apps&lt;br /&gt;
&lt;br /&gt;
C = Programs&lt;br /&gt;
&lt;br /&gt;
D = x^-1&lt;br /&gt;
&lt;br /&gt;
E = sin(&lt;br /&gt;
&lt;br /&gt;
F = cos(&lt;br /&gt;
&lt;br /&gt;
G = tan(&lt;br /&gt;
&lt;br /&gt;
H = ^&lt;br /&gt;
&lt;br /&gt;
I = x^2&lt;br /&gt;
&lt;br /&gt;
J = ,&lt;br /&gt;
&lt;br /&gt;
K = (&lt;br /&gt;
&lt;br /&gt;
L = )&lt;br /&gt;
&lt;br /&gt;
M = /&lt;br /&gt;
&lt;br /&gt;
N = log(&lt;br /&gt;
&lt;br /&gt;
O = 7&lt;br /&gt;
&lt;br /&gt;
P = 8&lt;br /&gt;
&lt;br /&gt;
Q = 9&lt;br /&gt;
&lt;br /&gt;
R = *&lt;br /&gt;
&lt;br /&gt;
S = ln(&lt;br /&gt;
&lt;br /&gt;
T = 4&lt;br /&gt;
&lt;br /&gt;
U = 5&lt;br /&gt;
&lt;br /&gt;
V = 6&lt;br /&gt;
&lt;br /&gt;
W = –&lt;br /&gt;
&lt;br /&gt;
X = sto&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y = 1&lt;br /&gt;
&lt;br /&gt;
Z = 2&lt;br /&gt;
&lt;br /&gt;
0 = 0&lt;br /&gt;
&lt;br /&gt;
1 = 1&lt;br /&gt;
&lt;br /&gt;
2 = 2&lt;br /&gt;
&lt;br /&gt;
3 = 3&lt;br /&gt;
&lt;br /&gt;
4 = 4&lt;br /&gt;
&lt;br /&gt;
5 = 5&lt;br /&gt;
&lt;br /&gt;
6 = 6&lt;br /&gt;
&lt;br /&gt;
7 = 7&lt;br /&gt;
&lt;br /&gt;
8 = 8&lt;br /&gt;
&lt;br /&gt;
9 = 9&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Emulators:Wabbitemu</id>
		<title>Emulators:Wabbitemu</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Emulators:Wabbitemu"/>
				<updated>2010-09-19T08:19:43Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Emulators]]&lt;br /&gt;
{{stub}}&lt;br /&gt;
'''Wabbitemu''' &lt;br /&gt;
&lt;br /&gt;
Forum : http://www.revsoft.org/phpBB2/viewforum.php?f=32&lt;br /&gt;
&lt;br /&gt;
Development version : http://wabbit.svn.codeplex.com/Wabbitstudio/Source/Wabbitemu&lt;br /&gt;
&lt;br /&gt;
Current stable version (September 2010) : http://www.wabbit.codeplex.com (Windows)&lt;br /&gt;
&lt;br /&gt;
Latest version: http://group.revsoft.org/wabbitemu.exe (Windows)&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
* Send and receive files to and from the emulated calculator via drag and drop&lt;br /&gt;
* Run up to 8 running calculators at once&lt;br /&gt;
* Connect virtual calculators to each other&lt;br /&gt;
* Click buttons on beautifully rendered skins for each calculator model&lt;br /&gt;
* Use built-in screenshot recording to capture the display&lt;br /&gt;
* Grayscale support for 2-12 levels of gray&lt;br /&gt;
* Configurable options for all aspects of the emulator&lt;br /&gt;
* Copy output from TIOS&lt;br /&gt;
* Instantly save and restore compressed states of the calculator&lt;br /&gt;
* View the variables currently on each calculator&lt;br /&gt;
* Adjust the speed of the calculator from 1%-1600%&lt;br /&gt;
* Listen to sound output from the linkport&lt;br /&gt;
* A Graphical Debugger specifically for assembly programmers&lt;br /&gt;
** Place execution and data breakpoints&lt;br /&gt;
** View and change any part of the core cpu (registers, &lt;br /&gt;
** View up to five points in memory simultaneously&lt;br /&gt;
** Stack viewer for easy monitoring of the hardware stack&lt;br /&gt;
** Load label files from SPASM for easy debugging&lt;br /&gt;
** Rewinding up to 5 seconds of instructions&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
== Keys == &lt;br /&gt;
Left Shift = 2nd&lt;br /&gt;
&lt;br /&gt;
Right Shift = Clear &lt;br /&gt;
&lt;br /&gt;
Ctrl = Alpha &lt;br /&gt;
&lt;br /&gt;
Esc = Mode &lt;br /&gt;
&lt;br /&gt;
F1 = Y=&lt;br /&gt;
&lt;br /&gt;
F2 = Window&lt;br /&gt;
&lt;br /&gt;
F3 = Zoom&lt;br /&gt;
&lt;br /&gt;
F4 = Trace&lt;br /&gt;
&lt;br /&gt;
F5 = Graph &lt;br /&gt;
&lt;br /&gt;
F7 = Variable Tree &lt;br /&gt;
&lt;br /&gt;
F8 = Toggle 400% speed&lt;br /&gt;
&lt;br /&gt;
F10 = Load File &lt;br /&gt;
&lt;br /&gt;
F11 = Debugger&lt;br /&gt;
&lt;br /&gt;
F12 = On  &lt;br /&gt;
&lt;br /&gt;
Space = 0 &lt;br /&gt;
&lt;br /&gt;
Insert = VARS &lt;br /&gt;
&lt;br /&gt;
Home = Math &lt;br /&gt;
&lt;br /&gt;
Page Up = Apps &lt;br /&gt;
&lt;br /&gt;
Page Down = Programs &lt;br /&gt;
&lt;br /&gt;
End = Stats &lt;br /&gt;
&lt;br /&gt;
Backspace = Save screenshot &lt;br /&gt;
&lt;br /&gt;
+/= = X,T,theta,n &lt;br /&gt;
&lt;br /&gt;
-/_ = negative &lt;br /&gt;
&lt;br /&gt;
//? = negative &lt;br /&gt;
&lt;br /&gt;
Numpad 1 = Stats &lt;br /&gt;
&lt;br /&gt;
Numpad 2 = Down &lt;br /&gt;
&lt;br /&gt;
Numpad 3 = Programs &lt;br /&gt;
&lt;br /&gt;
Numpad 4 = Right &lt;br /&gt;
&lt;br /&gt;
Numpad 6 = Left &lt;br /&gt;
&lt;br /&gt;
Numpad 7 = Math &lt;br /&gt;
&lt;br /&gt;
Numpad 8 = Up &lt;br /&gt;
&lt;br /&gt;
Numpad 9 = Apps &lt;br /&gt;
&lt;br /&gt;
Numpad 0 = Vars&lt;br /&gt;
&lt;br /&gt;
Numpad + = +&lt;br /&gt;
&lt;br /&gt;
Numpad – = –&lt;br /&gt;
&lt;br /&gt;
Numpad * = *&lt;br /&gt;
&lt;br /&gt;
Numpad / = / &lt;br /&gt;
&lt;br /&gt;
A = Math&lt;br /&gt;
&lt;br /&gt;
B = Apps&lt;br /&gt;
&lt;br /&gt;
C = Programs&lt;br /&gt;
&lt;br /&gt;
D = x^-1&lt;br /&gt;
&lt;br /&gt;
E = sin(&lt;br /&gt;
&lt;br /&gt;
F = cos(&lt;br /&gt;
&lt;br /&gt;
G = tan(&lt;br /&gt;
&lt;br /&gt;
H = ^&lt;br /&gt;
&lt;br /&gt;
I = x^2&lt;br /&gt;
&lt;br /&gt;
J = ,&lt;br /&gt;
&lt;br /&gt;
K = (&lt;br /&gt;
&lt;br /&gt;
L = )&lt;br /&gt;
&lt;br /&gt;
M = /&lt;br /&gt;
&lt;br /&gt;
N = log(&lt;br /&gt;
&lt;br /&gt;
O = 7&lt;br /&gt;
&lt;br /&gt;
P = 8&lt;br /&gt;
&lt;br /&gt;
Q = 9&lt;br /&gt;
&lt;br /&gt;
R = *&lt;br /&gt;
&lt;br /&gt;
S = ln(&lt;br /&gt;
&lt;br /&gt;
T = 4&lt;br /&gt;
&lt;br /&gt;
U = 5&lt;br /&gt;
&lt;br /&gt;
V = 6&lt;br /&gt;
&lt;br /&gt;
W = –&lt;br /&gt;
&lt;br /&gt;
X = sto&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y = 1&lt;br /&gt;
&lt;br /&gt;
Z = 2&lt;br /&gt;
&lt;br /&gt;
0 = 0&lt;br /&gt;
&lt;br /&gt;
1 = 1&lt;br /&gt;
&lt;br /&gt;
2 = 2&lt;br /&gt;
&lt;br /&gt;
3 = 3&lt;br /&gt;
&lt;br /&gt;
4 = 4&lt;br /&gt;
&lt;br /&gt;
5 = 5&lt;br /&gt;
&lt;br /&gt;
6 = 6&lt;br /&gt;
&lt;br /&gt;
7 = 7&lt;br /&gt;
&lt;br /&gt;
8 = 8&lt;br /&gt;
&lt;br /&gt;
9 = 9&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Beginners</id>
		<title>Beginners</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Beginners"/>
				<updated>2009-01-03T01:32:38Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Starting with assembly programming can be quite a pain. You need to find yourself an assembler, preferably a nice emulator, and lots of documentation. While this wiki provides you with a lot of documentation, and many [[TI websites|websites]] and [[:Category:Teams|teams]] can provide you with links to good tutorials, people keep asking the community how to get started. I hope this will answer their questions once and for all :)&lt;br /&gt;
&lt;br /&gt;
== Emulating ==&lt;br /&gt;
&lt;br /&gt;
=== Getting a ROM dump ===&lt;br /&gt;
&lt;br /&gt;
Getting a ROM dump is the essential first step of running a calculator emulator. Because the calculator operating system is intellectual property of Texas Instruments, it is illegal to distribute ROM images, but you can extract your own ROM image from your own calculator under &amp;quot;Fair use&amp;quot; regulations.&lt;br /&gt;
&lt;br /&gt;
To download your own ROM image from your calculator to your PC you need some software. Your options are:&lt;br /&gt;
* [http://www.ticalc.org/archives/files/fileinfo/373/37341.html Rom8x]&lt;br /&gt;
* Uhm... need to find some more ;)&lt;br /&gt;
&lt;br /&gt;
Ticalc.org has an excellent howto page on getting a ROM image [http://www.ticalc.org/programming/emulators/romdump.html here]. Or, you could do a Google search on something like TI83.rom, and see what comes up.&lt;br /&gt;
&lt;br /&gt;
Of course, if you want to develop an operating system yourself (if you're working on [[Vera]] for example) you don't need a ROM image.&lt;br /&gt;
&lt;br /&gt;
=== Choice of Emulator ===&lt;br /&gt;
&lt;br /&gt;
The second step is selecting an [[:Category:Emulators|emulator]] that suits you:&lt;br /&gt;
&lt;br /&gt;
* [[:Emulators:Virtual TI|Virtual TI]] - Long time favourite, but mostly because it was the only one&lt;br /&gt;
* [[:Emulators:PindurTI|PindurTI]] - Very basic emulator with very good hardware emulation and animated screenshotting&lt;br /&gt;
* [[:Emulators:Wabbitemu|WabbitEmu]] - The newest breed, with a very nice GUI and a port to MAC, Linux is on the way&lt;br /&gt;
&lt;br /&gt;
There are a few more, but these are the most popular. Virtual TI's emulation is quite poor compared to the others, but the others are still under development. It's usually best to have a few around so that in case you run into something unexpected you can get a second opinion from another emulator.&lt;br /&gt;
&lt;br /&gt;
Please read the respective README's on how to get your ROM image running in these emulators.&lt;br /&gt;
&lt;br /&gt;
== Assembler ==&lt;br /&gt;
&lt;br /&gt;
An assembler -- sometimes referred to as &amp;quot;compiler&amp;quot;, though formally it is no such thing -- can assemble your source code into binaries for the Z80 processor that runs our calculators.&lt;br /&gt;
&lt;br /&gt;
=== Choice of assembler ===&lt;br /&gt;
&lt;br /&gt;
Once again, you'll have to make a choice. A few years ago, things were simple; there was TASM and nothing else, so you'd use TASM. These days we have TASM, Brass and Spasm (and probably a few others), all with subtle little differences and improvements, but the latter two are clearly superior to the old TASM. Brass is written in C# for .NET, and can run under Linux using Mono. Spasm was written in C, and will compile on most systems with the GNU toolchain.&lt;br /&gt;
&lt;br /&gt;
* Brass [http://kvince83.tengun.net/maxboard/viewforum.php?f=25 subforum], [http://benryves.com/bin/brass/ website] and [http://benryves.com/bin/brass/Brass.exe latest download]&lt;br /&gt;
* Spasm [http://www.revsoft.org/phpBB2/viewforum.php?f=21 subforum] and [http://www.group.revsoft.org/spasm.exe latest download]&lt;br /&gt;
&lt;br /&gt;
=== Assembling source to binaries ===&lt;br /&gt;
&lt;br /&gt;
The syntax for assembling input.asm to either output.8xp or output.83p is:&lt;br /&gt;
&lt;br /&gt;
 Brass.exe input.asm output.8?p&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
 spasm input.asm output.8?p&lt;br /&gt;
&lt;br /&gt;
Both modern assemblers can output files in TI calculator specific formats, which TASM can not. Some versions of Spasm will do this automatically based on the output file extension, and in the case of Brass you can [http://benryves.com/bin/brass/directives/binarymode.htm specify] your output format in your source code:&lt;br /&gt;
&lt;br /&gt;
 .binarymode TI8X&lt;br /&gt;
&lt;br /&gt;
=== Include files ===&lt;br /&gt;
&lt;br /&gt;
Include files contain predefined memory locations, locations of TI-OS calls and macros to make your life easier. Strictly speaking you don't need any, but without them you'll have to type in every address by hand (and either memorize them or look them up each time).&lt;br /&gt;
&lt;br /&gt;
Depending on which calculator model and which shell you want to develop for (Ion, MirageOS, Venus, etc.), you'll need to get some include files. For the sake of demonstration (and because most other shells can run them) we'll be choosing Ion for now. Developing for Ion also has the advantage that your applications can be compiled for Ti-83 and Ti-83+ (and relatives) without changing the source. Go [http://www.ticalc.org/archives/files/fileinfo/130/13058.html here] and download the zip file, which contains ion.inc. You'll also need the shell itself for testing.&lt;br /&gt;
&lt;br /&gt;
=== Hello World ===&lt;br /&gt;
&lt;br /&gt;
Save this file as hello.asm in the same directory as your assembler, for ease of testing:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#define TI83P   ; If you want to compile for Ti-83+ family calcs&lt;br /&gt;
;#define TI83   ; If you want to compile for Ti-83, don't uncomment both!&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;ion.inc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
; ====&lt;br /&gt;
; Start of Ion header&lt;br /&gt;
&lt;br /&gt;
#ifdef TI83P&lt;br /&gt;
    .binarymode TI8X   ; only required if you use Brass&lt;br /&gt;
    .org progstart-2&lt;br /&gt;
    .db $BB,$6D&lt;br /&gt;
#else&lt;br /&gt;
    .binarymode TI83   ; only required if you use Brass&lt;br /&gt;
    .org progstart&lt;br /&gt;
#endif&lt;br /&gt;
    ret&lt;br /&gt;
    jr nc,main&lt;br /&gt;
title:&lt;br /&gt;
   .db &amp;quot;Hello World Test&amp;quot;,0&lt;br /&gt;
&lt;br /&gt;
; End of Ion header&lt;br /&gt;
; ====&lt;br /&gt;
&lt;br /&gt;
main:&lt;br /&gt;
    ; Program execution starts here:&lt;br /&gt;
    bcall(_homeup)&lt;br /&gt;
    ld hl,string&lt;br /&gt;
    bcall(_puts)&lt;br /&gt;
    bcall(_getkey)&lt;br /&gt;
    ret&lt;br /&gt;
&lt;br /&gt;
string:&lt;br /&gt;
    .db &amp;quot;Hello world!&amp;quot;,0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Open a console, cd to your directory and issue:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;your assembler&amp;gt; hello.asm hello.8xp&lt;br /&gt;
&lt;br /&gt;
Now load hello.8xp into your emulator and try to run it with Ion.&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Beginners</id>
		<title>Beginners</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Beginners"/>
				<updated>2009-01-03T01:32:02Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Updated link to spasm&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Starting with assembly programming can be quite a pain. You need to find yourself an assembler, preferably a nice emulator, and lots of documentation. While this wiki provides you with a lot of documentation, and many [[TI websites|websites]] and [[:Category:Teams|teams]] can provide you with links to good tutorials, people keep asking the community how to get started. I hope this will answer their questions once and for all :)&lt;br /&gt;
&lt;br /&gt;
== Emulating ==&lt;br /&gt;
&lt;br /&gt;
=== Getting a ROM dump ===&lt;br /&gt;
&lt;br /&gt;
Getting a ROM dump is the essential first step of running a calculator emulator. Because the calculator operating system is intellectual property of Texas Instruments, it is illegal to distribute ROM images, but you can extract your own ROM image from your own calculator under &amp;quot;Fair use&amp;quot; regulations.&lt;br /&gt;
&lt;br /&gt;
To download your own ROM image from your calculator to your PC you need some software. Your options are:&lt;br /&gt;
* [http://www.ticalc.org/archives/files/fileinfo/373/37341.html Rom8x]&lt;br /&gt;
* Uhm... need to find some more ;)&lt;br /&gt;
&lt;br /&gt;
Ticalc.org has an excellent howto page on getting a ROM image [http://www.ticalc.org/programming/emulators/romdump.html here]. Or, you could do a Google search on something like TI83.rom, and see what comes up.&lt;br /&gt;
&lt;br /&gt;
Of course, if you want to develop an operating system yourself (if you're working on [[Vera]] for example) you don't need a ROM image.&lt;br /&gt;
&lt;br /&gt;
=== Choice of Emulator ===&lt;br /&gt;
&lt;br /&gt;
The second step is selecting an [[:Category:Emulators|emulator]] that suits you:&lt;br /&gt;
&lt;br /&gt;
* [[:Emulators:Virtual TI|Virtual TI]] - Long time favourite, but mostly because it was the only one&lt;br /&gt;
* [[:Emulators:PindurTI|PindurTI]] - Very basic emulator with very good hardware emulation and animated screenshotting&lt;br /&gt;
* [[:Emulators:Wabbitemu|WabbitEmu]] - The newest breed, with a very nice GUI and a port to MAC, Linux is on the way&lt;br /&gt;
&lt;br /&gt;
There are a few more, but these are the most popular. Virtual TI's emulation is quite poor compared to the others, but the others are still under development. It's usually best to have a few around so that in case you run into something unexpected you can get a second opinion from another emulator.&lt;br /&gt;
&lt;br /&gt;
Please read the respective README's on how to get your ROM image running in these emulators.&lt;br /&gt;
&lt;br /&gt;
== Assembler ==&lt;br /&gt;
&lt;br /&gt;
An assembler -- sometimes referred to as &amp;quot;compiler&amp;quot;, though formally it is no such thing -- can assemble your source code into binaries for the Z80 processor that runs our calculators.&lt;br /&gt;
&lt;br /&gt;
=== Choice of assembler ===&lt;br /&gt;
&lt;br /&gt;
Once again, you'll have to make a choice. A few years ago, things were simple; there was TASM and nothing else, so you'd use TASM. These days we have TASM, Brass and Spasm (and probably a few others), all with subtle little differences and improvements, but the latter two are clearly superior to the old TASM. Brass is written in C# for .NET, and can run under Linux using Mono. Spasm was written in C, and will compile on most systems with the GNU toolchain.&lt;br /&gt;
&lt;br /&gt;
* Brass [http://kvince83.tengun.net/maxboard/viewforum.php?f=25 subforum], [http://benryves.com/bin/brass/ website] and [http://benryves.com/bin/brass/Brass.exe latest download]&lt;br /&gt;
* Spasm [http://www.revsoft.org/phpBB2/viewforum.php?f=21 subforum] and [http://www.revsoft.org/spasm.exe latest download]&lt;br /&gt;
&lt;br /&gt;
=== Assembling source to binaries ===&lt;br /&gt;
&lt;br /&gt;
The syntax for assembling input.asm to either output.8xp or output.83p is:&lt;br /&gt;
&lt;br /&gt;
 Brass.exe input.asm output.8?p&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
 spasm input.asm output.8?p&lt;br /&gt;
&lt;br /&gt;
Both modern assemblers can output files in TI calculator specific formats, which TASM can not. Some versions of Spasm will do this automatically based on the output file extension, and in the case of Brass you can [http://benryves.com/bin/brass/directives/binarymode.htm specify] your output format in your source code:&lt;br /&gt;
&lt;br /&gt;
 .binarymode TI8X&lt;br /&gt;
&lt;br /&gt;
=== Include files ===&lt;br /&gt;
&lt;br /&gt;
Include files contain predefined memory locations, locations of TI-OS calls and macros to make your life easier. Strictly speaking you don't need any, but without them you'll have to type in every address by hand (and either memorize them or look them up each time).&lt;br /&gt;
&lt;br /&gt;
Depending on which calculator model and which shell you want to develop for (Ion, MirageOS, Venus, etc.), you'll need to get some include files. For the sake of demonstration (and because most other shells can run them) we'll be choosing Ion for now. Developing for Ion also has the advantage that your applications can be compiled for Ti-83 and Ti-83+ (and relatives) without changing the source. Go [http://www.ticalc.org/archives/files/fileinfo/130/13058.html here] and download the zip file, which contains ion.inc. You'll also need the shell itself for testing.&lt;br /&gt;
&lt;br /&gt;
=== Hello World ===&lt;br /&gt;
&lt;br /&gt;
Save this file as hello.asm in the same directory as your assembler, for ease of testing:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#define TI83P   ; If you want to compile for Ti-83+ family calcs&lt;br /&gt;
;#define TI83   ; If you want to compile for Ti-83, don't uncomment both!&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;ion.inc&amp;quot;&lt;br /&gt;
&lt;br /&gt;
; ====&lt;br /&gt;
; Start of Ion header&lt;br /&gt;
&lt;br /&gt;
#ifdef TI83P&lt;br /&gt;
    .binarymode TI8X   ; only required if you use Brass&lt;br /&gt;
    .org progstart-2&lt;br /&gt;
    .db $BB,$6D&lt;br /&gt;
#else&lt;br /&gt;
    .binarymode TI83   ; only required if you use Brass&lt;br /&gt;
    .org progstart&lt;br /&gt;
#endif&lt;br /&gt;
    ret&lt;br /&gt;
    jr nc,main&lt;br /&gt;
title:&lt;br /&gt;
   .db &amp;quot;Hello World Test&amp;quot;,0&lt;br /&gt;
&lt;br /&gt;
; End of Ion header&lt;br /&gt;
; ====&lt;br /&gt;
&lt;br /&gt;
main:&lt;br /&gt;
    ; Program execution starts here:&lt;br /&gt;
    bcall(_homeup)&lt;br /&gt;
    ld hl,string&lt;br /&gt;
    bcall(_puts)&lt;br /&gt;
    bcall(_getkey)&lt;br /&gt;
    ret&lt;br /&gt;
&lt;br /&gt;
string:&lt;br /&gt;
    .db &amp;quot;Hello world!&amp;quot;,0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Open a console, cd to your directory and issue:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;your assembler&amp;gt; hello.asm hello.8xp&lt;br /&gt;
&lt;br /&gt;
Now load hello.8xp into your emulator and try to run it with Ion.&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	<entry>
		<id>https://wikiti.brandonw.net/index.php?title=Category:Emulators</id>
		<title>Category:Emulators</title>
		<link rel="alternate" type="text/html" href="https://wikiti.brandonw.net/index.php?title=Category:Emulators"/>
				<updated>2008-10-06T08:06:56Z</updated>
		
		<summary type="html">&lt;p&gt;Buckeye Dude: Added more general info about emulators&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A software emulator allows computer programs to run on a platform (computer architecture and/or operating system) other than the one for which they were originally written. Unlike a simulation, which only attempts to reproduce a program's behavior, an emulation attempts to precisely model the state of the device being emulated.&lt;br /&gt;
&lt;br /&gt;
[http://www.wikipedia.org Source: wikipedia]&lt;br /&gt;
&lt;br /&gt;
==Advantages==&lt;br /&gt;
Why using an emulator instead of the ''real'' calculator? There are several reasons for this:&lt;br /&gt;
* When crashing, you can recover the emulator with the ease of one/two-clicks.&lt;br /&gt;
* Sending files is a matter of drag'n'droping the file.&lt;br /&gt;
* Test on different calcs.&lt;br /&gt;
* Access to powerfull debuging tools.&lt;br /&gt;
* Ability to take screenshots.&lt;br /&gt;
&lt;br /&gt;
==TI Emulators==&lt;br /&gt;
There are four major emulators available for the z80 series of calcs.&lt;br /&gt;
* [[Emulators:PindurTI|PindurTI]] (also known as PTI)&lt;br /&gt;
* [[Emulators:Virtual TI|Virtual TI]] (also known as VTI)&lt;br /&gt;
* [[Emulators:TilEm|TilEm]]&lt;br /&gt;
* [[Emulators:TI Flash Debugger|TI Flash Debugger]]&lt;br /&gt;
* [[Emulators:Wabbitemu|Wabbitemu]]&lt;br /&gt;
&lt;br /&gt;
[[Emulators:PindurTI|PindurTI]] is one of the latest additions to emulators and has the most accurate emulation of all emulators available. However, its author, Patai Gergley has discontinued it due to lack of time, and the emergence of [[Emulators:Wabbitemu|Wabbitemu]]. Wabbitemu is the lastest upcoming z80 emulator, emulating almost all z80 calcs.  It is however only for Windows at the moment. Linux users can use [[Emulators:TilEm|TilEm]]. [[Emulators:Virtual TI|Virtual TI]] is the oldest and most used emulator at the moment. It has however a lot problems because of incorrect emulation. &lt;br /&gt;
&lt;br /&gt;
The major emulator for the m68k series is [[Emulators:TiEmu|TiEmu]], which supports all the 68k calcs.&lt;/div&gt;</summary>
		<author><name>Buckeye Dude</name></author>	</entry>

	</feed>