Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FACULTAD DE INGENIERA
ESCUELA DE CIENCIAS Y SISTEMAS
ARQUITECTURA DE COMPUTADORES Y ENSAMBLADORES 1
SEGUNDO SEMESTRE 2017
ING. OTTO ESCOBAR
TUTOR ACADMICO SECCIN A: JORGE GUTIRREZ
TUTOR ACADMICO SECCIN B: WILLIAM VALLADARES
Proyecto 2 de Laboratorio
Objetivo General:
Objetivos Especficos:
Descripcin:
El segundo proyecto de laboratorio consiste en realizar el popular videojuego de Ball Braker,
en el cual se contar con niveles y tambin se tendr la opcin de poder registrar usuarios
e ingresar al juego, esto con la finalidad de que se pueda generar el reporte de Top 10 por
puntos obtenidos y por el mayor tiempo de juego.
Al momento de iniciar la aplicacin tendr que permitir el ingreso o registro de un usuario,
entonces se desplegar un men principal que contendr las siguientes opciones:
Ingresar
Registrar
Salir
Ingresar
Al seleccionar esta opcin, se pedir ingresar el usuario y la contrasea, datos con los
cuales se ir a buscar con los usuarios que ya se han registrado anteriormente o
tambin se podr ingresar como administrador, en dicho caso se desplegar un men
en el cual se podrn mostrar los reportes Top 10, estos se explicarn ms adelante.
Dado caso se ingresa un usuario que ya fue creado, le permitir ingresar al juego e
iniciar una partida.
Para ingresar como administrador se tendrn dos variantes dependiendo si el carnet del
estudiante es par o impar, siendo as:
Par: usuario = admin<Seccin>P, contrasea = 1234
Impar: usuario = admin<Seccin>I, contrasea = 4321
o Sesin de Usuario
Si es un usuario normal el que ingresa, se desplegar inmediatamente el juego,
mostrando en pantalla el tiempo, nivel en el cual est, los puntos obtenidos y el
nombre del usuario. El juego tendr desde el inicio un margen interno que servir de
contenedor en donde la barra inferior y la pelota se pueden mover. As mismo, el
juego iniciar en modo de espera, es decir que la pelota no se mover hasta que se
presiona la Barra Espaciadora del teclado.
1. Nombre de usuario
2. Nivel actual
3. Contador de puntos
4. Tiempo transcurrido
5. Barra
6. Pelota
7. Margen interno
8. Bloques
o Niveles
El juego deber contar con tres niveles, cada nivel tendr ms bloques y ms pelotas
que el anterior. Se pasar de un nivel a otro cada vez que todos los bloques sean
destruidos por la(s) pelota(s), siendo as por ejemplo:
Se tomar en cuenta el diseo del juego, y que en cada nivel vaya aumentando la
dificultad del mismo, todo se considerar en la hoja de calificacin.
o Sesin Administrador
Si se ingresa como administrador se desplegar el men de reportes, el que contiene
las siguientes opciones:
Top 10 Puntos
Top 10 Tiempo
Salir y regresar al men principal
Top 10 Puntos:
Al elegir esta opcin por el usuario
administrador, se desplegar en
pantalla nicamente los 10
primeros lugares en cuanto a
puntos obtenidos. Mostrando lo
siguiente: El nombre de usuario,
nivel alcanzado y cantidad de
puntos. Esto tambin se escribir
de manera automtica en un
archivo de salida, dicho archivo
contendr el nombre
Puntos.rep.
Top 10 Tiempo:
Al elegir esta opcin por el usuario
administrador, se desplegar en
pantalla nicamente los 10
primeros lugares en cuanto a
tiempo logrado en el juego.
Mostrando lo siguiente: Nombre
de usuario, nivel alcanzado y
tiempo realizado en segundos.
As mismo esto se escribir de
manera automtica en un archivo
de salida, dicho archivo contendr
el nombre Tiempo.rep.
Registrar
Al registrar un nuevo usuario, se
ingresar el nombre (de hasta 7
caracteres) y la contrasea (numrica
de 4 dgitos). Antes de pedir la
contrasea se verificar si el usuario ya
fue registrado antes, de ser as se
desplegar un mensaje indicando que
ya est registrado; en caso contrario se
desplegar la opcin de ingresar la
contrasea. Si se ingresara una
contrasea que no sea completamente
numrica, se deber mostrar un
mensaje indicando que la contrasea
no es vlida y luego permitiendo
ingresar nuevamente la contrasea.
Salir
Al momento de elegir esta opcin, se saldr de la aplicacin. En caso de que se
seleccione otra opcin diferente, se deber desplegar nuevamente el men principal.
Ejemplos:
Men Principal
Reporte Puntos
Reporte Tiempos
Recomendaciones:
Control de Usuarios
Se recomienda crear un archivo donde
se irn agregando los usuarios que se
van creando, as mismo al inicio de ste
se le coloca los datos del usuario
administrador; de esta manera solo es
cuestin de leer el archivo para validar
el registro e ingreso. La forma de
separar la informacin es libre, en este
caso se utiliz la coma, y el punto y
coma como separadores.
Reportes Top 10
Se recomienda crear un archivo donde
se irn agregando las estadsticas
logradas en las partidas jugadas por los
usuarios: El nombre, el nivel alcanzado,
los puntos logrados y el tiempo de
juego. La forma de separar la
informacin es libre, en este caso se
utiliz la coma, y el punto y coma como
separadores; de esta manera se
procede a leer el archivo, se ordenan
los datos segn el reporte solicitado y
se muestran.
Animacin
Se recomienda manipular directamente la memoria de video, eso se logra por ejemplo
al asignar al registro de segmento extra la posicin en que inicia la memoria de video y
mediante un direccionamiento base + ndice, se asignan los valores directamente all.
Esto es principalmente para no recurrir y llamar frecuentemente a la interrupcin 10h,
logrando as que la animacin sea ms fluida y rpida.
Rebote de la Pelota
Se recomienda manejar las posiciones de la(s) pelota(s) como un vector, el cual va
cambiando de posicin y de direccin siempre que rebota. Se puede aplicar un cambio
de ngulo constante de 45 a la direccin de la pelota donde la orientacin depender
de la superficie con la que choc.
Observaciones:
Se realizar de manera individual.
Copias totales o parciales tendrn una nota de 0 y sern reportadas a escuela.
El cdigo del programa debe ser estrictamente ensamblador.
El entorno de pruebas a utilizar debe ser DOSBox, el ensamblador a utilizar queda
a discrecin del estudiante, por ejemplo MASM, NASM, TASM, FASM, etc.
El da de la calificacin se harn preguntas sobre aspectos utilizados en la
elaboracin del proyecto, las cuales se considerarn en la nota final.
El modo de video a utilizar es el 13h.
https://www.dropbox.com/request/M8jLmiSZCbD0cS1iUfh5