Scott D. Frel and Benjamin W. Holladay, Department of Electrical and Computer Engineering
CAStLe was developed during the Spring of 1995. The primary purose of the project was to complete the requirements for the mandatory senior project all Electrical and Computer Engineering majors must complete. With the support provided by the Office of Research and Creative Activities, this project was enhanced with sound, graphics and a friendly user interface using some of the best product development tools available to date.
Overview
Since the dawning of the computer age, exciting opportunities for interactive learning have risen from the dynamic world of computers. For Instance, the personal computer has provided a great impetus In the educational process, providing a more holistic approach for learning. Despite the abundance of available educational software, there still remained a void in providing access to every age group-specifically toddlers, CAStLe, Computer Aided Steps to Learning, Is an Interactive software/hardware package that Is directed specifically toward children too young to manipulate a mouse or keyboard. Using a modified keyboard, children are able to interact with specially designed software, aimed at enhancing motor skills, increasing action/reaction abilities, and teaching a myriad of educational subjects. For the purposes of this project, the focus of education include shapes and vehicles, but could clearly be extended to Include animals, directions, objects, letters, numbers, etc. Taught In an environment of colorful graphics and stimulating sounds, CAStLe provides an educational foundation and computer exposure to very young children, in a way not previously afforded.
Project Breakdown
CAStLe can be divided Into two basic parts: 1) a hardware modified keyboard and 2) a specially designed interactive software package.
The modified keyboard consists of a protective overlay for a keyboard transforming it Into an six-button input device. This design allows the overlay to fit onto any standard size keyboard. As a visual aide, an attachable storyboard is then placed onto the overlay. The various pages of the storyboard correspond to the activities available to the child. The pictured buttons that appear on the screen match the pictures of the storyboard pages. When the child strikes a button, the activity that corresponds to that picture Is launched. There is a separate removable button to back out of each activity or exit from CAStLe.
The software package is the bulk of the CAStLe project. CAStLe provides a friendly GUI (graphical user interface) that greets a child with a colorful castle equipped with a lowering drawbridge, engaging music and a hearty welcome, This screen is the main page of CAStLe from which the child may select the activity choices. As it presently stands, the CAStLe main page offers three choices-launch shapes activities, launch vehicles activities or raise/lower the drawbridge. The number of possible choices could be changed as additional activities are added.
Launching an activity takes the child to a standard activity page that consists of six push-buttons having the same pictures as the storyboard. The remainder of the screen is an activity window where the graphics and animation appear. Sound effects accompany the animations in presenting the subjects in an educational manner. For example, the child can follow a guiding animated-hand showing the points of a star as a friendly voice explains that a star has five points … one … two … three … four … five. Children songs play softly in the background to add to the creative and positive learning atmosphere.
The engine that drives CAStLe was designed to provide for easy implementation of additional activities. The format is standardized in that the only thing needed to add additional activities is a series of animation clips and corresponding sound files. Due to the stringent time requirement of the department of Electrical and Computer Engineering, only two foci were developed to date.
CAStLe was programmed in two languages. The user interface was realized in object-oriented Pascal. The animation engine was developed as a dynamically- linked library (DLL) in C and C++ using the latest technology in Windows API programming. Background music was produced in a MIDI format while sound effects and voice recordings were in a WA V format. All graphics are in BMP format. Most of these qualities meet advanced work experience requirements for many of today’sjob opportunities in the field of computer engineering.
Skills Developed and Obstacles Faced
CAStLe takes advantage of modern development tools used to create Windows™ interface programs. This characteristic required a timeonsuming learning curve as these skills are not taught in our discipline at BYU. Integrating the Pascal code (used in development of the user interface) and the CIC++ code (used in the animation engine) required thorough research in order to understand not only the languages, but how to interface them. The animation engine required an intensive crash course In image manipulation including saving and restoring the background image on which the sprite animation was superimposed. This skill was a major development in the production of this product.
Due to the nature of the graphics, animations and sounds of the product, CAStLe requires good memory management. A large obstacle faced was how to handle memory page faults which would make many animation sequences stop for a few seconds before finishing. This was overcome by making synchronous sound effects asynchronous, as well as breaking the major dynamically linked libraries into many smaller ones.
Inspiration and Purpose
This project was inspired by our sons who love to bang on the keyboard, but who have not yet mastered the art of striking individual keys nor the ability to use a mouse. Available software to date denies an easy Interface for a toddler to Input his/her responses. CAStLe has bridged this gap with the development of the keyboard overlay. Having only six big, bright buttons with colorful pictures which associate each button to a corresponding one seen on the screen, a toddler Is able to be successful and productive with a computer. The product Is developed to respond to the child’s Input, helping to teach cause and effect, simple problem solving skills, as well as the subject being taught on the software. We believe that with these features, as well as the fun and positive learning atmosphere of the product, CAStLe can help toddlers in their early childhood development. By the response of our toddlers and those of friends, CAStLE is a success!
*Windows is a trademark of Microsoft Corporation.