Login [Register]
Don't have an account? Register now to chat, post, use our tools, and much more.
Doors CS 7 Source Code Released
Published by KermMartian on April 1, 2016 at 12:26:15 PM CST | Discuss this article (17)

In September 2001, "Doors XP" was first created for the TI-83 graphing calculator as a trivially-simple TI-BASIC program. It contained a hard-coded menu of the programs on my calculator, allowing me to run any of them by choosing them from the list. Over the fourteen and a half years since that first experiment, Doors XP transformed into Doors CS 7, an App shell for the TI-83 Plus, TI-83 Plus Silver Edition, TI-84 Plus, and TI-84 Plus Silver Edition (and their confusingly-named French counterparts, the TI-82 Advanced, TI-83 Plus.fr, and TI-84 Plus Pocket.fr). To quote a previous Cemetech news article, Doors CS has engendered accolades, criticism, and controversy, and Doors CS and its features have been featured on ticalc.org, Hackaday, Gizmodo, and others. It was first upgraded from a pure TI-BASIC program to a TI-BASIC program with a custom ASM program used to list and run programs. Then, it because a fully-assembly program, and soon after that, an App stored in and run from Archive. Over the years, new features were added, including libraries for TI-BASIC and assembly programmers, Shell Expansions (SEs), Associated Programs (APs) that open files in associated viewers, a GUI API for programmers to use, the CALCnet 2.2 networking system, and more. Throughout its life, Doors CS 7 has remained a GUI- and mouse-based shell, where you move a mouse cursor and click to interact with the shell. On feedback from users, a Shell Expansion called TabFuncs was first created, then integrated into the shell, allowing programs to be selected with the arrow keys instead of a mouse cursor if desired.

In July 2013, I released Doors CS 7.2, bringing bug fixes to the shell but announcing that no further Doors CS 7 versions would be released, and effectively bringing support to an end-of-life state. As I said then:
I want to especially thank all of you in the community, from the Cemetech administrators who helped me stay motivated on Doors CS, to the beta-testers and coders who contributed their time and effort. I even want to thank the seasoned community members who scoffed at some young upstart boasting about his as-yet nonexistent shell so many years ago, whose skepticism pushed Doors CS from two marble notebook full of half-working assembly code into the rock-solid, widely-used software that it is today. I look forward to the next decade-long project that I'll find myself embroiled in.


Now, I want to add one final epilogue to this story. For a long time, Doors CS had been open-source, with the source code available to anyone who wanted to read it and learn. An unfortunate incident drove me to close its source, but now, I'm happy to re-open the source code for posterity. Anyone looking to learn about TI-83 Plus/TI-84 Plus shells, GUIs, networking, and graphics routines are invited to check out the source code on GitHub. The source has been released under a custom license that acknowledges the fact that some Doors CS 7 code is used in the still closed-source Doors CSE 8 and Doors CE 9, but I intend to allow as much re-use of the code in others' projects as possible, as long as you ask nicely first. Please enjoy, and I'll even accept pull requests and consider releasing new versions if people find bugs to fix and optimizations to make. I'd like to that CVSoft, geekboy1011, Iambian, and tr1p1ea for discussing this move with me and giving me their blessings to release their contributions. Enjoy!

Download
Doors CS 7 binary release
Doors CS 7 source code



Permalink
2016 Articles
January 2016 January 2016 [Back to News Archives Index]

» Projects of the Month: December 2015 published January 1, 2016 by tifreak8x
» Cemetech Contest #15, Challenge 4 published January 5, 2016 by KermMartian
» Consumer Electronics Show 2016 - A Brief Review published January 12, 2016 by Alex
» Cemetech Contest #15, Challenge 5 published January 13, 2016 by KermMartian
» TI and NASA Announce "mISSion imaginaTIon" published January 15, 2016 by KermMartian
» Graph3DC 1.0 Open Beta 2 published January 18, 2016 by KermMartian
» Light-Based Whack-a-Mole Powered by TI-84+CSE and MSP432 published January 21, 2016 by KermMartian
» Graph3DC 1.0: 3D Grapher for TI-84 Plus C SE Released published January 26, 2016 by KermMartian
» Mateo Does it Again - C SDK, Libraries, and LibLoad published January 30, 2016 by pimathbrainiac

February 2016 February 2016 [Back to News Archives Index]

» Projects of the Month: January 2016 published February 2, 2016 by tifreak8x
» Cemetech Contest #15 Results and Winners published February 4, 2016 by KermMartian
» ArTICL SimpleI/O Demo: LEDs, Buttons, Switches, and a Motor published February 11, 2016 by KermMartian
» Cemetech User Promotions: New Moderators and more! published February 12, 2016 by Alex
» TI-Nspire OS 4.2, NASA "Fuel for the Fire" Activity published February 18, 2016 by KermMartian
» TI-Nspire CX OS 4.2, mISSion imaginaTIon, and More! published February 19, 2016 by pimathbrainiac
» Cemetech Returns to T^3 2016 in New Role published February 22, 2016 by KermMartian
» SourceCoder 3 RC 1: TI-84+CE C Programming, More published February 23, 2016 by KermMartian
» Presenting Learn @ Cemetech published February 25, 2016 by KermMartian
» Cemetech at T^3 International Conference 2016 published February 29, 2016 by KermMartian

March 2016 March 2016 [Back to News Archives Index]

» Projects of the Month: February 2016 published March 1, 2016 by tifreak8x
» Sneak Peek at Upcoming TI-BASIC Features published March 2, 2016 by elfprince13
» Cemetech Contest #16: Chatty Cyborgs published March 2, 2016 by jonbush
» Happy Pi Day 2016 published March 14, 2016 by KermMartian
» TI-BASIC Optimization Competition published March 16, 2016 by KermMartian
» Cemetech Minecraft 1.9 Intellectual Survival Easter Launch published March 27, 2016 by KermMartian
» Checkers, Game of Life Grace TI-84 Plus CE published March 28, 2016 by KermMartian

April 2016 April 2016 [Back to News Archives Index]

» Doors CS 7 Source Code Released published April 1, 2016 by KermMartian
» GPU Technology Conference 2016 published April 5, 2016 by Alex
» TI-84 Plus CE Minesweeper Released published April 8, 2016 by KermMartian
» TI Teases New TI-84 Plus CE Colors: Gold, ??? published April 19, 2016 by KermMartian

May 2016 May 2016 [Back to News Archives Index]

» New TI-84 Plus CE Colors: White and Gold published May 10, 2016 by KermMartian
» Planned Cemetech Downtime: May 21st, 2016 published May 18, 2016 by Alex
» Projects of the Month: April 2016 published May 10, 2016 by tifreak8x
» May 22 Server Events: Scavenger Hunt, Border Expansion published May 22, 2016 by KermMartian

June 2016 June 2016 [Back to News Archives Index]

» Projects of the Month: May 2016 published June 7, 2016 by tifreak8x
» Cemetech Contest #17: On Rails published June 20, 2016 by jonbush
» ticalc.org Turns 20 published June 22, 2016 by tifreak8x
» White and Gold TI-84 Plus CE Calculators Now Available published June 24, 2016 by KermMartian

July 2016 July 2016 [Back to News Archives Index]

» Projects of the Month: June 2016 published July 11, 2016 by tifreak8x
» Coming Soon: The TI-Innovator System published July 16, 2016 by KermMartian
» Cemetech to Cover SIGGRAPH 2016 published July 24, 2016 by KermMartian
» Hands-On with the Gold TI-84 Plus CE (2016) published July 29, 2016 by KermMartian

August 2016 August 2016 [Back to News Archives Index]

» PT_ Releases ICE - An Interpreter/Compiler of CE-BASIC published August 6, 2016 by pimathbrainiac
» STEM and Exploring Mars: A Chat with Z. Nagin Cox of NASA published August 10, 2016 by KermMartian
» Projects of the Month: July 2016 published August 12, 2016 by tifreak8x
» Win TI-84 Plus CEs with Photos of Math for the Win published August 13, 2016 by KermMartian
» SIGGRAPH 2016 Highlights: Basketball with OptiTrack published August 16, 2016 by elfprince13
» Clouttery: Manage All Your Devices' Batteries Effortlessly published August 19, 2016 by KermMartian
» Back to School 2016: What Graphing Calculator Should I Buy? published August 26, 2016 by KermMartian
» OS 5.2 for the TI-84 Plus CE: New TI-BASIC Commands published August 31, 2016 by KermMartian

September 2016 September 2016 [Back to News Archives Index]

» Projects of the Month: August 2016 published September 4, 2016 by tifreak8x
» Hands-On with the TI-Innovator published September 20, 2016 by merthsoft
» Cemetech Going to World Maker Faire 2016 for 5th Year published September 26, 2016 by KermMartian

October 2016 October 2016 [Back to News Archives Index]

» Cemetech at World Maker Faire 2016 Recap published October 8, 2016 by KermMartian
» Projects of the Month: September 2016 published October 17, 2016 by tifreak8x

November 2016 November 2016 [Back to News Archives Index]

» Projects of the Month: October 2016 published November 11, 2016 by tifreak8x
» Unboxing the TI-Innovator Hub and Breadboard Pack published November 25, 2016 by KermMartian

December 2016 December 2016 [Back to News Archives Index]

» ticalc.org PotY 2016 Voting Begins published December 6, 2016 by KermMartian
» Contest #18: Winter Wonderland published December 18, 2016 by jonbush
» PT_ Promoted to Global Moderator published December 23, 2016 by KermMartian
» Merry Christmas, Happy Holidays and New Year from Cemetech published December 25, 2016 by KermMartian
» 2016 ticalc.org PotY Results Announced published December 30, 2016 by PT_

Advertisement