diff --git a/demo/main.cpp b/demo/main.cpp
index 5a0cf4a31e815fadcd1160684490c0009175da12..fa44249c9f093269e7766f029b82174f4e848d54 100644
--- a/demo/main.cpp
+++ b/demo/main.cpp
@@ -91,11 +91,13 @@ void CameraArcball(fggl::ecs2::impl::iter& it, fggl::components::Transform* t, f
 	const fggl::gfx::Window& window = hacks->window;
 	const fggl::gfx::Input& input = hacks->input;
 
+	if ( !input.mouseDown( fggl::gfx::MOUSE_2 ) ) {
+		return;
+	}
+
 	auto& camTransform = t[0];
 	auto& camComp = c[0];
 
-	//void process_arcball(fggl::gfx::Window& window, fggl::ecs::ECS& ecs, fggl::gfx::Input& input, fggl::ecs::entity_t cam) {
-
 	// see https://asliceofrendering.com/camera/2019/11/30/ArcballCamera/
 	glm::vec4 position(camTransform.origin(), 1.0f);
 	glm::vec4 pivot(camComp.target, 1.0f);
@@ -239,11 +241,6 @@ int main(int argc, char* argv[]) {
 	world.import<fggl::components::Math>();
 	world.import<fggl::components::Gfx>();
 
-	//fggl::ecs::ECS ecs;
-	//ecs.registerComponent<fggl::gfx::MeshToken>();
-	//ecs.registerComponent<fggl::gfx::Camera>();
-	//ecs.registerComponent<fggl::math::Transform>();
-
 	// make camera
 	auto camEnt = world.create("camera");
 	{
@@ -311,9 +308,6 @@ int main(int argc, char* argv[]) {
 	// rendering systems - Game/OpenGL
 	auto matSys = world.ecs().system<const fggl::components::Transform, fggl::components::GfxMat>()
 		.iter([&world](flecs::iter& it, const fggl::components::Transform* t, fggl::components::GfxMat* mats) {
-
-			std::cerr << "splating entity data" << std::endl;
-
 			// there is probably a more ECS-friendly way of doing this...
 			auto cam = world.ecs().lookup("camera");
 			const auto camComp = cam.get< fggl::components::Camera >();
@@ -338,9 +332,6 @@ int main(int argc, char* argv[]) {
 			auto t = it.column<const fggl::components::GfxMat>(1);
 			auto mesh = it.column<const fggl::components::GfxToken>(2);
 
-			std::cerr << "1: " << t.is_set() << std::endl;
-			std::cerr << "2: " << t.is_set() << std::endl;
-
     			glEnable(GL_CULL_FACE);
 			glCullFace(GL_BACK);
 
@@ -370,8 +361,8 @@ int main(int argc, char* argv[]) {
 		.ctx( &hacks )
 		.iter( CameraArcball );
 
-	bool joystickWindow = true;
-	bool gamepadWindow = true;
+	bool joystickWindow = false;
+	bool gamepadWindow = false;
 
 	float time = 0.0f;
 	float dt = 16.0f;
@@ -509,22 +500,6 @@ int main(int argc, char* argv[]) {
 		drawSys.run(dt);
 
 		// render using real shader
-/*		auto renderables = ecs.getEntityWith<fggl::gfx::MeshToken>();
-		for ( auto renderable : renderables ) {
-			auto token = ecs.getComponent<fggl::gfx::MeshToken>(renderable);
-			token->pipeline = shaderPhong;
-		}
-		meshRenderer.render(win, ecs, camEnt, 16.0f);*/
-
-		// render using normals shader
-/*		if ( showNormals ) {
-			for ( auto renderable : renderables ) {
-				auto token = ecs.getComponent<fggl::gfx::MeshToken>(renderable);
-				token->pipeline = shaderNormals;
-			}
-			meshRenderer.render(win, ecs, camEnt, 16.0f);
-		}*/
-
 		debug.draw();
 		win.swap();
 	}