English Amiga Board


Go Back   English Amiga Board > abime.net - Hosted Projects > project.Sprites

 
 
Thread Tools
Old 08 January 2015, 01:44   #21
dex
Eat Electric Death
 
dex's Avatar
 
Join Date: Feb 2007
Location: Germany
Posts: 327
Thanks for the hint!
dex is offline  
Old 25 November 2023, 12:49   #22
hajodick
Registered User
 
hajodick's Avatar
 
Join Date: Jan 2017
Location: Stuttgart / Germany
Age: 56
Posts: 44
Since my youth, I tried to get something more out of SOTB than some sprites or so. After doing many maps lately, I now came back to SOTB.

I will post any of my results step by step as far as I can reach.

I did not start with the plains at the beginning, but with the the tree when you walk left and anter it.

Here's what I found out:
  • Screen size for the game is 288x184 pixels
  • The horizontally scrolling background has a size of 640x184 pixels
  • At some points in that level, there are color palette changes - Including the Boss, there are 4 different palettes in use.
  • This level uses 256 Tiles and the Map is encoded in byte-sized tile data
  • Every tile has a size of 32x25 pixels which leads to 4x25+3pl = 300 bytes per tile
  • The tiles can be found at 0x46300 and the map data is located at 0x44e00
  • The map is encoding in encoded in column form. All the map data is stored row by row as long as a column is complete.
  • The map height can be achieved from several rip approaches or by simply trying. It is 1475 pixels or 59 tiles (=map data bytes).
  • This leads to a maximum possible width of the map of 91 columns or 2912 pixels
  • The last 4 columns contain trash as clearly visible in the HOL map.
  • In my opinion, the first 66 columns contain the relevant map data; the rest up to column 91 seems to be unused.

Below you find my first approach with 2784x1475 pixels with the first appearing palette. This rsult can be seen in the first page of this thread too.

The next step is to bring the additional palettes into play.

I use the reconstruction of the gamemaps as a means of training my coding skills - so therefore I always try to create the maps on the Amiga side using assembly code. All files are saved as Amiga IFF ILBM files - if possible - usable with DPaint.

Here is the main routine to create the map:
Code:
Map_W	= [87*32]
Map_H	= 1475
Map_D	= 3
Map_Mod	= [Map_W * Map_D / 8] - 40
Blt_Mod	= [Map_W * Map_D / 8] - 4
; ----------------------------------------------------------------------
Create_Map:

	lea	Tiles,a0			; Tiles Source Base
	move.l	BODY(pc),a2			; Destination Base
	lea	Map,a4
	lea	$dff000,a6
	move.l	#$09f00000,$40(a6)
	move.l	#-1,$44(a6)
	move.w	#$0000,$64(a6)			; Modulo A
	move.w	#Blt_Mod,$66(a6)		; Modulo D

	moveq	#[Map_W/32]-1,d1		; Column Loop
CM2:	moveq	#[Map_H/25]-1,d0		; Row Loop for each Column
	move.l	a2,a3				; Keep Original Destination Address
CM1:	moveq	#0,d4
	move.b	(a4)+,d4			; Read Tile Code from Map
	mulu	#300,d4				; MULU with Tile Size
	lea	(a0,d4.l),a1			; Current Tile Address

	bsr.s	BB
	move.l	a1,$50(a6) 			; Source A
	move.l	a3,$54(a6) 			; Destination
	move.w	#[25*64]+2,$58(a6)		; BLTSIZE
	add.l	#[Map_W/8],a3
	bsr.s	BB
	move.l	a3,$54(a6) 			; Destination
	move.w	#[25*64]+2,$58(a6)		; BLTSIZE
	add.l	#[Map_W/8],a3
	bsr.s	BB
	move.l	a3,$54(a6) 			; Destination
	move.w	#[25*64]+2,$58(a6)		; BLTSIZE

	add.l	#[Map_W/8*Map_D*24] + [Map_W/8],a3
	dbra	d0,CM1

	addq.l	#4,a2
	dbra	d1,CM2
	rts
; ----------------------------------------------------------------------
BB:	tst.b	2(a6)
BB2:	btst	#6,2(a6)
	bne.s	BB2
	rts
I will now work on the tileset to integrate the other palettes and calculate a new and better version of the map.
Attached Thumbnails
Click image for larger version

Name:	eab_post_sotb_map_tree1.png
Views:	168
Size:	155.6 KB
ID:	80850  
hajodick is offline  
Old 25 November 2023, 14:12   #23
Dunny
Registered User
 
Dunny's Avatar
 
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 1,993
Oh hey that's nice

I have some of the graphics ripped for my demo that you can find here: https://github.com/ZXDunny/SpecBAS-D...ter/misc/beast

though of course they're arranged in a manner that I need - especially the trees - and there are extra trees in there that I added in for fun. Feel free to rip whatever you need.
Dunny is offline  
Old 30 December 2023, 02:05   #24
dex
Eat Electric Death
 
dex's Avatar
 
Join Date: Feb 2007
Location: Germany
Posts: 327
Oh great, I guess in that case I will have another look, thanks
dex is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Shadow of the Beast AF2013 project.Sprites 9 04 May 2017 16:02
Shadow of the Beast Hewitson Retrogaming General Discussion 30 21 July 2011 15:38
Graphics Corrupt in Shadow Of The Beast II Krenzathal support.WinUAE 7 15 March 2010 16:19
Shadow of the Beast Twistin'Ghost Amiga websites reviews 17 05 July 2002 21:12
Shadow of the beast Amiga 500+ support.WinUAE 1 17 April 2002 23:16

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 20:28.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09629 seconds with 16 queries