2018년 3월 20일 화요일

간단한 스프라이트에디터와 Apple에서 스프라이트 출력

제목이 좀 기대감을 키워둔 부분이 있는데요.
간단한 에디터와 이것을 이용해 만든 데이터를 Apple에서 출력한 예제 입니다.

스프라이트 에디터는 윈도우즈 용으로 만들었고요 . 아직도 손볼 부분이 많이 있습니다.
Aplle에서의 출력은 여기에 있는 지노님과 로취님의 강의 내용을 많이 참고해서 만들었습니다.

단 일단은 고해상도 모드를 ( 280 * 192 ) 기준으로 제작을 했다는 것을 알아 주시기 바랍니다.

일단 에디터 화면 입니다.

고해상도 그래픽 모드에 대해서 이해가 없는 분들은 무슨 색깔이 이렇게 찍히냐라고 하실지 모르겠으나 , 고해상도에서는 한점에 보라색/녹색 또는 적색/청색 밖에 찍을 수가 없습니다. 또는 두색을 연달아 붙이면 흰색을 찍을수 있고요.
( Apple의 고해상 모드에 대한 추가 설명이 필요하면 요청해주세요. 간단히 강의 내용을 올리겠습니다. )

이것을 이용해 만들어진 파일을 a2tool 을 이용해 dsk 파일에 옮기는 방법입니다.
a2tools in b spr_test.dsk SPR1.SPR spr1.spr

cc65에서 테스트 프로그램을 만들어서 돌린 화면 입니다.

간단하게 별들이 화면을 날라다니고 우주인이 움직이는 화면입니다. (의미는 없고요 ^.^)
에디터와 다르게 중간에 색 빠지는것이 없는데 , 이것은 AppleWin 에뮬이 이렇게 표현을 하고 있는데요.
실기에서 돌리면 에디터로 만든것과 동일하게 보여주고 있습니다.

캐릭터의 이동은 I , J, L, K 키로 위 , 왼쪽, 오른쪽 , 아래쪽 으로 옮겨볼수 있습니다.

첨부 파일 설명

AppleSpriteMan.cpp : 스프라이트 에디터 윈도우즈용 소스입니다. 풀소스는 제가 회사에서 만든 객체 관리자 들이 있는관계로 오픈이 곤란하고요. 에디터 관련된 부분만 올렸습니다. CSprDrawToolDlg 클래스 보면 SaveSpr, LoadSpr 등이 있습니다.
해당 부분 보면 스프라이트 저장에 대해 이해가 되실겁니다. ( 로직이 그렇게 좋지는 않는데요. ㅋㅋ 이해 바랍니다. )
AppleSpriteMan.exe : 스프라이트 에디터 실행 파일
test3.spr , spr1.spr , test2.spr , test.spr : 샘플로 만들어본 스프라이트
apple2.h : 누가 만든건지 아시죠 ?
spr.c : cc65에서 제작한 애플용 스프라이트 출력 실행 파일 소스 입니다. ( PutSprite함수를 보세요. )
spr_test.dsk : 에뮬에 넣고 돌리면 바로 실행해서 위 사진을 볼수 있습니다.
참고로 cc65에서 fopen()등의 파일 내용을 읽어 들이는 함수가 작동 안되서 아래와 같이 꽁수로 미리 메모리에 올려두고 프로그램을 작동되게 했습니다. ㅋㅋ


음 여기까지는 일단 되었고 , 추후에는 간단한 퍼즐게임을 만들어 보려고 합니다.
2009년산 최신 애플 게임이 될것 같네요. ㅋㅋ

P.S : 혹시 ADT로 dsk 이미지지를 실기로 옮긴후 실행이 안되시는 분은 도스 3.3으로 부팅을 시켜서 , 해당 디스켓 넣으신후
LOAD HELLO
RUN 
하시면 됩니다. 이상하게 ADT로 옮기면 자동 실행이 안되네요. 제가 뭔가를 놓친것 같은데 그게 뭔지 모르겠습니다.

댓글 없음:

댓글 쓰기