Code Monkey home page Code Monkey logo

awesome-ti-docs's Introduction

Awesome TI Docs

A collection of awesome calculator documentation resources and tools from all over the web, all in one place. Contributions welcome.

Icon Models
โ—’
Monochrome z80
  • TI-82
  • TI-83
  • TI-83+
  • TI-84+
๐ŸŽจ TI-84+CSE
๐ŸŒˆ
Color ez80
  • TI-84+CE (-T)
  • TI-83 PCE
  • Python variants of the above.
  • TI-82 AEP
๐ŸŽˆ TI-Nspire

Contents

I want to...

...run programs on my calculator

  • arTIfiCE - ๐ŸŒˆ
    If you have a newer 84+CE/83PCE (at least OS 5.5), arTIfiCE can be used to unlock the ability to run ASM programs.
  • TILP - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    TILP can be used as an alternative to TI's official software for sending/receiving files to/from most calculators.
  • N-Link - ๐ŸŽˆ
    N-Link can be used as an alternative to TI's official software for sending/receiving files to/from the Nspire.
  • Cemetech - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Cemetech hosts a program archive and forum pertaining to calculators of all varieties.
  • ticalc - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    ticalc is the go-to site to download calculator programs or upload your own.
  • TI-Planet - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    TI-Planet hosts a program archive and forum with many online tools and a large international userbase.

...learn TI-BASIC

  • TI-Basic Developer - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    TI-Basic Developer hosts a plethora of programming guides, wiki pages, and useful forum threads for writing your first program.
  • Code Fragments and Useful Routines - โ—’ ๐ŸŽจ ๐ŸŒˆ
    This community collection of optimized idioms and routines is essential for writing concise and effective TI-BASIC code.
  • 84+CE Catalog & 83PCE Catalog - ๐ŸŒˆ
    TI provides documentation for every token on the calculator's built-in catalog, which you can also view online.

...learn assembly for my calculator

  • Learn TI-83+ Assembly in 28 Days (modernized version) โ€ข Original version: on ticalc.org, and web-hosted. - โ—’
    Assembly in 28 Days is the go-to tutorial for learning Z80 ASM; if you want to learn eZ80 as well, this guide is an essential starting point.
  • Z80 Opcode Table (โ—’) or eZ80 Opcode Table (๐ŸŒˆ)
    The opcode tables are great for learning ASM and reading hex code from others.
  • Z80 User Manual (โ—’) or eZ80 User Manual (๐ŸŒˆ)
    Zilog, the makers of the (e)Z80, provide official documentation for their chips and ASM instructions.
  • WikiTI - โ—’ ๐ŸŽจ ๐ŸŒˆ
    WikiTI hosts community-sourced documentation on TI-OS and how to interface with it in assembly.

...write programs in C for my calculator

  • CE Toolchain - ๐ŸŒˆ
    The CE toolchain provides the compiler and libraries necessary for writing C/C++ code for your calculator.
  • CEmu - ๐ŸŒˆ
    The CEmu emulator is great for testing and debugging your code, as large errors can crash the calculator and clear your RAM.
  • Git Guide - ๐ŸŒˆ
    This guide provides all you need to know to use Git and GitHub to share and release your toolchain project.

...write and run programs on my computer

  • Wabbitemu (โ—’), jsTIfied (โ—’ ๐ŸŽจ), or CEmu (๐ŸŒˆ)
    These emulators for the 83+ series of calculators allow you to run programs on your computer using a copy of your calculator's ROM.
  • Firebird - ๐ŸŽˆ
    Nspire owners can find an emulator for their calculators in Firebird.
  • SourceCoder 3 - โ—’ ๐ŸŽจ ๐ŸŒˆ
    SourceCoder is an online IDE for TI-BASIC, ASM, and C/C++.
  • Project Builder - ๐ŸŒˆ
    TI Planet's Project Builder is an online IDE for TI-BASIC, C/C++, and Python.
  • TokenIDE - โ—’ ๐ŸŽจ ๐ŸŒˆ
    If you'd like to go offline, TokenIDE is an IDE for TI-BASIC that supports libraries like DCS and xLibC.

...learn more about my calculator's hardware

  • WikiTI - โ—’ ๐ŸŽจ ๐ŸŒˆ
    WikiTI hosts community-sourced hardware documentation for the 83+ series of calculators.
  • Hardware Revisions - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    This spreadsheet details every known version of hardware found in TI calculators, including prototype revisions.

All Resources

ASM

  • asm-docs - ๐ŸŒˆ
    ASM documentation, tutorials, and examples assembled by the CE toolchain team.
  • CE Versions - ๐ŸŒˆ
    Boot and OS versions for the TI-84+CE(-T) and TI-83PCE.
  • DCS Developer's SDK - โ—’ ๐ŸŽจ
    Documentation for Doors CS related assembly routines and formatting.
  • Direct USB - โ—’
    Partial analysis of the USB protocol on the TI-84+.
  • eZ80 Docs - ๐ŸŒˆ
    General documentation for assembly on the TI-84+CE (WIP).
  • eZ80 Opcode Table - ๐ŸŒˆ
    Table of every eZ80 opcode.
  • eZ80 User Manual - ๐ŸŒˆ
    Official Zilog documentation of the eZ80 CPU.
  • Floating Point Hacks - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Trick to get real variables to point to places they shouldn't.
  • Learn TI-83+ Assembly in 28 Days (modernized version) โ€ข Original version: on ticalc.org, and web-hosted. - โ—’
    Guide to learning assembly on the TI-83+; a useful starting point for writing assembly for other models.
  • Link Guide (mirror) - โ—’
    Link protocol documentation for TI-83+/84+ calculators. Also contains useful documentation for variable formats.
  • TI-83+ Developer's SDK - โ—’
    Official TI-83+ assembly documentation by TI. Some things may apply to other calculators as well.
  • tilibs - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Libraries utilized by TiLP and other software to transfer and convert files between calculators.
  • WikiTI - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Contains most of the documented system calls, along with other useful information pertaining to calculator software/hardware.
  • Z80 IDE - โ—’
    Online IDE for Z80 ASM.
  • Z80 Opcode Table - โ—’
    Table of every Z80 opcode.
  • Z80 Optimized Routines - โ—’
    Expertly-crafted optimized routines for common algorithms, graphics, and mathematical operations (among other things).
  • Z80 User Manual - โ—’
    Official Zilog documentation of the Z80 CPU.

TI-BASIC

  • 84+CE Catalog (English) / 83PCE Catalog (French) - ๐ŸŒˆ
    A copy of the Catalog for the TI-84+CE/TI-83PCE.
  • Assembly Hex Codes for the 83+/84+ (โ—’), 84+CSE (๐ŸŽจ), and 84+CE (๐ŸŒˆ)
    Short assembly snippets that can be called from TI-BASIC using the AsmPrgm commands.
  • binomcdf( Shenanigans - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Exploration of a bug in the binomcdf( implementation between OS 1.03 and 5.6.0 that produces corrupted floats.
  • Celtic CE Documentation - ๐ŸŒˆ
    Documentation of the third-party TI-BASIC library Celtic CE.
  • Code Fragments and Useful Routines - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Various useful routines for TI-BASIC programs.
  • DCS Developer's SDK - โ—’ ๐ŸŽจ
    Documentation of third-party TI-BASIC libraries included in Doors CS/CSE.
  • For( Documenation - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Documentation of strange behavior of the For( command.
  • A Guide to Code Golf in TI-BASIC - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Replete guide with tips and tricks for TI-BASIC code golfing.
  • TEXTLIB - ๐ŸŽจ ๐ŸŒˆ
    TI-BASIC library to enhance homescreen and graphscreen drawing capabilities.
  • TI-Basic Developer - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Documentation and tutorials for TI-BASIC programming.
  • TI-BASIC Useful Routines - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Useful routines for TI-BASIC programs.
  • tiopt - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Tool to perform simple optimizations of TI-BASIC programs.
  • QR Code Generator - ๐ŸŒˆ
    QR code generator for use with TI-BASIC. Requires the accompanying rendering program.
  • zText - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Simple program generator for displaying text on the graphscreen.

C/C++

  • CE Toolchain - ๐ŸŒˆ
    Documentation for the CE C/C++ toolchain. Includes all the information you need to start programming in C and C++ on the TI-84+CE.
  • Git Guide - ๐ŸŒˆ
    A short guide on using Git and GitHub angled toward projects which use the CE toolchain.

Hardware

  • Hardware Revisions - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Documented hardware revisions, motherboards, and codenames for calculators and accessories.
  • Packaging Codes - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Documented serial numbers and packaging codes.
  • Silver Link RE - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Documentation and schematics for the TI USB Graph Silver Link cable.
  • WikiTI - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Contains hardware documentation for some TI (e)Z80 calculators.

Emulators

  • CEmu - ๐ŸŒˆ
    TI-84+CE emulator for Linux, macOS, and Windows.
  • Firebird - ๐ŸŽˆ
    TI-Nspire emulator for Android, iOS, Linux, macOS, and Windows.
  • jsTIfied - โ—’ ๐ŸŽจ
    Online calculator emulator for Z80 TI-83+/84+ calculators.
  • TilEm - โ—’
    TI Z80 emulator and debugger for Linux, macOS, Windows, and other platforms that support GTK+.
  • Wabbitemu - โ—’
    TI Z80 emulator for Android, Linux, macOS, and Windows.

Downloads

  • Cemetech - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Archive and forum site hosting discussion pertaining to calculators and other projects.
  • TI-Basic Developer - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Archive and forum site with a focus on TI-BASIC.
  • ticalc - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Replete archive of calculator programs and other files.
  • TI-Planet - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Archive and forum site tailored to TI calculators with a large international community.

Tools

  • 1555 Color Picker - ๐ŸŽจ ๐ŸŒˆ
    Color picker which can use 1555 or 565 color mode, which can be useful for C/ASM and hybrid TI-BASIC on color calculators.
  • arTIfiCE - ๐ŸŒˆ
    "Jailbreak" for the TI-84+CE/83PCE calculators necessary for running ASM programs on OS versions 5.5 and above.
  • FactoRoms - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Online console ROM to calculator file conversion tool (requires TI Planet log-in).
  • fasmg manual - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Documentation and basic examples of flat assembler g language.
  • img2calc - ๐ŸŒˆ ๐ŸŽˆ
    Image converter for a number of calculator image file types.
  • mViewer GX Creator - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Online PDF/Image to calculator file conversion tool (requires TI Planet log-in).
  • nCreator - ๐ŸŽˆ
    Online rich text (Nspire Notes app) creation tool (requires TI Planet log-in).
  • N-Link - ๐ŸŽˆ
    Free and open-source TI-Nspire transfer software for Linux, macOS, and Windows (no license required).
  • Project Builder - ๐ŸŒˆ
    Online C/C++, TI-BASIC, and Python IDE for TI-84+CE/83PCE calculators.
  • SourceCoder 3 - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Online IDE for TI-BASIC, (e)Z80 ASM, and C programs.
  • TILP - โ—’ ๐ŸŽจ ๐ŸŒˆ ๐ŸŽˆ
    Open-source calculator transfer software for most calculators and link cables.
  • tivars_lib_cpp/tivars_lib_py - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Libraries for C++/Python to read and write var files used by TI-(e)Z80 calculators.
  • TokenIDE - โ—’ ๐ŸŽจ ๐ŸŒˆ
    Offline IDE for TI-BASIC with DCS and xLibC support.
  • xLibC Color Picker - ๐ŸŽจ ๐ŸŒˆ
    Color picker which uses the xLibC palette, which can be useful for C/ASM and hybrid TI-BASIC on color calculators. You can upload a custom palette as well.

Other

  • AXE Commands - โ—’
    Table of commands for the TI-83+/84+ programming language AXE, created by Kevin Horowitz.
  • AXE Documentation - โ—’
    General documentation for AXE in PDF form.
  • ICE Documentation - ๐ŸŒˆ
    Documentation for the TI-84+CE programming language ICE, created by Peter Tillema. Note: ICE is no longer in active development.

awesome-ti-docs's People

Contributors

adriweb avatar commandblockguy avatar kg583 avatar legend-of-iphoenix avatar logicaljoe avatar rpitasky avatar tiny-hacker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

awesome-ti-docs's Issues

83pa28d links/versions

I think the current links to 83pa28d are weird:

Learn TI-83+ Assembly in 28 Days (mirror)

  1. Although it's generally worthwhile to have a link to a version that can be viewed directly (Eeems' version does that okay), it also seems worth linking to the original source on ticalc.
  2. I don't think it's correct to refer to my version (on gitlab.io) as a mirror; it's meant to be an updated and more friendly version. In particular, it now embeds a modern instruction set reference and in-browser assembler as well as having been updated to fix various incorrect statements and make everything easier to navigate.

I would tend to say that my version is a better choice to present as the primary, though clearly that's somewhat biased as I'm the owner of that version's repository. In any case, I don't think it's correct to call it a mirror.

Ordering items and categories on the README

Currently, the README is sorted first by category, then alphabetically. There has been suggestion to instead order things based on predicated relevance; e.g., put 83pa28d higher up in its category than the direct USB docs.

Alphabetical Ordering

  • Consistent, objective, good for those in search of a particular tool
  • Poor for those just starting out, made somewhat moot by Ctrl+F

Relevance Ordering

  • Good for those just starting out
  • Inherently subjective and therefore potentially drama-inducing

A proposed middle ground would be creating a new category at the top of the page for links useful to anyone wanting to get into calculator coding. All such links would still appear on the rest of the page. The other categories would remain alphabetical.

On that note, its also worth discussing which categories should/should not exist and how they're ordered. Too few categories makes searching within a topic harder, while too many could become granular and repetitive (i.e. more tools spanning multiple categories when they don't really need to).

For reference, the current categories are ASM, TI-BASIC, C/C++, Hardware, Tools, Emulators, Other (in that order). The largest are ASM and Tools, while the shortest are C/C++ and Other. The order is rather arbitrary, though not bad.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.